[发明专利]一种数据同步方法及装置有效
申请号: | 202110532705.8 | 申请日: | 2021-05-17 |
公开(公告)号: | CN113515574B | 公开(公告)日: | 2023-05-19 |
发明(设计)人: | 刘先攀;胡新静;胡晓峰;张纪宽;马忠飞;矫恒浩;王宝云 | 申请(专利权)人: | 聚好看科技股份有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/23;G06F16/28 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 刘彩红 |
地址: | 266100 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 同步 方法 装置 | ||
本申请涉及计算机领域,特别涉及一种数据同步方法及装置,用于发生主从切换时快速恢复同步,该方法为:获取第一节点与第二节点之间的位置对应关系,其中,第一节点为主节点,第二节点为从节点,位置对应关系中至少包含第一节点的日志同步位置,以及对应的第二节点的日志同步位置;若监控到第一节点和第二节点之间进行主从切换,则基于位置对应关系和第一节点的当前日志同步位置,得到第二节点的目标日志位置;基于目标日志位置,进行第一节点与第二节点之间的数据同步。这样,在发生主从切换后,可以快速确定新的主节点的目标日志位置,进而根据目标日志位置,快速恢复同步,避免了数据丢失,保证同步高可用。
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据同步方法及装置。
背景技术
在业务端对源端数据库进行操作时,经常需要将对源端数据库的操作同步至目的端,这一过程称为数据同步。目的端可以是指需要使用源端数据库的数据的公共组件。以源端数据库采用关系型数据库管理系统(MySQL)数据库为例,目的端可以是MySQL、远程字典服务(Remote Dictionary Server,Redis)、分布式发布订阅消息系统(Kafka)等。
源端数据库通常采用主从架构,主从架构使得数据可以从一个数据库服务器同步到另一个数据库服务器上。在进行数据同步的过程中,如果发生主从切换,由于新的主节点存在同步落后、数据写入等情况,因此,需要确定新的主节点的起始同步位置。
目前,为避免数据丢失,在发生主从切换时,通常将新的主节点的数据库日志中,距离切换时刻设定时长的时刻对应的日志位置,作为新的主节点的起始同步位置,以避免数据丢失。但是,采用上述方式会导致数据重复,且同步耗时增加,同步延时增大,如果重复数据的数据量较大,会严重影响业务进行。
发明内容
本申请提供了一种数据同步方法及装置,用以在发生主从切换时,快速恢复同步,同时降低数据丢失的可能性,提高数据同步的可用性。
第一方面,本申请提供一种数据同步方法,包括:
获取第一节点与第二节点之间的位置对应关系,其中,所述第一节点为主节点,所述第二节点为从节点,所述位置对应关系中至少包含第一日志位置和对应的第二日志位置,所述第一日志位置用于表征所述第一节点的日志同步位置,所述第二日志位置用于表征对应的所述第二节点的日志同步位置;
若监控到所述第一节点和所述第二节点之间进行主从切换,则基于所述位置对应关系和所述第一节点的当前日志同步位置,得到所述第二节点的目标日志位置;
基于所述目标日志位置,进行所述第一节点与所述第二节点之间的数据同步。
第二方面,本申请提供一种数据同步装置,包括:
存储器,用于存储可执行指令;
处理器,用于读取并执行存储器中存储的可执行指令,执行下列过程:
获取第一节点与第二节点之间的位置对应关系,其中,所述第一节点为主节点,所述第二节点为从节点,所述位置对应关系中至少包含第一日志位置和对应的第二日志位置,所述第一日志位置用于表征所述第一节点的日志同步位置,所述第二日志位置用于表征对应的所述第二节点的日志同步位置;
若监控到所述第一节点和所述第二节点之间进行主从切换,则基于所述位置对应关系和所述第一节点的当前日志同步位置,得到所述第二节点的目标日志位置;
基于所述目标日志位置,进行所述第一节点与所述第二节点之间的数据同步。
第三方面,本申请提供一种数据同步装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于聚好看科技股份有限公司,未经聚好看科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110532705.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置