[发明专利]一种数据同步的方法和装置有效
申请号: | 201510632297.8 | 申请日: | 2015-09-29 |
公开(公告)号: | CN105227657B | 公开(公告)日: | 2018-07-06 |
发明(设计)人: | 曹雪林 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 姜劲;陆锦华 |
地址: | 100080 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据同步 操作指令 数据总线 主节点 集群 操作日志 方法和装置 集群主节点 持久化 触发数据 存储结构 写入 变更 | ||
本发明提供一种数据同步的方法和装置,不仅支持多个写入源之间相互同步;而且实现了操作日志持久化;并且能够将数据同步到持久化的存储结构上,增加数据同步的可靠性。本发明的数据同步的方法包括:数据总线接收与之相连的集群主节点的操作日志;数据总线从所述操作日志中获取所述触发数据变更的命令,然后根据所述命令分别得到与该数据总线相连的从节点和/或任意集群的主节点的第一操作指令,再将所述第一操作指令发送给该操作指令对应的与该数据总线相连的从节点和/或任意集群的主节点;所述从节点和/或任意集群的主节点运行所接收到的第一操作指令,以完成从所述集群主节点到所述从节点和/或任意集群的主节点的数据同步。
技术领域
本发明涉及计算机技术领域,特别涉及一种数据同步的方法和装置。
背景技术
数据同步是构建Redis集群必须解决的问题,用于把主节点上接收到的数据同步到集群中的其它所有节点上的Redis上。
目前Redis数据同步主要依靠Redis自带的同步机制来实现。通常集群内的所有Redis节点之间互相连通,构成一个树状拓扑,在整个树状拓扑里只有一个主节点用于接收数据写入请求,另外的节点用于支持读请求。写入主节点的数据通过Redis同步协议将操作日志同步到所有其它Redis节点上,目标Redis节点执行接收到的操作日志以完成数据同步。
在目前的技术方案下,存在以下几个困难点:
1)集群部署是有拓扑形状的树状结构,运维需要去关心拓扑的变化,因而增加了运维难度;
2)同一集群只能有一个主结节接收数据写入,很难支持多个写入源之间互相同步;
3)不支持异构存储,即:Redis主节点只能把数据同步到其它Redis节点上,不能同步到其它存储结构上(例如MySQL);
4)Redis自带同步机制下,操作日志被记录在内存中,不做持久化,如果主从断开时间太长,只能做全量数据同步。
发明内容
有鉴于此,本发明提供一种数据同步的方法和装置,一方面能够支持多个写入源之间相互同步,并且避免了在集群部署过程中形成的拓扑形的树状结构,降低了运维难度;另一方面实现了操作日志的持久化,在一定程度上减少了做全量数据同步的次数;再一方面本发明的技术方案支持不同存储结构对数据的同步,能够将数据同步到持久化的存储结构上,增加了数据同步的可靠性。
为实现上述目的,根据本发明的一个方面,提供了一种数据同步的方法。
本发明的数据同步的方法包括:数据总线接收与之相连的集群主节点的操作日志;所述操作日志用于保存集群主节点因数据变更而生成的触发数据变更的命令;数据总线从所述操作日志中获取所述触发数据变更的命令,然后根据所述命令分别得到与该数据总线相连的从节点和/或任意集群的主节点的第一操作指令,再将所述第一操作指令发送给该操作指令对应的与该数据总线相连的从节点和/或任意集群的主节点;所述从节点和/或任意集群的主节点运行所接收到的第一操作指令,以完成从所述集群主节点到所述从节点和/或任意集群的主节点的数据同步。
可选地,所述数据总线获取与之连接的集群主节点的操作日志的步骤之后包括:数据总线根据所述操作日志分别得出对应于多个存储结构的第二操作指令,然后将所述第二操作指令发送给该操作指令所对应的与所述数据总线相连的存储结构;所述存储结构运行所述第二操作指令以实现不同存储结构对数据的同步。
可选地,所述数据总线接收与之相连的集群主节点的操作日志的步骤之后包括:数据总线将所述操作日志存入队列中;并且数据总线从所述操作日志中获取所述触发数据变更的命令的步骤包括:数据总线从所述队列的操作日志中获取所述触发数据变更的命令。
根据本发明的另一方面,提供了一种数据同步的装置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510632297.8/2.html,转载请声明来源钻瓜专利网。