[发明专利]分布式数据库同步方法和系统有效
申请号: | 201210586458.0 | 申请日: | 2012-12-28 |
公开(公告)号: | CN103902617A | 公开(公告)日: | 2014-07-02 |
发明(设计)人: | 朱俊华 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 唐华明 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 数据库 同步 方法 系统 | ||
技术领域
本发明涉及数据库领域,更具体地说,涉及分布式数据库同步方法和系统。
背景技术
随着云计算的兴起,对海量数据存储和管理的需求也在不断地增加。在这样的趋势下,近几年出现了许多面向海量数据管理的大规模分布式数据库,通过利用商用硬件搭建大规模服务器集群来提供海量的数据存储和管理能力。
副本机制作为保证数据库服务的可靠性和可用性的关键技术之一,在各种新兴的大规模分布式数据库系统中得到了广泛运用。在实际应用中,一般会在数据中心之间采用异步复制的方式,对数据复制只提供最终一致性的保证,即通过将主数据库的数据与副本数据库的数据进行同步的方式,来保证数据的可靠性和可用性。为了保证主数据库与副本数据库同步的有效性,需要在各种故障场景下都能检查并同步不一致的数据副本,确保数据库在出现故障后能快速恢复到出错前的正确状态,从而提升数据库的可用性和可靠性。
现有技术中,所采用的技术方案一般为,在整个数据库同步系统包括有主数据库、副数据库和同步单元,主数据库和副数据库均包括数据格式化单元,哈希值生成器和树结构生成器。
数据格式化单元负责按照共同数据模型接收,格式化,存储和管理数据单元。哈希模型定义了一种或多种哈希算法及其输入格式,哈希值生成器根据哈希模型为数据单元生成哈希值。树结构生成器把数据格式化单元中的数据单元组织成一棵树。在树结构生成器生成树后,哈希值生成器计算树中每个节点的哈希值,从而得到一棵哈希树。若节点为叶节点,节点哈希值通过对其包含的数据单元的哈希值的计算得到,如节点不是叶节点,节点哈希值通过对其子节点的哈希值和包含的数据单元的哈希值的计算得到。
同步单元通过对比主数据库的哈希树和副数据库的哈希树,确定不一致的数据单元,同步单元通知主数据库将不一致的数据单元从主数据库传送至副数据库;在将所有的哈希树对比、并完成所有不一致的数据单元的传送后,即为完成了数据库的同步。
发明人通过研究发现,现有技术中的技术方案至少存在以下缺陷:
由于在现有技术中,需要在同步单元中完成所有节点中数据单元的哈希树比较,所以执行数据一致性检查时,需要较长的时间,从而使得数据同步的效率较低。
发明内容
有鉴于此,本发明提供分布式数据库同步方法和系统,以解决现有技术存在的数据同步的效率较低的问题。
本发明是这样实现的:
一方面,提供了一种分布式数据库同步方法,分布式数据库包括主服务器集群和备份服务器集群,主服务器集群中主节点包括一个或多个区间,备份服务器集群中备份节点包括一个或多个区间,主服务器集群中每个区间在备份服务器集群中都对应一个区间,主服务器集群包括第一主节点和第二主节点,备份服务器集群包括第一备份节点和第二备份节点,所述方法包括:
第一主节点获取主服务器集群中各个主节点的所有区间哈希树的根节点的区间哈希值,并生成以主服务器集群中所述区间哈希值为叶节点的主服务器集群哈希树;其中,主节点的区间哈希树为主节点以区间中的数据单元为叶节点构造的哈希树;
第一备份节点获取备份服务器集群中各个备份节点的所有区间哈希树的根节点的区间哈希值,并生成以备份服务器集群中所述区间哈希值为叶节点的备份服务器集群哈希树;其中,备份节点的区间哈希树为备份节点以区间中的数据单元为叶节点构造的哈希树;
第一主节点通过比较主服务器集群哈希树和备份服务器集群哈希树,确定区间哈希值不一致的第二主节点的区间哈希树和第二备份节点的区间哈希树;
第二主节点通过比较第二主节点的区间哈希树和第二备份节点的区间哈希树,确定第二主节点中需同步的数据单元和第二备份节点需同步的数据单元;
第二主节点根据第二主节点中需同步的数据单元和第二备份节点中需同步的数据单元进行数据同步。
进一步的,所述以区间中的数据单元为叶节点构造的哈希树,具体包括:
根据数据单元信息和区间信息为每个区间构造以数据单元为叶节点的树结构;
根据哈希模型,计算所述树结构每个叶节点的哈希值,以生成所述区间哈希树;
为每个区间哈希树加入对应的区间标识。
进一步的,所述主服务器集群中每个区间在备份服务器中都对应一个区间,具体的包括:
分别为所述主服务器集群中每个区间和所述备份服务器中每个区间设有区间标识;
将所述主服务器集群中每个区间的区间标识和对应的备份服务器中区间的区间标识加以关联。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210586458.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于龟鳖养殖的自动投料装置
- 下一篇:一种工厂化循环水调温装置