[发明专利]主备数据库同步的方法和装置有效
| 申请号: | 201210564590.1 | 申请日: | 2012-12-21 |
| 公开(公告)号: | CN103885986B | 公开(公告)日: | 2017-12-19 |
| 发明(设计)人: | 叶晖俊 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京安信方达知识产权代理有限公司11262 | 代理人: | 栗若木 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据库 同步 方法 装置 | ||
1.一种主备数据库同步的方法,用于主数据库和备数据库间的数据同步,其特征在于,该方法包括:
事务派发步骤,将从主数据库读取的各个事务或各个事务的标识派发至写队列;
事务写入步骤,采用多个写线程并行将各写线程对应的写队列中的事务或标识对应的事务写入备数据库;
派发事务或写入事务的前提为:该事务获得该事务的各记录所对应的虚拟记录锁;其中,所述该事务获得该事务的各记录所对应的虚拟记录锁表示该事务锁定该事务的各记录。
2.如权利要求1所述的方法,其特征在于:所述派发步骤前,该方法还包括:
预处理步骤,依次提取各个事务的主键,为各个事务创建主键列表,根据各个事务的主键列表,依次将各个事务的标识放入各个事务的主键对应的主键事务队列中,处于主键事务队列的队首的事务获得该主键对应的虚拟记录锁;
派发事务或写入事务的前提为该事务的虚拟记录锁总数等于该事务的主键列表中主键的总数。
3.如权利要求2所述的方法,其特征在于:所述预处理步骤中,去除重复的主键后创建所述主键列表。
4.如权利要求2所述的方法,其特征在于,所述派发步骤还包括:对于已经写入备数据库的事务,删除位于主键事务队列队首的该事务的事务标识,将虚拟记录锁传递给该主键事务队列的下一个节点。
5.如权利要求4所述的方法,其特征在于:所述事务派发步骤由派发线程执行,预处理步骤中,为各个事务创建虚拟记录锁计数器,该事务每获得一个虚拟记录锁,该虚拟记录锁计数器加1,所述派发线程或写线程根据所述虚拟记录锁计数器判断当前事务的虚拟记录锁总数等于该事务的主键列表中主键的总数。
6.如权利要求1所述的方法,其特征在于:事务派发步骤中,根据写队列最短原则或事务哈希值为当前事务选择写队列。
7.如权利要求6所述的方法,其特征在于:所述事务的哈希值是将各个事务的第一个主键转换成字符串,再通过哈希计算得到的。
8.如权利要求1所述的方法,其特征在于:事务写入步骤之后,该方法还包括删除步骤,删除已写入备数据库的事务对象。
9.一种主备数据库同步的装置,其特征在于,该装置包括:
派发单元,用于依次将从主数据库读取的各个事务或各个事务的标识派发至写队列;
写入单元,用于采用多个写线程并行将各写线程对应的写队列中的事务或标识对应的事务写入备数据库;所述写队列用于存放派发单元派发的事务或事务的标识,一个写队列对应一个写线程;
其中,派发事务或写入事务的前提为:该事务获得该事务的各记录所对应的虚拟记录锁;其中,所述该事务获得该事务的各记录所对应的虚拟记录锁表示该事务锁定该事务的各记录。
10.如权利要求9所述的装置,其特征在于:所述装置还包括:
预处理单元,用于依次提取各个事务的主键,为各个事务创建主键列表;还用于根据各个事务的主键列表,依次将各个事务的指针放入该事务各个主键对应的主键事务队列中,事务的指针处于队首的事务即获得该主键对应的虚拟记录锁;
若干个主键事务队列,用于存储各个事务的标识;
所述派发单元或写入单元,当事务获得的虚拟记录锁总数等于该事务的主键列表中主键的总数时,派发事务或写入事务。
11.如权利要求10所述的装置,其特征在于,所述派发单元,还用于删除已经写入备数据库的事务对应的主键事务队列队首的事务标识,将虚拟记录锁传递给该队列的下一个节点。
12.如权利要求10所述的装置,其特征在于:所述派发单元由派发线程实现,预处理单元还用于为各个事务创建虚拟记录锁计数器,该事务每获得一个虚拟记录锁,该虚拟记录锁计数器加1,所述派发单元或写入单元根据所述虚拟记录锁计数器判断当前事件的虚拟记录锁总数等于该事务的主键列表中主键的总数。
13.如权利要求9所述的装置,其特征在于:派发单元根据写队列最短原则或事务哈希值为当前事务选择写队列。
14.如权利要求10所述的装置,其特征在于:所述事务哈希值是将各个事务的第一个主键转换成字符串,再通过哈希计算得到的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210564590.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种治疗肺脾同病型小儿厌食的中药
- 下一篇:一种高吞吐率的FFT加速器





