一种索引数据的构建方法和装置制造方法及图纸

技术编号:34449361 阅读:42 留言:0更新日期:2022-08-06 16:48
本发明专利技术公开了一种索引数据的构建方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:通过统一的数据采集接口接收源系统中业务数据的变更数据,变更数据包括业务数据的业务标识和业务变更字段;将变更数据按照预设结构写入到第一数据库,并在变更数据写入成功后,生成变更消息,变更消息包括业务数据的业务标识;响应于生成变更消息,根据变更消息中的业务标识,从第一数据库中查询用于生成索引的字段,以由查询到的字段组装得到索引数据。该实施方式能够实现数据写入的统一控制,解决了新数据被旧数据覆盖的问题,提高数据写入的准确率和效率,降低对系统的性能要求。降低对系统的性能要求。降低对系统的性能要求。

【技术实现步骤摘要】
一种索引数据的构建方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种索引数据的构建方法和装置。

技术介绍

[0002]目前系统中数据检索的功能是通过ES(ELASTICSEARCH,一个基于LUCENE的搜索服务器)进行数据的存储并为系统提供数据搜索能力。每个数据变更点都需单独组装数据并调用ES的API(应用程序接口),在数据产生变更的位置直接调用ES提供的API完成数据的写入。ES中数据库表中的不同字段来自不同的系统,需要对来自不同系统的变更字段进行统一聚合。每个系统的数据都有各自的数据版本,无法实现对来自不同系统的字段在写入ES时的数据版本的校验。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]无法实现数据写入的统一控制,容易出现新数据被旧数据覆盖的问题,数据写入的准确率和效率低,对系统的性能要求较高。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种索引数据的构建方法和装置,能够实现数据写入的统一控制,解决了新数据被旧数据覆盖的问题,提高数据写入的准确率和效率,降低对系统的性能要求。
[0006]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种索引数据的构建方法。
[0007]一种索引数据的构建方法,包括:通过统一的数据采集接口接收源系统中业务数据的变更数据,所述变更数据包括所述业务数据的业务标识和业务变更字段;将所述变更数据按照预设结构写入到第一数据库,并在所述变更数据写入成功后,生成变更消息,所述变更消息包括所述业务数据的业务标识;响应于生成所述变更消息,根据所述变更消息中的业务标识,从所述第一数据库中查询用于生成索引的字段,以由查询到的字段组装得到索引数据。
[0008]可选地,所述变更数据还包括所述业务数据的数据版本号;所述通过统一的数据采集接口接收源系统中业务数据的变更数据,包括:以业务标识、数据版本号、业务变更字段作为所述统一的数据采集接口的接口参数,接收所述源系统中业务数据的变更数据。
[0009]可选地,所述通过统一的数据采集接口接收源系统中业务数据的变更数据之后,包括:对接收的所述源系统中业务数据的变更数据进行字段验证,以确认接收的所述源系统中业务数据的变更数据中包括所述接口参数中的各字段。
[0010]可选地,所述确认接收的所述源系统中业务数据的变更数据中包括所述接口参数中的各字段之后,包括:将接收的所述源系统中业务数据的变更数据组装为第一消息,通将所述第一消息发布到第一消息中间件;所述将所述变更数据按照预设结构写入到第一数据库,包括:响应于发布到所述第一消息中间件的所述第一消息,将所述变更数据按照预设结
构写入到第一数据库。
[0011]可选地,所述将所述变更数据按照预设结构写入到第一数据库,包括:对所述变更数据进行数据合法性验证并确认所述数据合法性验证通过,所述数据合法性验证包括验证所述变更数据中的业务标识、数据版本号和业务变更字段;将所述变更数据按照所述第一数据库的数据存储结构进行转换并写入到所述第一数据库中。
[0012]可选地,所述将所述变更数据按照所述第一数据库的数据存储结构进行转换并写入到所述第一数据库中,包括:将所述变更数据按照所述第一数据库的数据存储结构进行转换,得到转换后的所述变更数据;获取分布式锁,并在确认所述分布式锁获取成功后,对所述变更数据进行版本判定,以确认所述变更数据为最新版本;将最新版本的转换后的所述变更数据按照对应的源系统标识写入到所述第一数据库,其中,所述源系统标识是根据所述变更数据中的所述业务变更字段确定的所述业务数据所属的源系统的标识。
[0013]可选地,所述对所述变更数据进行版本判定,以确认所述变更数据为最新版本,包括:从第二数据库中获取所述变更数据最近一次的已存版本号;将所述变更数据中的所述数据版本号与所述已存版本号进行比较,在所述变更数据中的所述数据版本号大于或等于所述已存版本号的情况下,确认所述变更数据为最新版本。
[0014]可选地,所述将最新版本的转换后的所述变更数据按照对应的源系统标识写入到所述第一数据库之后,包括:释放所述分布式锁,以及,将所述第二数据库中的所述已存版本号更新为所述变更数据中的所述数据版本号。
[0015]可选地,所述生成变更消息之后,包括:将所述变更消息发布到第二消息中间件;所述响应于生成所述变更消息,根据所述变更消息中的业务标识,从所述第一数据库中查询用于生成索引的字段,包括:响应于发布到所述第二消息中间件的所述变更消息,根据所述变更消息中的业务标识,从所述第一数据库中查询用于生成索引的字段,所述用于生成索引的字段为所述业务数据的一个或多个字段。
[0016]可选地,所述由查询到的字段组装得到索引数据,包括:按照存储集群的索引结构,对所述查询到的字段进行组装,得到所述索引数据,并通过调用所述存储集群的应用程序接口,将所述索引数据保存至所述存储集群中,所述索引数据用于所述存储集群查询对应的业务标识,以根据所述对应的业务标识从所述业务数据的源系统获取所述业务数据。
[0017]根据本专利技术实施例的另一方面,提供了一种索引数据的构建装置。
[0018]一种索引数据的构建装置,包括:变更数据采集模块,用于通过统一的数据采集接口接收源系统中业务数据的变更数据,所述变更数据包括所述业务数据的业务标识和业务变更字段;变更数据写入模块,用于将所述变更数据按照预设结构写入到第一数据库,并在所述变更数据写入成功后,生成变更消息,所述变更消息包括所述业务数据的业务标识;索引数据构建模块,用于响应于生成所述变更消息,根据所述变更消息中的业务标识,从所述第一数据库中查询用于生成索引的字段,以由查询到的字段组装得到索引数据。
[0019]可选地,所述变更数据还包括所述业务数据的数据版本号;所述变更数据采集模块还用于:以业务标识、数据版本号、业务变更字段作为所述统一的数据采集接口的接口参数,接收所述源系统中业务数据的变更数据。
[0020]可选地,还包括字段验证模块,用于:对接收的所述源系统中业务数据的变更数据进行字段验证,以确认接收的所述源系统中业务数据的变更数据中包括所述接口参数中的
各字段。
[0021]可选地,所述字段验证模块还用于:将接收的所述源系统中业务数据的变更数据组装为第一消息,通将所述第一消息发布到第一消息中间件;所述变更数据写入模块还用于:响应于发布到所述第一消息中间件的所述第一消息,将所述变更数据按照预设结构写入到第一数据库。
[0022]可选地,所述变更数据写入模块还用于:对所述变更数据进行数据合法性验证并确认所述数据合法性验证通过,所述数据合法性验证包括验证所述变更数据中的业务标识、数据版本号和业务变更字段;将所述变更数据按照所述第一数据库的数据存储结构进行转换并写入到所述第一数据库中。
[0023]可选地,所述变更数据写入模块还用于:将所述变更数据按照所述第一数据库的数据存储结构进行转换,得到转换后本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种索引数据的构建方法,其特征在于,包括:通过统一的数据采集接口接收源系统中业务数据的变更数据,所述变更数据包括所述业务数据的业务标识和业务变更字段;将所述变更数据按照预设结构写入到第一数据库,并在所述变更数据写入成功后,生成变更消息,所述变更消息包括所述业务数据的业务标识;响应于生成所述变更消息,根据所述变更消息中的业务标识,从所述第一数据库中查询用于生成索引的字段,以由查询到的字段组装得到索引数据。2.根据权利要求1所述的方法,其特征在于,所述变更数据还包括所述业务数据的数据版本号;所述通过统一的数据采集接口接收源系统中业务数据的变更数据,包括:以业务标识、数据版本号、业务变更字段作为所述统一的数据采集接口的接口参数,接收所述源系统中业务数据的变更数据。3.根据权利要求2所述的方法,其特征在于,所述通过统一的数据采集接口接收源系统中业务数据的变更数据之后,包括:对接收的所述源系统中业务数据的变更数据进行字段验证,以确认接收的所述源系统中业务数据的变更数据中包括所述接口参数中的各字段。4.根据权利要求3所述的方法,其特征在于,所述确认接收的所述源系统中业务数据的变更数据中包括所述接口参数中的各字段之后,包括:将接收的所述源系统中业务数据的变更数据组装为第一消息,通将所述第一消息发布到第一消息中间件;所述将所述变更数据按照预设结构写入到第一数据库,包括:响应于发布到所述第一消息中间件的所述第一消息,将所述变更数据按照预设结构写入到第一数据库。5.根据权利要求2或4所述的方法,其特征在于,所述将所述变更数据按照预设结构写入到第一数据库,包括:对所述变更数据进行数据合法性验证并确认所述数据合法性验证通过,所述数据合法性验证包括验证所述变更数据中的业务标识、数据版本号和业务变更字段;将所述变更数据按照所述第一数据库的数据存储结构进行转换并写入到所述第一数据库中。6.根据权利要求5所述的方法,其特征在于,所述将所述变更数据按照所述第一数据库的数据存储结构进行转换并写入到所述第一数据库中,包括:将所述变更数据按照所述第一数据库的数据存储结构进行转换,得到转换后的所述变更数据;获取分布式锁,并在确认所述分布式锁获取成功后,对所述变更数据进行版本判定,以确认所述变更数据为最新版本;将最新版本的转换后的所述变更数据按照对应的源系统标识写入到所述第一数据库,其中,所述源系统标识是根据所述变更数据中的所述业务变更字段确定的所述业务数据所属的源系统的标识。7.根据权利要求6所述的方法,其特征在于,所述对所述变更数据进行版本判定,以确认所述变更数据为最新版本,包括:从第二数据库中获取所述变更数据最近一次的已存版本号;
将所述变更数据中的所述数据版本号与所述已存版本号进行比较,在所述变更数据中的所述数据版本号大于或等于所述已存版本号的情况下,确认所述变更数据为最新版本。8.根据权利要求7所述的方法,其特征在于,所述将最新版本的转换后的所述变更数据按照对应的源系统标识写入到所述第一数据库之后,包括:释放所述分布式锁,以及,将所述第二数据库中的所述已存版本号更新为所述变更数据中的所述数据版本号。9.根据权利要求1所述的方法,其特征在于,所述生成变更消息之后,包括:将所述变更消息发布到第二消息中间件;所述响应于生成所述变更消息,根据所述变更消息中的业务标识,从所述第一数据库中查询用于生成索引的字段,包括:响应于发布到所述第二消息中间件的所述变更消息,根据所述变更消息中的业务标识,从所述第一数据库中查询用于生成索引的字段,所述用于生成索引的字段为所述业务数据的一个或多个字段。10.根据权利要求9所述的方法,其特征在于,所述由查询到的字段组装得到索引数据,包括:按照存储集群的索引结构,对所述查询到的字段进行组装,得到所述索引数据,并通过调用所述存储集群的应用程序接口,将所述索引数据保存至所述存储集群中,所述索引数据用于所述存储集群查询对应的业务标识,以根据所述对应的业务标识从所述业务数据的源系统获取所述业务数据。11.一种索引数据的构建装置,...

【专利技术属性】
技术研发人员:蒲腾飞
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1