一种实现Oracle数据库日志变更处理的方法及装置与流程

文档序号:36260567发布日期:2023-12-05 18:01阅读:44来源:国知局
一种实现的制作方法

本发明涉及数据实时采集处理领域,具体提供一种实现oracle数据库日志变更处理的方法及装置。


背景技术:

1、实时数据流处理工具nifi是一个用于构建可扩展、弹性的数据流处理系统的软件。它支持从不同的数据源/目标中传输、转换和加工数据,并且具有良好的可视化界面和管理能力。但nifi目前对各类关系型数据库日志变更捕获的能力较弱。

2、数据库日志数据变更捕获是另一个重要的技术,它可以实时监测数据库变更事件,并将其捕获内容输出。debezium是一个专门用于从数据库中捕获变更事件并转换为事件流的工具,支持多种关系型数据库和部分非关系型数据库,包括mysql、oracle、postgresql、sql server、mongodb。但缺少良好的可视化界面、管理能力和数据处理能力。


技术实现思路

1、本发明是针对上述现有技术的不足,提供一种实用性强的实现oracle数据库日志变更处理的方法,

2、本发明进一步的技术任务是提供一种设计合理,安全适用的实现oracle数据库日志变更处理的装置。

3、本发明解决其技术问题所采用的技术方案是:

4、一种实现oracle数据库日志变更处理的方法,包括oraclecdc捕获器、oraclecdc解析器、oraclecdc配置器、oraclecdc状态视图存储器和实时数据同步处理服务;

5、所述oraclecdc捕获器进行数据库日志变更数据的采集;

6、所述oraclecdc解析器进行捕获数据的转换解析;

7、所述oraclecdc配置器进行所述oraclecdc捕获器的可视化配置;

8、所述oraclecdc状态视图存储器记录变更日志采集位置,实现断点续读功能;

9、所述实时数据同步处理服务进行采集数据的流式处理,实现数据转换、清洗、入库操作。

10、进一步的,所述oraclecdc捕获器通过内置debezium引擎实现监听数据库变化事件,所述debezium启动时读取oraclecdc配置器参数,判断当前任务是否存在快照文件,如果存在快照文件,引擎读取快照文件信息,从之前停止的地方恢复流式传输;

11、如果不存在快照文件,根据配置器参数确定捕获数据表列表,获取当前归档日志中的scn编号,捕获已确定捕获数据表结构,对变更数据所在日志偏移量scn进行记录并生成快照文件,生成快照文件成功后执行变更数据捕获处理。

12、进一步的,当停止oraclecdc捕获器时,内置引擎停止捕获事件,并记录变更数据所在日志偏移量scn进行更新并写入到快照文件中。

13、进一步的,所述oraclecdc解析器支持json和avro两种格式的捕获事件信息输出,oraclecdc解析器通过将采集的数据格式与java数据格式做映射转换,满足nifi各种json处理器的使用,适配后续数据处理和不同类型的数据库入库;

14、转换后的数据类型依据不同的数据库可能存在一定差异,针对date数据会统一转换为国际时区东八时区标准时间;

15、针对blob数据类型会转换为base64编码使用;

16、针对clob、nclob、blob和long数据类型,统一数据类型转换进行差异抹除;

17、oraclecdc解析器还支持avro数据格式的输出,支持自动拉取配置表数据库数据元信息,进行avro schema的转换映射。

18、进一步的,所述oraclecdc配置器通过nifi提取debezium捕获oracle数据库变更日志的相关参数,将配置可视化,实现web在线参数配置,页面进行数据库连接信息和cdc应用信息的配置;

19、结合oraclecdc捕获器运行过程中的异常运行信息实时显示到处理器界面,并将debezium引擎的启动和停止与nifi处理器的启动和停止结合。

20、进一步的,所述oraclecdc状态视图存储器进行cdc事件断点续读,依据处理器中存储的offset偏移量信息,再次启动后处理器会从offset断点处开始并依次读取日志捕获历史发生的事件。

21、进一步的,所述实时数据同步处理服务将oraclecdc处理器和oraclecdc解析器输出的ddl和dml数据实时同步到其他数据源,实现全增量一体化读取的数据集成框架。

22、进一步的,在实现全增量一体化读取的数据集成框架中,具体操作为将json数据转换为相对应的sql语句并将各个字段的值存储到flowfile的属性中,将convertjsontosql转换的sql与数据进行入库,实现数据实时同步处理。

23、一种实现oracle数据库日志变更处理的装置,包括:至少一个存储器和至少一个处理器;

24、所述至少一个存储器,用于存储机器可读程序;

25、所述至少一个处理器,用于调用所述机器可读程序,执行一种实现oracle数据库日志变更处理的方法。

