【技术实现步骤摘要】
一种基于令牌表的异构数据库双向同步方法及装置
[0001]本申请涉及数据处理领域,尤其涉及一种基于令牌表的异构数据库双向同步方法及装置。
技术介绍
[0002]双向回环复制是异构数据库双向同步所必须解决的问题,即异构库A尝试的变更同步到异构库B后,如果相同的变更内容又从异构库B同步回异构库A的话,就会导致复制中断或复制数据错乱。
[0003]目前市面上的双向同步方案主要依赖业务特性做复制链路过滤或基于事务标识做过滤,典型的实现包括:(1)双向复制链路复制不同的数据库对象。例如异构数据库A
‑
>异构数据库B的复制只复制库A或所有testA_前缀的表,而反方向的异构数据库B
‑
>异构数据库A的复制只复制库B或所有testB_前缀的表;通过正向和反向进行不同数据对象的复制,来避免双向回环复制。
[0004](2)双向复制链路基于特定业务字段的值进行过滤。例如有一张表t1,里面有一列location存储了交易发生的地点,可选的值只有“北京”或“上海”;
【技术保护点】
【技术特征摘要】
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.一种基于令牌表的异构数据库双向同步装置,其特...
【专利技术属性】
技术研发人员:王莉莉,史晨阳,彭晓,王志刚,于树文,郑林城,高孝鑫,司同,王加明,
申请(专利权)人:北京万里开源软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。