[发明专利]一种基于sql的增量数据同步获取方法及系统在审
申请号: | 202110345061.1 | 申请日: | 2021-03-31 |
公开(公告)号: | CN112883118A | 公开(公告)日: | 2021-06-01 |
发明(设计)人: | 朱传举;方建勋;张明哲 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/25 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 sql 增量 数据 同步 获取 方法 系统 | ||
本发明公开了一种基于sql的增量数据同步获取方法及系统,属于数据库全量、增量数据同步领域;所述的方法具体步骤包括:S1在数据库采集端通过执行数据库sql创建逻辑复制槽;S2采集程序实时获取表结构和逻辑解码后的增量数据;S3将逻辑解码后的字符串数据集二次解析并序列化后通过cmsp传输;S4入库端根据数据库类型反序列化获取数据,将数据写入数据库;S5当采集需求结束后清理创建的逻辑复制槽;S6获取数据库增量数据;本发明方法通过时间戳或增量字段方式无法获取表结构变化的情况,利用数据库解析,提高了解析的准确性和效率;将采集数据发送到目的端,目的端根据数据库类型启动相应的转换,入库模块实时的将增量数据写入目的数据库中。
技术领域
本发明公开一种基于sql的增量数据同步获取方法及系统,涉及数据库全量、增量数据同步技术领域。
背景技术
PostgreSQL自9.4+版本之后提供了逻辑复制与逻辑解码的功能,逻辑复制能实现主备间数据同步,逻辑解码是内置的插件实现增量数据的结构集的解析,以插件test_decoding举例,可把增量采集的结果,以字符串表示结果集的形式反馈给用户;CMSP是云和大数据时代的一种高性能消息中间件,以云服务和集群方式对外提供高性能和高可靠的消息队列服务,支撑大数据采集、传输、汇聚、交换,大数据实时处理和微服务处理架构,CMSP实现的功能如图3所示;
随着Postgresql被越来越多的用户熟悉和使用,目前其本身的功能,并不能实现与其它数据库间的全量、增量数据同步,为了实现PG与其它数据库间增量数据同步,我们利用PG9.4版本之后的逻辑复制与解码技术,在其内置的test_decoding插件解析基础上,完成二次开发,获取dml变更记录,在采集端,通过把数据序列化,通过cmsp传输,在入库端获取数据,反序列化,根据目的数据库类型自适配,完成增量数据的同步。
基于现有的时间戳或增量字段的采集方式,所采集数据并不能满足业务要求,例如:获取删除的记录和时间戳/增量点之前的记录,就不能满足,故现发明一种基于sql的增量数据同步获取方法及系统,以解决上述问题。
发明内容
本发明针对现有技术的问题,提供一种基于sql的增量数据同步获取方法及系统,所采用的技术方案为:一种基于sql的增量数据同步获取方法,所述的方法具体步骤包括:
S1在数据库采集端通过执行数据库sql创建逻辑复制槽;
S2采集程序实时获取表结构和逻辑解码后的增量数据;
S3将逻辑解码后的字符串数据集二次解析并序列化后通过cmsp传输;
S4入库端根据数据库类型反序列化获取数据,将数据写入数据库;
S5当采集需求结束后清理创建的逻辑复制槽;
S6获取数据库增量数据。
所述S1在数据库采集端通过执行数据库sql创建逻辑复制槽的具体步骤包括:
S101针对需要同步的表创建逻辑复制槽;
S102根据业务需求确定逻辑槽管理表的数据同步信息的数量。
所述S3将逻辑解码后的字符串数据集二次解析并序列化后通过cmsp传输的具体步骤包括:
S301通过查询表结构变化获取采集表列信息;
S302将结果集中取需要同步的表和同步的字段相结合;
S303将得到的结果集序列化放到cmsp中传输。
所述S6的具体步骤包括:
S601解析增量数据判断是否为表信息
S602解析字符串获取模式名+表名,同时获取dml的增量类型;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110345061.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:CMOS图像传感器及其制造方法
- 下一篇:一种带闪烁灯伸缩式推雪板
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置