26、本发明的一种实现oracle数据库日志变更处理的方法及装置和现有技术相比,具有以下突出的有益效果:

27、本发明依据nifi实现oracle数据库实时捕获变更cdc功能和后续数据解析处理,实现了全增量一体化读取的数据实时集成和流式处理框架。nifi可以通过不同的cdc捕获配置快速搭建oracle数据库cdc实现,捕获到数据并解析后,能够将oracle数据实时捕获集成配置流式数据服务,实现数据的实时变化更新和处理计算。

28、底层架构灵活、易扩展,在oracle数据捕获基础上,可方便扩展其他数据库类型的接入,扩展了流式数据处理工具nifi的数据库日志捕获的数据来源,扩展了流式数据处理的应用场景。

29、改变了数据库日志变更数据捕获的开发模式,使用易用的可视化配置界面,使非专业的数据开发人员也可进行数据采集捕获的配置,降低了数据库变更日志捕获技术的使用门槛,提高了该技术的推广使用范围。

30、结合流式数据处理的稳定框架、丰富处理组件及高安全性保障,提高了数据库日志变更数据捕获技术的稳定性、性能及功能的延伸性。流式数据处理分布式集群的处理架构,较单独使用数据采集捕获技术并进行数据清洗处理,性能大幅提升。



技术特征:

1.一种实现oracle数据库日志变更处理的方法,其特征在于,包括oraclecdc捕获器、oraclecdc解析器、oraclecdc配置器、oraclecdc状态视图存储器和实时数据同步处理服务;

2.根据权利要求1所述的一种实现oracle数据库日志变更处理的方法,其特征在于,所述oraclecdc捕获器通过内置debezium引擎实现监听数据库变化事件,所述debezium启动时读取oraclecdc配置器参数,判断当前任务是否存在快照文件,如果存在快照文件,引擎读取快照文件信息,从之前停止的地方恢复流式传输;

3.根据权利要求2所述的一种实现oracle数据库日志变更处理的方法,其特征在于,当停止oraclecdc捕获器时,内置引擎停止捕获事件,并记录变更数据所在日志偏移量scn进行更新并写入到快照文件中。

4.根据权利要求3所述的一种实现oracle数据库日志变更处理的方法,其特征在于,所述oraclecdc解析器支持json和avro两种格式的捕获事件信息输出,oraclecdc解析器通过将采集的数据格式与java数据格式做映射转换,满足nifi各种json处理器的使用,适配后续数据处理和不同类型的数据库入库;

5.根据权利要求4所述的一种实现oracle数据库日志变更处理的方法,其特征在于,所述oraclecdc配置器通过nifi提取debezium捕获oracle数据库变更日志的相关参数,将配置可视化,实现web在线参数配置,页面进行数据库连接信息和cdc应用信息的配置;

6.根据权利要求5所述的一种实现oracle数据库日志变更处理的方法,其特征在于,所述oraclecdc状态视图存储器进行cdc事件断点续读,依据处理器中存储的offset偏移量信息,再次启动后处理器会从offset断点处开始并依次读取日志捕获历史发生的事件。

7.根据权利要求6所述的一种实现oracle数据库日志变更处理的方法,其特征在于,所述实时数据同步处理服务将oraclecdc处理器和oraclecdc解析器输出的ddl和dml数据实时同步到其他数据源,实现全增量一体化读取的数据集成框架。

8.根据权利要求7所述的一种实现oracle数据库日志变更处理的方法,其特征在于,在实现全增量一体化读取的数据集成框架中,具体操作为将json数据转换为相对应的sql语句并将各个字段的值存储到flowfile的属性中,将convertjsontosql转换的sql与数据进行入库,实现数据实时同步处理。

9.一种实现oracle数据库日志变更处理的装置,其特征在于,包括:至少一个存储器和至少一个处理器;


技术总结
本发明涉及数据实时采集处理领域,具体提供了一种实现Oracle数据库日志变更处理的方法及装置,包括OracleCDC捕获器、OracleCDC解析器、OracleCDC配置器、OracleCDC状态视图存储器和实时数据同步处理服务;OracleCDC捕获器进行数据库日志变更数据的采集;OracleCDC解析器进行捕获数据的转换解析;OracleCDC配置器进行所述OracleCDC捕获器的可视化配置;OracleCDC状态视图存储器记录变更日志采集位置,实现断点续读功能;所述实时数据同步处理服务进行采集数据的流式处理,实现数据转换、清洗、入库操作。与现有技术相比,本发明能够将Oracle数据实时捕获集成配置流式数据服务,实现数据的实时变化更新和处理计算,进行可视化配置。

技术研发人员:季子祥,陈晏鹏,周双,司衍芹
受保护的技术使用者:浪潮软件股份有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1