一种分布式数据库数据变更检索方法、装置、设备及介质与流程

专利2025-03-23  31


本技术涉及数据库管理,尤其涉及一种分布式数据库数据变更检索方法、装置、设备及介质。


背景技术:

1、在快速变化的业务环境中,数据的持续更新和维护是常态。对于频繁更新的数据记录,应用系统往往需要追踪和统计这些变更,以便于进行深入分析和问题定位。例如,在金融服务、在线交易、实时监控系统等领域,对数据变更的监控和分析尤为重要。这些变更可能涉及到账户信息的更新、交易记录的增减、用户行为的记录等关键业务数据。

2、然而,当前的做法往往依赖于人工解析二进制日志文件,这种做法存在诸多局限性。首先,二进制文件的解析需要专业的技能和大量的时间投入,对于非专业人员来说,门槛较高。其次,随着数据量的不断增长,日志文件的体积也在不断扩大,人工解析的难度和工作量随之增加。此外,人工解析过程中可能存在疏漏,导致数据变更的不完整或不准确记录。

3、在分布式数据库系统中,数据被分散存储在多个节点或分片上,这进一步增加了数据变更追踪的复杂性。由于数据的分布式存储特性,变更记录可能分布在不同的物理位置,需要跨节点进行数据整合和分析。在分片数量众多的情况下,这种跨节点的数据整合变得更加困难,不仅需要处理网络延迟和数据一致性问题,还要解决数据合并和同步的挑战。

4、因此亟需数据库具备一键检索数据变更动作的功能,避免数据中心运维人员耗费大量精力去解析数据库二进制日志。


技术实现思路

1、本技术提供了一种分布式数据库数据变更检索方法、装置、设备及介质,解决了由于数据的分布式存储特性,变更记录可能分布在不同的物理位置,需要跨节点进行数据整合和分析,存在的查找效率低的技术问题。

2、有鉴于此,本技术第一方面提供了一种分布式数据库数据变更检索方法,所述方法包括:

3、获取数据变更检索策略;

4、根据所述数据变更检索策略读取目标数据库的二进制日志文件,所述二进制日志文件用于记录对所述目标数据库的更改操作;

5、根据所述数据变更检索策略中的时间范围对所述二进制日志文件进行过滤,得到满足所述时间范围的二进制分析文件列表;

6、根据所述数据变更检索策略中的入参匹配表名、列过滤条件以及操作类型对所述二进制分析文件列表进行匹配;

7、若匹配成功的二进制分析文件的列表达式不为空,则调用预设lua脚本进行表达式运算,并根据rowevent结构生成正向sql语句;

8、向输出线程分发事务信息以及所述正向sql语句,所述事务信息包含匹配成功的所述二进制分析文件,由所述输出线程分析所述二进制分析文件是否满足所述数据变更检索策略,并生成检索结果。

9、可选地,所述获取数据变更检索策略具体包括:

10、用户通过前端页面配置并生成数据变更检索策略,所述数据变更检索策略包括时间范围、分片策略、分片位置、入参匹配表名、列过滤条件、操作类型以及内存控制信息;

11、通过所述前端页面向消息管理模块下发所述数据变更检索策略。

12、可选地,所述根据所述数据变更检索策略读取目标数据库的二进制日志文件具体包括:

13、所述消息管理模块根据所述数据变更检索策略中的所述分片策略以及所述分片位置确定目标数据库,并将所述数据变更检索策略向所述目标数据库对应的执行检索程序模块发送;

14、所述执行检索程序模块读取所述目标数据库的二进制日志文件。

15、可选地,所述执行检索程序模块读取所述目标数据库的二进制日志文件之后还包括:

16、所述执行检索程序模块在内存中通过对所述二进制日志文件进行参数解析,执行对所述二进制日志文件的有效性检查;

17、若有效,则初始化线程资源,否则结束检索流程。

18、可选地,所述根据所述数据变更检索策略中的时间范围对所述二进制日志文件进行过滤,得到满足所述时间范围的二进制分析文件列表之后还包括:

19、启动若干个分析线程以及输出线程;

20、根据所述数据变更检索策略中的内存控制信息,将所述二进制分析文件列表中包含的若干个二进制分析文件作为事务信息分发至各个所述分析线程中并发执行,所述分析线程的并发数由所述内存控制信息确定。

21、可选地,所述将所述二进制分析文件列表中包含的若干个二进制分析文件作为事务信息分发至各个所述分析线程中并发执行还包括:

22、若所述二进制分析文件作为的事务信息超过所述内存控制信息对应的事务阈值,将所述事务信息拆分为若干个部分事务信息;

23、依次将若干个所述部分事务信息分发至相同的所述分析线程中。

