一种基于CDC文件的元数据采集系统的制作方法

文档序号:41232029发布日期:2025-03-14 12:00阅读:18来源:国知局
一种基于CDC文件的元数据采集系统的制作方法

本发明涉及一种元数据采集系统,尤其涉及一种基于cdc文件的元数据采集系统。


背景技术:

1、cdc(change data capture)技术是一种捕获增量数据的技术统称,主要应用于捕获数据库数据的变更,包括ddl(数据定义语言)、dml(数据操纵语言)、dcl(数据控制语言)等语句触发的变更。cdc技术在数据备份容灾、数据分发、面向数仓的数据集成等场景中广泛应用。

2、cdc技术的实现方式多种多样,包括基于日志的消费、基于触发器的捕获等,常见的cdc技术实现包括canal、maxwell、debezium、flink cdc等开源技术。这些技术各有特点,可以根据具体的应用场景和需求进行选择。

3、canal:一款基于mysql数据库binlog的增量数据订阅和消费组件,提供增量数据订阅和消费的服务;

4、maxwell:同样可以实时读取mysql的binlog,并生成json信息,将数据同步给mq(如kafka);

5、debezium:最初作为kafka连接器进行设计,消费binlog数据后投递到kafka中,再依赖kafka的connector能力输出到其他存储中;

6、flinkcdc:基于flink生态的cdc工具,集成了debezium进行binlog的采集,省去了mq部分,直接通过flink进行计算和存储。

7、cdc技术在数据备份、容灾、数据仓库建设、实时数据分析等领域有广泛应用。通过cdc技术,企业可以高效地捕获和同步数据库中的变更数据,实现数据的实时更新和同步,从而支持更快速、更准确的业务决策。

8、随着信息技术的飞速发展,企业数据规模呈爆炸式增长,特别是在大数据和云计算的当下,数据量已可轻松达到百亿级甚至更高,元数据作为描述数据的数据,其重要性日益凸显。然而,面对如此庞大的数据量,尤其是当每天有数万条元数据更新,每月产生数十万张过程表时,传统的元数据采集方式难以做到实时采集,并影响后续的数据分析和应用,主要有以下问题。

9、(1)海量数据采集效率问题:面对数据平台百亿级的海量数据,每天需更新的元数据预估达到7万左右的现状,传统元数据采集方式(如全表扫描、定时任务等)因处理能力和效率限制,已难以实现实时采集。这不仅增加了数据延迟,还可能影响后续数据分析和应用的准确性;

10、(2)数据采集的完整性问题:在海量数据环境下,如何确保采集到的元数据既实时又保持高度的一致性和完整性,是另一个重要挑战。数据丢失或错误可能导致后续分析结果的偏差;

11、(3)数据授权与访问控制问题:元数据应用,如数据授权、访问控制等,对数据的时效性有较高要求。如果元数据采集时效不佳,可能导致数据授权滞后,影响用户的数据访问体验和数据安全;

12、(4)元数据应用的同步问题:在元数据应用过程中,如何确保不同系统或模块间元数据的同步和一致性,也是一个关键问题。由于数据不一致可能会导致数据冲突或分析错误的发生。

13、除了上述主要问题外,还需关注数据采集的准确性、安全性、可扩展性等方面。因此,如何构建一种高效、实时的元数据采集系统,成为当前数据治理领域亟待解决的技术问题。


技术实现思路

1、本发明所要解决的技术问题是提供一种基于cdc文件的元数据采集系统,能够高效构建元数据采集链路,实时地捕获数据库变更事件,实现对元数据信息的主动采集与更新,进而提升元数据管理的效率和准确性。

2、本发明为解决上述技术问题而采用的技术方案是提供一种基于cdc文件的元数据采集系统,包括文件解析模块:利用cdc组件解析数据库的变更事件操作日志,并将解析后的操作信息将封装成统一格式的消息,并写入到kafka消息队列中;实时传输与解析模块:从kafka消息队列中实时读取解析后的变更事件消息,通过内置的解析引擎识别并提取出消息中的元数据变更信息,并以增量同步的方式主动获取最新的元数据信息及更新日志;全文检索与告警模块:在获取到最新的元数据信息后,通过与原资源平台中的表名、表描述、字段名、字段描述进行比对,校验当前表是否仍在被使用;服务场景与应用模块:提供restful接口,对外共享元数据信息,支持表级、字段级的数据授权,并建立数据交换任务。

3、进一步地,所述文件解析模块获取可流式消费的日志文件,解析后的操作信息包括与元数据相关的新增表、删除表、修改表结构。

4、进一步地,所述日志文件为mysql的binlog、postgresql的wal文件或者oracle的redolog。

5、进一步地,所述实时传输与解析模块提取的元数据变更信息包括表名、字段名和数据类型。

6、进一步地,所述全文检索与告警模块对于检测到的删除操作,自动发出告警信息,并记录相关操作内容;对于无对应资源未被使用的操作表,进一步进行清理或归档操作。

7、进一步地,所述服务场景与应用模块还包括基于元数据的信息进行数据探查工作,建立数据标准体系以及校验数据合规性操作。

8、本发明对比现有技术有如下的有益效果:本发明提供的基于cdc文件的元数据采集系统,通过引入主动采集机制,本发明将不再依赖于传统的定时任务或全表扫描方式,而是能够实时感知数据的变化,并立即触发采集动作,确保元数据的更新能够即时反映到系统中,显著提升元数据采集的效率。



技术特征:

1.一种基于cdc文件的元数据采集系统,其特征在于,包括:

2.如权利要求1所述的基于cdc文件的元数据采集系统,其特征在于,所述文件解析模块获取可流式消费的日志文件,解析后的操作信息包括与元数据相关的新增表、删除表、修改表结构。

3.如权利要求2所述的基于cdc文件的元数据采集系统,其特征在于,所述日志文件为mysql的binlog、postgresql的wal文件或者oracle的redolog。

4.如权利要求1所述的基于cdc文件的元数据采集系统,其特征在于,所述实时传输与解析模块提取的元数据变更信息包括表名、字段名和数据类型。

5.如权利要求1所述的基于cdc文件的元数据采集系统,其特征在于,所述全文检索与告警模块对于检测到的删除操作,自动发出告警信息,并记录相关操作内容;对于无对应资源未被使用的操作表,进一步进行清理或归档操作。

6.如权利要求1所述的基于cdc文件的元数据采集系统,其特征在于,所述服务场景与应用模块还包括基于元数据的信息进行数据探查工作,建立数据标准体系以及校验数据合规性操作。


技术总结
本发明公开了一种基于CDC文件的元数据采集系统,包括文件解析模块:利用CDC组件解析数据库的变更事件操作日志,并将解析后的操作信息将封装写入到Kafka消息队列中;实时传输与解析模块:实时读取解析后的变更事件消息,识别并提取出消息中的元数据变更信息,并以增量同步的方式主动获取最新的元数据信息及更新日志;全文检索与告警模块:通过与原资源平台中的表名、表描述、字段名、字段描述进行比对,校验当前表是否仍在被使用;服务场景与应用模块:提供RESTful接口,对外共享元数据信息。本发明能够高效构建元数据采集链路,实时捕获数据库变更事件,实现对元数据信息的主动采集与更新,进而提升元数据管理的效率和准确性。

技术研发人员:刘迎风,张向飞,刘辰昀,潘佳,翁程凯,汪瑜,范倍铭
受保护的技术使用者:上海市大数据中心
技术研发日:
技术公布日:2025/3/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1