查询系统的更新方法、装置、电子设备及存储介质与流程

文档序号:30382938发布日期:2022-06-11 05:12阅读:170来源:国知局
查询系统的更新方法、装置、电子设备及存储介质与流程

1.本发明涉及电子信息技术领域,尤其涉及一种查询系统的更新方法、装置、电子设备及存储介质。


背景技术:

2.现有的查询系统维护过程中,经常需要进行迭代升级,例如更换输入或输出数据的接口、更换查询的逻辑及更换编码语言等,为了保证同一功能的查询系统进行迭代后,输出结果的同一性及正确性,需要对迭代前和迭代后的输出结果进行对比验证;同时,为了减少迭代引入问题从而造成损失,通常会按照一定规则控制网络数据,将网络数据从老版本系统逐步切换到新版本系统,现有技术每次都需要人工重新设计查询系统更新的对比方案,耗时、费力且容易遗漏问题。


技术实现要素:

3.本发明要解决的技术问题是为了克服现有技术查询系统迭代升级时,存在每次都需要人工重新设计对比方案,设计繁琐,耗时费力且容易遗漏问题的缺陷,提供一种查询系统的更新方法、装置、电子设备及存储介质。本发明是通过下述技术方案来解决上述技术问题:
4.第一,本发明提供一种查询系统的更新方法,所述查询系统包括第一系统和第二系统,所述第一系统和所述第二系统为实现同一功能的查询系统,所述第二系统为所述第一系统更新后的系统,所述更新方法包括:
5.将预设查询信息输入至所述第一系统,输出第一结果;
6.将所述预设查询信息输入至所述第二系统,输出第二结果;
7.若所述第一结果和所述第二结果相同,则将所述第二系统作为当前查询系统。
8.优选地,所述输出第二结果的步骤后包括:
9.若所述第一结果和所述第二结果不相同,更新所述第二系统以生成第三系统;
10.将所述预设查询信息输入至所述第三系统,输出第三结果;
11.若所述第三结果与所述第一结果不相同,则将所述第三系统作为所述第二系统,并返回所述更新所述第二系统的步骤。
12.优选地,所述若所述第一结果和所述第二结果不相同的步骤后包括:
13.根据所述第一结果及所述第二结果生成第一差异结果,所述第一差异结果为所述第一结果和所述第二结果的差异内容;
14.所述若所述第三结果与所述第一结果不相同的步骤后包括:
15.根据所述第一结果及所述第三结果生成第二差异结果,所述第二差异结果为所述第一结果和所述第三结果的差异内容;
16.将所述第一差异结果和所述第二差异结果存储于日志数据库;
17.或,
18.所述若所述第一结果和所述第二结果不相同的步骤后包括:
19.根据所述第一结果及所述第二结果生成第一差异结果,所述第一差异结果为所述第一结果和所述第二结果的差异内容;
20.所述若所述第三结果与所述第一结果不相同的步骤后包括:
21.根据所述第一结果及所述第三结果生成第二差异结果,所述第二差异结果为所述第一结果和所述第三结果的差异内容;
22.获取预设周期内所有的所述第一差异结果和所述第二差异结果,并根据所述所有的所述第一差异结果和所述第二差异结果生成差异结果统计报表;
23.将所述差异结果统计报表存储于所述日志数据库。
24.优选地,所述将所述第二系统作为当前查询系统的步骤包括:
25.获取用户库,所述用户库为使用所述查询系统的用户集合;
26.从所述用户库中获取目标用户;
27.将所述第二系统作为所述目标用户的当前查询系统。
28.优选地,所述将所述第二系统作为所述目标用户的当前查询系统的步骤后包括:
29.按照预设更新时间,将其他用户的当前查询系统更新为所述第二系统,所述其他用户为所述用户库中,除所述目标用户外的用户。
30.优选地,所述按照预设更新时间,将其他用户的当前查询系统更新为所述第二系统的步骤前包括:
31.获取所述目标用户的反馈;
32.按照所述反馈,设置预设更新时间。
33.优选地,所述从所述用户库中获取目标用户的步骤包括:
34.获取目标地域;
35.获取所述用户库中所有用户的地域;
36.将位于所述目标地域的用户作为目标用户。
37.第二,本发明提供一种查询系统的更新装置,其特征在于,所述查询系统包括第一系统和第二系统,所述第一系统和所述第二系统为实现同一功能的查询系统,所述第二系统为所述第一系统更新后的系统,所述更新装置包括:
38.输入模块,用于将预设查询信息输入至所述第一系统,输出第一结果;也用于将所述预设查询信息输入至所述第二系统,输出第二结果;
39.升级模块,用于若所述第一结果和所述第二结果相同,则将所述第二系统作为当前查询系统。
40.第三,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的查询系统的更新方法。
41.第四,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的查询系统的更新方法。
42.本发明的积极进步效果在于:
43.本发明将同一预设查询信息输入同一功能的第一查询系统和第二查询系统,通过比较两个系统的查询结果,自动验证更新第一查询系统后的第二查询系统是否迭代升级成
功;若迭代升级失败,统计两个系统的差异,对工作人员的调试第二查询系统提供依据;若迭代升级成功,逐渐扩大使用第二查询系统的目标用户,实现查询系统的灰度更新。本发明为查询系统的迭代升级提供可复用可扩展的更新方案,节省查询系统迭代升级的开发时间,提高开发效率。
附图说明
44.图1为本发明实施例1的查询系统的更新方法的流程图;
45.图2为本发明实施例1的查询系统循环验证方法的流程图;
46.图3为本发明实施例1的存储差异结果的流程图;
47.图4为本发明实施例1的存储差异结果统计报表的流程图;
48.图5为本发明实施例1的灰度更新查询系统的流程图;
49.图6为本发明实施例1的选择目标用户的流程图;
50.图7为本发明实施例1的查询系统新旧逻辑更新方法的流程图;
51.图8为本发明实施例1的查询系统新旧逻辑验证方法的流程图;
52.图9为本发明实施例2的查询系统的更新装置的结构示意图;
53.图10为本发明实施例3的电子设备的结构示意图。
具体实施方式
54.下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
55.实施例1
56.本实施例提供一种查询系统的更新方法,该方法应用在查询系统进行迭代升级过程中,迭代升级包括更新输入或输出数据的接口、更新查询的逻辑及更新编码语言等。这时,查询系统包括迭代升级前的第一系统和迭代升级后的第二系统,两个系统为实现同一功能的查询系统,其中,第一系统和第二系统既可以是独立的查询系统,也可以是某一系统中的查询模块。
57.参见图1,更新方法包括:
58.s1、将预设查询信息输入至第一系统,输出第一结果;
59.s2、将预设查询信息输入至第二系统,输出第二结果;
60.若第一结果和第二结果相同,则执行步骤s3;
61.s3、将第二系统作为当前查询系统,当前查询系统为用户正在使用的查询系统,在这之前用户默认使用第一查询系统。
62.本实施例通过比较第一系统和第二系统的输出结果来保障迭代升级的正确性,具体的,若输出结果一致,则第二系统可以实现第一系统的查询功能,验证结果为迭代升级成功;若输出结果不一致,则第二系统不可以实现或者不能完全实现第一系统的查询功能,验证结果为迭代升级失败,从而实现两个系统对比验证步骤的自动化,提高对比验证的效率。
63.在一些实施方式中,参见图2,步骤s2后包括:
64.若第一结果和第二结果不相同,则执行步骤s4;
65.s4、更新第二系统以生成第三系统;
66.s5、将预设查询信息输入至第三系统,输出第三结果;
67.s6、若第三结果与第一结果不相同,则将第三系统作为第二系统,并返回步骤s4。
68.若第三结果与第一结果相同,则将第三系统作为第二系统,并返回步骤s3或者直接将第三系统作为当前查询系统。
69.若第一系统和第二系统的输出结果不一致,经过人工检修,第二系统更新为第三系统。再将同一预设查询信息输入第三系统进行验证,若第三系统的输出结果(第三结果)和第一结果相同,则将第三系统作为当前查询系统。但是若第三结果和第一结果还是不相同,那么仍然要进行人工检修,将第三系统作为第二系统,并返回更新第二系统的步骤。
70.根据实践经验,迭代升级查询系统不会一蹴而就,所以考虑到多次更新后,更新后的系统的输出结果仍与第一系统的输出结果不一致的可能性,本实施方式提供了多次更新查询系统的验证方式,从而为查询系统的迭代升级提供可复用可扩展的验证方案,节省查询系统迭代升级的验证时间,提高验证效率。
71.在一些实施方式中,参见图3,步骤s4后包括:
72.s41、根据第一结果及第二结果生成第一差异结果,第一差异结果为第一结果和第二结果的差异内容,差异内容包括逻辑差异内容、算法差异内容等;
73.步骤s6后包括:
74.s61、根据第一结果及第三结果生成第二差异结果,第二差异结果为第一结果和第三结果的差异内容,差异内容包括逻辑差异内容、算法差异内容等;
75.s7、将第一差异结果和第二差异结果存储于日志数据库。
76.在本实施方式中,查询系统的开发人员可以根据自动生成的第一差异结果和第二差异结果排查问题和差异,提高开发效率。
77.另外,当多次更新查询系统后,参见图4,根据步骤s41和步骤s61会产生许多差异结果,更新方法还包括:
78.s8、获取预设周期内所有的第一差异结果和第二差异结果,并根据所有的第一差异结果和第二差异结果生成差异结果统计报表;
79.s9、将差异结果统计报表存储于日志数据库。
80.在本实施方式中,按照预设周期,统计不同阶段的更新后的查询系统和原始查询系统的差别,形成统计报表,从而记录整个迭代升级过程中的必要日志,从而为开发查询系统提供可靠依据,提高开发效率。
81.在一个实施方式中,参见图5,步骤s3包括:
82.s31、获取用户库。
83.其中,用户库为使用查询系统的用户集合;
84.s32、从用户库中获取目标用户;
85.s33、将第二系统作为目标用户的当前查询系统。
86.在本实施方式中,选择部分用户(即目标用户)试用新查询系统,从而减少因迭代升级生产的问题而造成的损失,降低迭代升级的成本。
87.在一个实施方式中,参见图5,步骤s33后包括:
88.s34、按照预设更新时间,将其他用户的当前查询系统更新为第二系统,其他用户为用户库中,除目标用户外的用户。
89.在本实施方式中,根据预设更新时间段或预设更新时间点,将用户库中的所有用户使用的查询系统切换成验证合格的新查询系统,从而提高用户的使用体验。
90.在一个实施方式中,参见图5,步骤s34前包括:
91.s341、获取目标用户的反馈;
92.s342、按照反馈,设置预设更新时间。
93.在本实施方式中,可以根据试用新查询系统的部分用户的反馈,设置将用户库中的所有用户使用的查询系统切换成验证合格的新查询系统的时间。反馈包括技术反馈、使用体验反馈等;
94.例如,在合理的反馈时间内,若目标用户大部分反馈良好,则可以及时安排用户库中的所有用户使用的查询系统切换成验证合格的新查询系统。
95.例如,在合理的反馈时间内,若目标用户有反馈有网页打不开、查询内容与原查询系统不一致等问题,开发人员对这些问题进行调查,调查结果若是更新后的查询系统本身问题的,可以进一步迭代升级查询系统,并延长将用户库中的所有用户使用的查询系统切换成验证合格的新查询系统的更新时间。
96.在一个实施方式中,参见图6,步骤s32包括:
97.s321、获取目标地域;
98.s322、获取用户库中所有用户的地域;
99.s323、将位于目标地域的用户作为目标用户。
100.在本实施方式中,对目标用户的选择具体可以根据用户的地域选择。
101.例如,预设a省用户使用新查询系统。通过定位装置获取用户库中所有用户的地理位置,将所有位于a省的用户使用的查询系统更新为新查询系统。
102.在本实施例中,通过地域选择使用新查询系统的目标用户,便于开发人员选择并区分目标用户,实现新旧系统的灰度更新,提高开发质量。
103.下面以一具体实例来对本实施例中的查询系统的更新方法进行说明:
104.图7为需要更新查询系统的执行逻辑(或参数)时的流程图,首先进入验证原逻辑和新逻辑的流程(即图7不需要灰度但需要对比的流程):
105.参见图8,配置中心能够动态控制新旧逻辑,将对比数据组装、入队,输入原逻辑、新逻辑执行器(即将预设查询信息输入至所述第一系统和第二系统),执行对比逻辑,将原逻辑、新逻辑执行器得出的结果输入结果比较器(即比较第一结果和第二结果)。若两个结果不相同,则将两个结果输入差异处理器,将差异处理器得出的结果等整个验证过程的必要数据(即第一差异结果和第二差异结果)存储至日志(即日志数据库),定期产生离线报表(即差异结果统计报表),便于开发人员排查问题和差异。若两个结果相同,将新逻辑存储至日志,便于日后选择合适时间将新逻辑作为当前查询系统的执行逻辑。
106.当新旧逻辑的验证结果一致,就可以进入灰度流程(即系统在进行逻辑升级中,旧逻辑可以平滑过渡到新逻辑的一种更新流程):
107.在灰度流程中,参见图8,用流量控制程序精准控制流量进入灰度(流量即用户数量),具体的方法可以为先给一小部分用户试用执行新逻辑的查询系统,之后通过埋点监控等方式得到用户反馈,确定新查询系统的效果达到预期之后,再慢慢扩大使用新查询系统的用户数量,直到这个全新的查询系统覆盖到所有的系统用户。
108.当查询系统的效果未达到预期时,也可以将用户反馈存储至日志,并定期产生离线报表,方便开发人员排查新执行逻辑中的问题,优化新查询系统,提高用户的使用体验。
109.实施例2
110.本实施例提供一种查询系统的更新装置,查询系统包括第一系统和第二系统,第一系统和第二系统为实现同一功能的查询系统,第二系统为第一系统更新后的系统,参见图9,更新装置包括:
111.输入模块1,用于将预设查询信息输入至第一系统,输出第一结果;也用于将预设查询信息输入至第二系统,输出第二结果;
112.升级模块2,用于若第一结果和第二结果相同,则将第二系统作为当前查询系统。
113.在一些实施方式中,更新装置还包括:
114.生成模块,用于若第一结果和第二结果不相同,更新第二系统以生成第三系统;
115.输出模块1,还用于将预设查询信息输入至第三系统,输出第三结果;
116.回转模块,用于若第三结果与第一结果不相同,则将第三系统作为第二系统,并返回生成模块。
117.在一些实施方式中,生成模块,还用于根据第一结果及第二结果生成第一差异结果,第一差异结果为第一结果和第二结果的差异内容;根据第一结果及第三结果生成第二差异结果,第二差异结果为第一结果和第三结果的差异内容;并根据所有的第一差异结果和第二差异结果生成差异结果统计报表;
118.更新装置还包括:
119.存储模块,用于将第一差异结果和第二差异结果存储于日志数据库;将差异结果统计报表存储于日志数据库。
120.获取模块,用于获取预设周期内所有的第一差异结果和第二差异结果。
121.在一些实施方式中,获取模块,还用于获取用户库,用户库为使用查询系统的用户集合;从用户库中获取目标用户;
122.升级模块2,还用于将第二系统作为目标用户的当前查询系统。
123.在一些实施方式中,升级模块2,还用于按照预设更新时间,将其他用户的当前查询系统更新为第二系统,其他用户为用户库中,除目标用户外的用户。
124.在一些实施方式中,获取模块,还用于获取目标用户的反馈;
125.更新装置还包括:
126.设置模块,用于按照反馈,设置预设更新时间。
127.在一些实施方式中,获取模块,还用于获取目标地域;获取用户库中所有用户的地域;
128.设置模块,还用于将位于目标地域的用户作为目标用户。
129.需要说明的是,本实施例的查询系统的更新装置中各个模块的实现方式及技术效果可以参考实施例1的对应部分,因此在此就不再赘述。
130.实施例3
131.本实施例提供了一种电子设备,图10为该电子设备的模块示意图。电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现实施例1的查询系统的更新方法。图10显示的电子设备30仅仅是一个示例,不应对本发
明实施例的功能和使用范围带来任何限制。
132.如图10所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。
133.总线33包括数据总线、地址总线和控制总线。
134.存储器32可以包括易失性存储器,例如随机存取存储器(ram)321和/或高速缓存存储器322,还可以进一步包括只读存储器(rom)323。
135.存储器32还可以包括具有一组(至少一个)程序模块324的程序/实用工具325,这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
136.处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1的查询系统的更新方法。
137.电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(i/o)接口35进行。并且,模型生成的设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图10所示,网络适配器36通过总线33与模型生成的设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
138.应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
139.实施例4
140.本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现实施例1的查询系统的更新方法。
141.其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
142.在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行实现实施例1的查询系统的更新方法。
143.其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
144.虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1