24、可选地,所述生成检索结果之后还包括:

25、定时检测所述执行检索程序模块生成的所述检索结果;

26、将所述检索结果返回至所述前端页面,由所述前端页面展示检索结果信息。

27、本技术第二方面提供一种分布式数据库数据变更检索装置,所述装置包括:

28、获取单元,用于获取数据变更检索策略;

29、读取单元,用于根据所述数据变更检索策略读取目标数据库的二进制日志文件,所述二进制日志文件用于记录对所述目标数据库的更改操作;

30、过滤单元,用于根据所述数据变更检索策略中的时间范围对所述二进制日志文件进行过滤,得到满足所述时间范围的二进制分析文件列表;

31、匹配单元,用于根据所述数据变更检索策略中的入参匹配表名、列过滤条件以及操作类型对所述二进制分析文件列表进行匹配;

32、处理单元,用于若匹配成功的二进制分析文件的列表达式不为空,则调用预设lua脚本进行表达式运算,并根据rowevent结构生成正向sql语句;

33、输出单元,用于向输出线程分发事务信息以及所述正向sql语句,所述事务信息包含匹配成功的所述二进制分析文件,由所述输出线程分析所述二进制分析文件是否满足所述数据变更检索策略,并生成检索结果。

34、本技术第三方面提供一种分布式数据库数据变更检索设备,所述设备包括处理器以及存储器:

35、所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

36、所述处理器用于根据所述程序代码中的指令,执行如上述第一方面所述的分布式数据库数据变更检索的方法的步骤。

37、本技术第四方面提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述第一方面所述的方法。

38、从以上技术方案可以看出,本技术实施例具有以下优点:

39、本技术中,提供了一种分布式数据库数据变更检索方法、装置、设备及介质,通过特定的数据变更检索策略,可以快速定位到需要检索的二进制日志文件,避免了对整个数据库日志的全面扫描,从而提高了检索效率;用户可以根据需要自定义检索策略,利用时间范围、表名、列过滤条件和操作类型进行精确匹配,确保了只有符合特定条件的变更记录被检索和分析,减少了无关数据的处理,提高了检索的准确性;同时支持分布式数据库环境下的数据变更检索,能够跨节点整合和分析数据,解决了由于数据的分布式存储特性,变更记录可能分布在不同的物理位置,需要跨节点进行数据整合和分析,存在的查找效率低的技术问题。


技术特征:

1.一种分布式数据库数据变更检索方法,其特征在于,包括:

2.根据权利要求1所述的分布式数据库数据变更检索方法,其特征在于,所述获取数据变更检索策略具体包括:

3.根据权利要求2所述的分布式数据库数据变更检索方法,其特征在于,所述根据所述数据变更检索策略读取目标数据库的二进制日志文件具体包括:

4.根据权利要求3所述的分布式数据库数据变更检索方法,其特征在于,所述执行检索程序模块读取所述目标数据库的二进制日志文件之后还包括:

5.根据权利要求4所述的分布式数据库数据变更检索方法,其特征在于,所述根据所述数据变更检索策略中的时间范围对所述二进制日志文件进行过滤,得到满足所述时间范围的二进制分析文件列表之后还包括:

6.根据权利要求5所述的分布式数据库数据变更检索方法,其特征在于,所述将所述二进制分析文件列表中包含的若干个二进制分析文件作为事务信息分发至各个所述分析线程中并发执行还包括:

7.根据权利要求6所述的分布式数据库数据变更检索方法,其特征在于,所述生成检索结果之后还包括:

8.一种分布式数据库数据变更检索装置,其特征在于,包括:

9.一种分布式数据库数据变更检索设备,其特征在于,所述设备包括处理器以及存储器:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行权利要求1-7任一项所述的分布式数据库数据变更检索方法。


技术总结
本申请公开了一种分布式数据库数据变更检索方法、装置、设备及介质,通过特定的数据变更检索策略,可以快速定位到需要检索的二进制日志文件,避免了对整个数据库日志的全面扫描,从而提高了检索效率;用户可以根据需要自定义检索策略,利用时间范围、表名、列过滤条件和操作类型进行精确匹配,确保了只有符合特定条件的变更记录被检索和分析,减少了无关数据的处理,提高了检索的准确性;同时支持分布式数据库环境下的数据变更检索,能够跨节点整合和分析数据,解决了由于数据的分布式存储特性,变更记录可能分布在不同的物理位置,需要跨节点进行数据整合和分析,存在的查找效率低的技术问题。

技术研发人员:邹元虎
受保护的技术使用者:金篆信科有限责任公司
技术研发日:
技术公布日:2024/12/17
转载请注明原文地址:https://xbbs.6miu.com/read-22672.html