[发明专利]一种DB2数据库数据同步方法、装置、系统在审
申请号: | 201910842876.3 | 申请日: | 2019-09-06 |
公开(公告)号: | CN110737720A | 公开(公告)日: | 2020-01-31 |
发明(设计)人: | 张义强;周虎;吴杰;胡睿哲;姜浩 | 申请(专利权)人: | 苏宁云计算有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27 |
代理公司: | 11111 北京市万慧达律师事务所 | 代理人: | 陈怡 |
地址: | 210000 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 源库 目标库 数据同步 同步请求 申请 分表 数据同步请求 映射关系配置 断点续传 解析结果 日志数据 实时获取 同步场景 同步方式 同步过程 同步目标 同步的 同步源 中间件 集群 解析 入侵 场景 监控 协调 | ||
本申请实施例公开一种DB2数据库数据同步方法、装置、系统,方法包括:获取针对待同步源库和对应的待同步目标库的数据同步请求;若请求为全量同步请求,则根据源库的数据对目标库进行全量同步;若请求为增量同步请求,则实时获取源库产生的日志数据并进行解析,根据解析结果对目标库进行增量同步;本申请可以实现DB2数据库的全量和增量同步,并且本申请的增量同步方式对源库没有任何入侵,不会影响业务;此外,通过扩展集群,可以实现分库分表场景同步以及对分库分表同步的监控与协调,通过中间件对源库及目标库进行映射关系配置,可实现源库M到目标库N的数据同步,满足更复杂的同步场景;进一步的,本申请全量和增量同步过程都支持断点续传。
技术领域
本发明属于计算机技术领域,尤其涉及一种DB2数据库数据同步方法、装置、系统。
背景技术
数据同步在数据库领域不是一个新鲜的概念,很多公司有自己的开源或闭源数据同步产品,如Oracle公司的GoldenGate、Pentaho公司的kettle、IBM的CDC、国内阿里的canal、开源的debezium以及confluent jdbc connector。然而现有数据库数据同步产品,很多只支持mysql的同步,无法实现db2数据的增量同步;此外,像GoldenGate、CDC这种同步工具,只能实现单一源的同步,无法做到对源库是分库分表的场景进行数据同步;更进一步地,现有的同步产品无法实现同步过程的断点续传。
发明内容
为了解决现有技术的问题,本发明提出了一种DB2数据库数据同步方法、装置、系统,本发明可以实现DB2数据库的全量和增量同步,并且本发明的增量同步方式对源库没有任何入侵,不会影响业务。
本发明实施例提供的具体技术方案如下:
第一方面,本发明提供一种DB2数据库数据同步方法,所述方法包括:
获取针对待同步源库和对应的待同步目标库的数据同步请求;
若所述请求为全量同步请求,则根据所述源库的数据对所述目标库进行全量同步;
若所述请求为增量同步请求,则实时获取所述源库产生的日志数据并进行解析,根据解析结果对所述目标库进行增量同步。
优选的,所述方法还包括:
确定所述源库的分库信息和对应的目标库的分库信息;
根据中间件,建立所述源库的分库与所述目标库的分库之间的通信连接。
优选的,所述方法还包括:
创建集群管理节点,根据所述集群管理节点实时监控所述源库的分库至所述目标库的分库的同步进程;
若所述源库的任一分库至所述目标库的分库的同步进程存在异常,则停止所述源库的其余分库至所述目标库的分库的同步进程。
优选的,所述实时获取所述源库产生的日志数据并进行解析具体包括:
在Java端调用jni方法,进入c程序;
在所述c程序中解析所述Java端传递的数据同步请求参数;其中,所述数据同步请求参数包括数据库位点;
确定增量同步的起始位点,获取在所述起始位点后产生的所述日志数据;
根据预定义的DB2日志协议对所述日志数据进行解析,得到解析结果;
根据回调Java方法,将所述解析结果返回至所述Java端。
优选的,所述方法还包括:
监控所述增量同步进程;
若所述增量同步出现异常中断,实时记录并存储在所述异常中断前最近一次增量同步至所述目标库时的位点;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏宁云计算有限公司,未经苏宁云计算有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910842876.3/2.html,转载请声明来源钻瓜专利网。