基于FlinkCDC的实时整库同步方法、系统、设备及存储介质技术方案

技术编号:38577909 阅读:31 留言:0更新日期:2023-08-26 23:24
本发明专利技术属于数据库同步技术领域,具体公开了基于FlinkCDC的实时整库同步方法、系统、设备及存储介质,通过FlinkCDC组件拉取业务数据库整库实时的日志变动数据,来提取当前日志变动数据对应的表名和字段名,判定下游数据库及特殊无需同步表名集合中是否存对应的表名和字段名,若不存在则从业务数据库中查询获取对应的字段信息来映射转换得到下游数据库的适配字段信息,再通过构建语句指令使下游数据库建表建字段来满足当前日志变动数据的录入条件,最后将业务数据库当前日志变动数据同步到下游数据库中,可以高效实现业务数据库到下游数据库实时数据流批一体同步,极大的提升数据库整库同步的便捷程度与时效性。库整库同步的便捷程度与时效性。库整库同步的便捷程度与时效性。

【技术实现步骤摘要】
基于FlinkCDC的实时整库同步方法、系统、设备及存储介质


[0001]本专利技术属于数据库同步
,具体涉及基于FlinkCDC的实时整库同步方法、系统、设备及存储介质。

技术介绍

[0002]随着科技与业务的发展,企业中各式各样的系统也越来越多,这些系统分布于各个平台,使用不同种类的数据库,产生越来越多的数据。由于系统割裂导致各种数据的实时关联处理成为一个难点,而基于实际业务需求,各系统大量的数据又需要统一计算处理。传统的批量同步处理方式(如基于传统etl工具的定时同步)是定时同步,会极大的影响数据实时性,且下游数据库表需要手动创建。而普通的实时同步方案(如基于传统etl工具定时同步加上flinkcdc关键表实时同步、基于传统etl工具定时同步加上otter关键表实时同步等)无法有效提升全局数据的实时性,并且当需要实时同步的表过多时,需要一个表一个处理,下游数据库表手动创建,会给数据库造成巨大的连接压力。因此,亟需一种能实时整库同步的高效处理方案。

技术实现思路

[0003]本专利技术的目的是提供基于FlinkCDC的本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.基于FlinkCDC的实时整库同步方法,其特征在于,包括:通过FlinkCDC组件拉取业务数据库整库实时的日志变动数据;提取出当前的日志变动数据中对应的表名和字段名,并将提取的表名和字段名与缓存的下游数据库中的表名和字段名进行比对,判断下游数据库中是否存在当前日志变动数据对应的表名和字段名;在判定下游数据库中不存在当前日志变动数据对应的表名和字段名时,将提取的表名与预存的特殊无需同步表名集合中的各表名进行比对,判断特殊无需同步表名集合中是否存在当前日志变动数据对应的表名;在判定特殊无需同步表名集合中不存在当前日志变动数据对应的表名时,根据当前日志变动数据对应的表名从业务数据库中查询获取该表名对应表的字段信息,所述字段信息包括字段类型和字段长度;根据设定的映射转换关系对所述字段信息进行映射转换处理,得到下游数据库对应的字段类型和字段长度;根据下游数据库对应的字段类型和字段长度组装构建语句,并将构建语句传输至下游数据库,以使下游数据库执行构建语句建表以及建字段;将当前日志变动数据传输至建表及建字段后的下游数据库,使下游数据库根据构建的表和字段写入当前日志变动数据。2.根据权利要求1所述的基于FlinkCDC的实时整库同步方法,其特征在于,所述方法还包括:在判定下游数据库中存在当前日志变动数据对应的表名和字段名时,直接将当前日志变动数据传输至下游数据库。3.根据权利要求1所述的基于FlinkCDC的实时整库同步方法,其特征在于,所述方法还包括:在判定特殊无需同步表名集合中存在当前日志变动数据对应的表名时,终止对当前日志变动数据的同步处理。4.根据权利要求1所述的基于FlinkCDC的实时整库同步方法,其特征在于,所述根据设定的映射转换关系对所述字段信息进行映射转换处理,得到下游数据库对应的字段类型和字段长度,包括:将所述字段信息导入预置的字段映射信息模板进行字段类型和字段长度的映射转换处理,得到下游数据库对应的字段类型和字段长度。5.根据权利要求1所述的基于FlinkCDC的实时整库同步方法,其特征在于,在将提取的表名和字段名与缓存的下游数据库中的表名和字段名进行比对前,所述方法还包括:查询并加载下游数据库中存在的各表名及对应的字段名缓存到Flink的MapState中。6.根据权利要求5所述的基于FlinkCDC的实时整库同步方法,其特征在于,在将构建语句传输至下游数据库,以使下游数据库...

【专利技术属性】
技术研发人员:王沐张晨
申请(专利权)人:重庆海创云链数字科技有限公司
类型:发明
国别省市:

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

1