[发明专利]一种基于mysql数据同步到异构数据源的系统及方法在审
申请号: | 202111154477.1 | 申请日: | 2021-09-29 |
公开(公告)号: | CN113821532A | 公开(公告)日: | 2021-12-21 |
发明(设计)人: | 黎杰;罗鹏 | 申请(专利权)人: | 重庆富民银行股份有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/27 |
代理公司: | 重庆强大凯创专利代理事务所(普通合伙) 50217 | 代理人: | 赵玉乾 |
地址: | 401121 重庆市渝*** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 mysql 数据 同步 到异构 数据源 系统 方法 | ||
本发明涉及数据同步技术领域,具体涉及一种基于mysql数据同步到异构数据源的方法。一种基于mysql数据同步到异构数据源的方法,包括canal通过主从复制的协议从mysql节点上面拉取binlog数据;对binlog数据进行日志解析,形成解析数据;对解析数据进行合并处理,形成合并数据;对合并数据进行转换,转换成标准格式,报文最外层为tupe节点和schema节点;消费转换后的数据,对异构数据源进行相应的操作。本发明还公开一种基于mysql数据同步到异构数据源的系统。采用本发明不侵入业务系统,通过对mysql的binlog处理不影响mysql的性能并且能进行实时同步,提高查询效率高。
技术领域
本发明涉及数据同步技术领域,具体为一种基于mysql数据同步到异构数据源的系统及方法。
背景技术
MySQL是目前应用比较广泛的关系型数据库管理系统,当Mysql数据量较大的时候,查询性能会急剧下降,当前有很多其他的存储引擎可以解决大数据量的查询问题,但是没有完善的工具进行异构数据源的同步,因此目前急需解决异构数据源的同步问题。
发明内容
本发明目的之一在于提供一种基于mysql数据同步到异构数据源的方法,以。
一种基于mysql数据同步到异构数据源的方法,包括步骤如下:
canal通过主从复制的协议从mysql节点上面拉取binlog数据;
对binlog数据进行日志解析,形成解析数据;
对解析数据进行合并处理,形成合并数据;
对合并数据进行转换,转换成标准格式,报文最外层为tupe节点和schema节点;
消费转换后的数据,对异构数据源进行相应的操作。
采用本发明的技术方案:1、不侵入业务系统,通过对mysql的binlog处理不影响mysql的性能并且能进行实时同步;2、操作合并后批量执行能增强异构数据的同步性能;3、解决mysql海量数据查询性能问题,查询效率高。
进一步,所述的tupe节点是一个数组结构,内部存储每条binlog数据的具体信息,tupe节点包括流水id、操作时间戳、操作符和操作的明细数据,流水id组成规则是通过binlog名字加偏移量。流水id,作用为防止重复操作,流水id组成规则是通过binlog名字加偏移量,能保证每个操作的id唯一且不重复,当消费端处理后会存储至redis,防止重复操作,也即通过redis解决数据重复性问题。
进一步,schema节点内部包含了fields数组节点、tableName节点和namespace节点。tableName和namespace是异构数据源的表名以及命名空间标识。
进一步,为了防止数据堆积,在消费转换的数据之前,还包括将转换后的数据发送至kafka中间件。
进一步,还包括重写kafka的partition,对库名和表名进行hash分组。通过kafka自定义分区,能保证单表同步的顺序性,能进行自动容错。
本发明的目的之二在于提供一种基于mysql数据同步到异构数据源的系统。
一种基于mysql数据同步到异构数据源的系统,包括binlog数据拉取模块,采用canal通过主从复制的协议从mysql节点上面拉取binlog数据;
日志解析模块,用于对binlog数据进行日志解析,形成解析数据;
数据预处理模块,用于对解析数据进行合并处理,形成合并数据;
数据转换模块,用于对合并数据进行转换,转换成标准格式,报文最外层为tupe节点和schema节点;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆富民银行股份有限公司,未经重庆富民银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111154477.1/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置