一种基于令牌表的异构数据库双向同步方法及装置制造方法及图纸

技术编号:35156778 阅读:46 留言:0更新日期:2022-10-05 10:40
本申请公开一种基于令牌表的异构数据库双向同步方法及装置。所述方法包括:在复制链路的目标端异构库内部创建只供同步链路访问的令牌表;监听并读取业务变更写入异构数据库后本地生成的数据库变更日志;在向目标端异构库同步时,获取同步链路编号,在业务变更事务中嵌入令牌信息;当反向同步链路以当前目标端异构库作为源端异构库时,自动过滤相关复制链路带有令牌信息的操作事务。本申请基于复制链路标识进行复制过滤,无需依赖业务特性,具备通用性,对业务没有明显的限制,相比“全局事务唯一标识”的方案,无需异构库代码层提供全局事务标识的支持,对所链接的异构数据库没有明显的限制。显的限制。显的限制。

【技术实现步骤摘要】
一种基于令牌表的异构数据库双向同步方法及装置


[0001]本申请涉及数据处理领域,尤其涉及一种基于令牌表的异构数据库双向同步方法及装置。

技术介绍

[0002]双向回环复制是异构数据库双向同步所必须解决的问题,即异构库A尝试的变更同步到异构库B后,如果相同的变更内容又从异构库B同步回异构库A的话,就会导致复制中断或复制数据错乱。
[0003]目前市面上的双向同步方案主要依赖业务特性做复制链路过滤或基于事务标识做过滤,典型的实现包括:(1)双向复制链路复制不同的数据库对象。例如异构数据库A

>异构数据库B的复制只复制库A或所有testA_前缀的表,而反方向的异构数据库B

>异构数据库A的复制只复制库B或所有testB_前缀的表;通过正向和反向进行不同数据对象的复制,来避免双向回环复制。
[0004](2)双向复制链路基于特定业务字段的值进行过滤。例如有一张表t1,里面有一列location存储了交易发生的地点,可选的值只有“北京”或“上海”; 异构数据库A
...

【技术保护点】

【技术特征摘要】
1.一种基于令牌表的异构数据库双向同步方法,其特征在于,包括:在复制链路的目标端异构库内部创建只供同步链路访问的令牌表;监听并读取业务变更写入异构数据库后本地生成的数据库变更日志;在向目标端异构库同步时,获取同步链路编号,在业务变更事务中嵌入令牌信息;当反向同步链路以当前目标端异构库作为源端异构库时,自动过滤相关复制链路带有令牌信息的操作事务。2.如权利要求1所述的一种基于令牌表的异构数据库双向同步方法,其特征在于,令牌表包括令牌id、复制链路编号channel_id以及令牌值token_value,令牌id在令牌表内唯一。3.如权利要求2所述的一种基于令牌表的异构数据库双向同步方法,其特征在于,嵌入的令牌信息包括随机分配的一个令牌id、获取的同步链路编号channel_id,以及设定的令牌token_value更新操作。4.如权利要求3所述的一种基于令牌表的异构数据库双向同步方法,其特征在于,令牌token_value更新操作为累加操作、或累减操作、或自定义更新操作。5.如权利要求3所述的一种基于令牌表的异构数据库双向同步方法,其特征在于,当反向同步链路以当前目标异构库作为源端库时,自动过滤掉相关复制链路带有令牌表channel_id的事务。6.一种基于令牌表的异构数据库双向同步装置,其特...

【专利技术属性】
技术研发人员:王莉莉史晨阳彭晓王志刚于树文郑林城高孝鑫司同王加明
申请(专利权)人:北京万里开源软件有限公司
类型:发明
国别省市:

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

1