[发明专利]分布式系统的数据库复制方法及装置有效
申请号: | 201680057292.X | 申请日: | 2016-04-22 |
公开(公告)号: | CN108140035B | 公开(公告)日: | 2020-09-29 |
发明(设计)人: | 王国平;朱俊华 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/23 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 张耀光 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 系统 数据库 复制 方法 装置 | ||
本发明实施例提供了一种分布式系统的数据库复制方法及装置,涉及数据库领域,方法包括:备集群中的第一分区向协调服务器发送第一分区中新增的多分区事务的时间戳;协调服务器根据新增的多分区事务的时间戳以及协调服务器存储的备集群的每个分区的多分区事务的时间戳,确定第一分区的目标时间戳;协调服务器向第一分区发送目标时间戳;第一分区根据目标时间戳,执行第一分区中的复制日志。通过协调服务器维护备集群每个分区包含多分区事务的时间戳,确定哪些多分区事务在所有分区中都存在,告知相应分区能够执行哪些日志记录,使得相应分区不用等待就能够执行在所有分区中都存在但未必执行的多分区事务,避免了数据不一致且提高了复制效率。
技术领域
本发明涉及数据库领域,特别涉及一种分布式系统的数据库复制方法及装置。
背景技术
在分布式系统中,数据库复制是指将主集群中的数据库复制到备集群中,当主集群遇到灾难整体宕机时,通过备集群提供数据服务,以解决异地容灾的问题。
一般情况下,常见的分布式系统架构是指通过计算机网络将物理上分散的多个节点连接起来组成的一个逻辑上统一的系统架构,其中的节点,具体可以为普通的计算机、移动终端、工作站或通用服务器、专用服务器等,也可以是一个虚拟节点,即虚拟机。分布式系统中的数据分为多个分区,每个分区保存一部分数据,各分区数据的合集构成完整数据,每个节点中可以包括一个分区或者多个分区。分布式系统中包括主集群和备集群,主集群和备集群中均包含多个节点,其中的每个节点包括一个分区或者多个分区。主备集群具有一一对应的分区,且主备集群的每一个分区都有一个日志缓冲区,来保存用于记录当前分区所包含事务的复制日志。复制日志中记录有多条日志记录,每条日志记录用于记录一个事务。分布式系统中事务分为单分区事务和多分区事务,单分区事务是指仅在一个分区中运行的事务,多分区事务是指在所有分区中都运行的事务。
主备集群之间通过复制日志实现数据库复制,现有的数据库复制通常采用的方法包括:当主集群中某个分区的缓冲区已满或者到达一定周期时,主集群会将该分区的复制日志发送给备集群中对应的分区;备集群中对应的分区会执行该复制日志中的所有日志记录,以实现数据库复制。该种方法中,对于多分区事务来说,在主集群的所有分区中均会保存有该多分区事务的复制日志,然而,由于各个分区的缓冲区情况不同或周期不同步,可能会出现主集群中的一些分区将该多分区事务的复制日志发送至备集群的对应分区,而一些分区并没有将该多分区事务的复制日志发送出去,这样,导致备集群有些分区执行了某个多分区事务的复制日志,而有些分区并没有执行这个多分区事务的复制日志,使得各个分区数据不一致。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种分布式系统的数据库复制方法及装置,解决备集群的各个分区中数据不一致的问题,所述技术方案如下:
第一方面,提供了一种分布式系统的数据库复制方法,所述分布式系统包括主集群和备集群,所述主集群和所述备集群分别包括数据库的多个分区,且所述主集群中的多个分区与所述备集群中的多个分区一一对应,所述主集群中的每个分区将本分区的复制日志发送至所述备集群中的对应分区,所述复制日志中记录数据操作的事务;所述备集群中的第一分区向协调服务器发送所述第一分区中新增的多分区事务的时间戳,所述新增的多分区事务为所述第一分区自上一次完成向所述协调服务器发送多分区事务的时间戳后,收到的所述主集群中的对应分区发送的复制日志中记录的事务中的多分区事务;所述协调服务器根据接收到所述新增的多分区事务的时间戳以及所述协调服务器存储的所述备集群的每个分区的多分区事务的时间戳,确定所述第一分区的目标时间戳,所述目标时间戳用于指示所述第一分区可以执行的多分区事务的信息;所述协调服务器向所述第一分区发送所述目标时间戳;所述第一分区根据所述目标时间戳,执行所述第一分区中的复制日志。
结合第一方面,在第一方面的第一种可能的实现方式中,所述所述协调服务器根据接收到所述新增的多分区事务的时间戳以及所述协调服务器存储的所述备集群的每个分区的多分区事务的时间戳,确定所述第一分区的目标时间戳包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201680057292.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:使用主题模型基于接收的词项选择内容项目
- 下一篇:拨号器应用