[发明专利]主备数据库的同步方法及装置无效

专利信息
申请号: 201610013943.7 申请日: 2016-01-11
公开(公告)号: CN105786959A 公开(公告)日: 2016-07-20
发明(设计)人: 郭理靖;田琪;沈陈乐 申请(专利权)人: 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 中科专利商标代理有限责任公司 11021 代理人: 宋焰琴
地址: 100080 北京市海淀区杏石口路6*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 数据库 同步 方法 装置
【说明书】:

技术领域

发明涉及数据处理领域,更具体地涉及一种主备数据库的同步方法 及装置。

背景技术

MySQL是互联网行业广泛使用的开源数据库软件,不过由于甲骨文 存在将MySQL闭源的风险,许多基于MySQL的应用都面临需要使用替 代性的开源数据库软件,而MariaDB是对MySQL兼容性最好的替代方案。 但针对大型网站,使用MariaDB数据库存在一台MariaDB数据库无法支 持庞大访问量的问题。

对此有效的解决方案是建立MariaDB数据库集群,其中备数据库是主 数据库的完整镜像,写请求首先在主数据库上执行,而读请求会分布到所 有数据库上,主数据库在接收写数据完成后通过同步工具将写请求按照单 线程顺序执行的方式同步到备数据库上,从而提供更加强大的数据库读写 服务。

目前官方提供的主备同步的版本中,主备同步采用的是单线程同步, 当主数据库负载较高时,会导致同步延时增大,备数据库不能及时读取最 新数据,降低了数据库集群的可用性。

发明内容

有鉴于此,本发明的主要目的在于提供一种主备数据库同步方法及装 置,以便解决现有主备数据库在备数据库较多的情况下,同步效率低下的 问题。

为了实现上述目的,作为本发明的一个方面,本发明提供了一种主备 数据库同步装置,包括:

同步事务获取单元,用于通过对主数据库中的数据库事务进行读取, 获得需要同步的数据库事务信息,将其添加到数据库事务写队列中,并将 数据库事务主键数量作为主键处理进度值;以及

同步事务执行单元,用于采用并行写入方式将所述数据库事务写队列 中的所述数据库事务写入到备数据库中,并删除位于所述数据库事务写队 列顶端的所述数据库事务。

其中,所述同步事务执行单元包括同步事务处理组件、同步事务写入 组件和同步事务完成组件,其中所述同步事务处理组件轮训各个待处理的 数据库事务主键处理进度值,当主键事务处理进度值为0时进入所述同步 事务执行组件;所述同步事务执行组件将主键处理进度值为0的数据库事 务派发到写线程执行,采用并行写入方式将写队列的事务写入备数据库中; 所述同步事务完成组件在写入备数据库的数据库事务完成后,删除已经完 成的数据库事务,删除位于主键写队列顶端的该数据库事务,主键写队列 的第二条数据库事务自动成为主键写队列的待处理事务,并通知所述数据 库事务主键处理进度值减一。

作为本发明的另一个方面,本发明还提供了一种主备数据库同步方法, 包括以下步骤:

通过对主数据库中的数据库事务进行读取,获得需要同步的数据库事 务信息,取得数据库事务的主键,记录同步数据库事务的主键,并将数据 库事务主键数量作为主键处理进度值;

按照数据库事务主键信息,将获取到的数据库事务按照主数据库中的 顺序增加到数据库事务主键对应主键写队列中;其中,对于没有写队列的 主键需要创建新的主键写队列,并将该事务置为写队列顶端,通知该主键 处理进度值减一;

轮训各个待处理的数据库事务主键处理进度值,当主键事务处理进度 值为0时进入同步事务执行组件;

将主键处理进度值为0的数据库事务派发写线程执行,采用并行写入 方式将写队列的事务写入备数据库中;

写入备数据库的数据库事务完成后,删除已经完成的数据库事务,删 除位于主键写队列顶端的该数据库事务,主键写队列的第二条数据库事务 自动成为主键写队列的待处理事务;通知该数据库事务主键处理进度值减 一。

基于上述技术方案可知,本发明的同步装置和方法相对于现有技术, 能够将MariaDB的集群性能大大提升,有效扩展了MariaDB的试用范围, 能够支持更高的数据库访问量;此外,以事务作为同步的最小单位,事务 本身具有原子性,同时多线程并行写入的方式减少了同步的执行时间,大 大提升了MariaDB的执行效率。

附图说明

图1是本发明的基于MariaDB主备数据库的同步方法的流程框图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实 施例,并参照附图,对本发明作进一步的详细说明。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201610013943.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top