System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于横表数据库结构的数据更新方法、装置、设备及介质制造方法及图纸_技高网

基于横表数据库结构的数据更新方法、装置、设备及介质制造方法及图纸

技术编号:40456140 阅读:3 留言:0更新日期:2024-02-22 23:13
本发明专利技术公开了一种基于横表数据库结构的数据更新方法、装置、设备及介质。所述方法包括:在监测到源数据库中的数据发生数据变更时,获取发生数据变更的消息记录日志;对消息记录日志进行日志解析,得到变更数据表名、变更操作类型、变更字段和变更字段对应的变更字段值;根据变更数据表名和变更操作类型,从至少一个候选横表实体中选取目标横表实体;基于变更操作类型,确定目标横表实体中与变更字段相关联的目标字段;根据变更字段值,基于预设的字段映射规则,确定目标字段值;根据目标字段值,对目标横表实体中的目标字段进行更新。本发明专利技术实施例技术方案提高了纵表数据库结构数据向横表数据库结构数据的数据更新效率。

【技术实现步骤摘要】

本专利技术涉及数据处理,尤其涉及一种基于横表数据库结构的数据更新方法、装置、设备及介质


技术介绍

1、产品工厂作为银行信息系统的重要组成部分,在银行科技化转型中随着业务方请求量的不断增大。在运行态中,产品工厂系统会面临巨量的来自外部应用的查询请求,而产品数据在当前的产品工厂数据库中按照其产品的结构层次组织构建,彼此关联方式复杂,许多属性参数都单独存储于不同表中,获取一个产品所有信息需要数十甚至上百次的sql(structured query language,结构化查询语言数据库)查询,这在运行时会导致巨大的性能压力。因此急需一种方法,在尽量避免访问源数据表的情况下,可将产品原本存储在若干不同数据表中的大量高频访问字段按需映射到一个或多个目标数据横表中,以应对高并发的数据访问场景。

2、现存技术方案中有使用自定义聚合函数实现从纵表到横表的转换方案。该方案中数据在源数据表中以纵表形态存储,需要读取源数据表汇总数据,而后使用自定义聚合函数进行字段转换,最终将业务数据生成为一条横表记录。或者通过用户的身份标识,以此为线索获取用户各个目标标签的相关信息。

3、然而,现有技术从字段所属的源数据表中检索读取数据进行后续处理,所以会产生大量对于若干源数据表的sql查询操作,这极大的增加了系统性能压力,导致转换效率降低,且无法实现对复杂字段的转换。


技术实现思路

1、本专利技术提供了一种基于横表数据库结构的数据更新方法、装置、设备及介质,以提高纵表数据库结构数据向横表数据库结构数据的数据更新效率。

2、根据本专利技术的一方面,提供了一种基于横表数据库结构的数据更新方法,所述方法包括:

3、在监测到源数据库中的数据发生数据变更时,获取发生数据变更的消息记录日志;

4、对所述消息记录日志进行日志解析,得到变更数据表名、变更操作类型、变更字段和所述变更字段对应的变更字段值;

5、根据所述变更数据表名和所述变更操作类型,从至少一个候选横表实体中选取目标横表实体;

6、基于所述变更操作类型,确定所述目标横表实体中与所述变更字段相关联的目标字段;

7、根据所述变更字段值,基于预设的字段映射规则,确定目标字段值;

8、根据所述目标字段值,对所述目标横表实体中的目标字段进行更新。

9、根据本专利技术的另一方面,提供了一种基于横表数据库结构的数据更新装置,所述装置包括:

10、记录日志获取模块,用于在监测到源数据库中的数据发生数据变更时,获取发生数据变更的消息记录日志;

11、日志解析模块,用于对所述消息记录日志进行日志解析,得到变更数据表名、变更操作类型、变更字段和所述变更字段对应的变更字段值;

12、目标横表选取模块,用于根据所述变更数据表名和所述变更操作类型,从至少一个候选横表实体中选取目标横表实体;

13、目标字段确定模块,用于基于所述变更操作类型,确定所述目标横表实体中与所述变更字段相关联的目标字段;

14、目标字段值确定模块,用于根据所述变更字段值,基于预设的字段映射规则,确定目标字段值;

15、目标字段更新模块,用于根据所述目标字段值,对所述目标横表实体中的目标字段进行更新。

16、根据本专利技术的另一方面,提供了一种电子设备,所述电子设备包括:

17、至少一个处理器;以及

18、与所述至少一个处理器通信连接的存储器;其中,

19、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本专利技术任一实施例所述的基于横表数据库结构的数据更新方法。

20、根据本专利技术的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本专利技术任一实施例所述的基于横表数据库结构的数据更新方法。

21、本专利技术实施例技术方案通过在监测到源数据库中的数据发生数据变更时,获取发生数据变更的消息记录日志;对消息记录日志进行日志解析,得到变更数据表名、变更操作类型、变更字段和变更字段对应的变更字段值;根据变更数据表名和变更操作类型,从至少一个候选横表实体中选取目标横表实体;基于变更操作类型,确定目标横表实体中与变更字段相关联的目标字段;根据变更字段值,基于预设的字段映射规则,确定目标字段值;根据目标字段值,对目标横表实体中的目标字段进行更新。上述技术方案实现了纵表向横表的转换,以及当纵表数据更新时横表数据的自动化更新,通过解析同步消息日志实现目标横表数据映射,优先挖掘日志中有效信息实现目标字段映射,更新时通过表级规则匹配以实现更精准的小范围字段更新,尽量避免全量更新,使得映射时对于源数据表的检索sql操作次数大大减少,对于整体系统压力更小,更新效率更高;应用方可按需进行横表定制,自由度高,更加契合现实的业务应用场景。

22、应当理解,本部分所描述的内容并非旨在标识本专利技术的实施例的关键或重要特征,也不用于限制本专利技术的范围。本专利技术的其它特征将通过以下的说明书而变得容易理解。

本文档来自技高网...

【技术保护点】

1.一种基于横表数据库结构的数据更新方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,在所述根据所述变更字段值,基于预设的字段映射规则,确定目标字段值之前,包括:

3.根据权利要求2所述的方法,其特征在于,若所述目标字段映射方式为一对多映射方式;

4.根据权利要求2所述的方法,其特征在于,若所述目标字段映射方式为多对一映射方式;

5.根据权利要求1所述的方法,其特征在于,所述根据所述变更字段值,基于预设的字段映射规则,确定目标字段值,包括:

6.根据权利要求1所述的方法,其特征在于,所述方法还包括:

7.一种基于横表数据库结构的数据更新装置,其特征在于,包括:

8.根据权利要求7所述的装置,其特征在于,所述装置还包括:

9.一种电子设备,其特征在于,所述电子设备包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-6中任一项所述的基于横表数据库结构的数据更新方法。

【技术特征摘要】

1.一种基于横表数据库结构的数据更新方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,在所述根据所述变更字段值,基于预设的字段映射规则,确定目标字段值之前,包括:

3.根据权利要求2所述的方法,其特征在于,若所述目标字段映射方式为一对多映射方式;

4.根据权利要求2所述的方法,其特征在于,若所述目标字段映射方式为多对一映射方式;

5.根据权利要求1所述的方法,其特征在于,所述根据所述变更字段值,基于预设的字段映射规则,确定...

【专利技术属性】
技术研发人员:岳晨阳赵志强申志鹏
申请(专利权)人:中国农业银行股份有限公司
类型:发明
国别省市:

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

1