System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 分布式数据库的副本同步方法、装置及非易失性存储介质制造方法及图纸_技高网

分布式数据库的副本同步方法、装置及非易失性存储介质制造方法及图纸

技术编号:41009162 阅读:2 留言:0更新日期:2024-04-18 21:44
本发明专利技术公开了一种分布式数据库的副本同步方法、装置及非易失性存储介质。其中,该方法包括:获取目标主副本中的变更数据;确定变更数据的操作日志,其中,操作日志用于记录生成变更数据的至少一项数据操作;在目标主副本的多个目标从副本中,选择至少一个第一从副本存储变更数据;在目标主副本的多个目标从副本中,选择至少一个第二从副本存储操作日志。本发明专利技术解决了现有分布式存储方式存在数据存储成本较高的技术问题。

【技术实现步骤摘要】

本专利技术涉及分布式数据库领域,具体而言,涉及一种分布式数据库的副本同步方法、装置及非易失性存储介质


技术介绍

1、主从架构是一种广泛应用于分布式系统的架构,其基本原理是将系统中的节点分为主节点和从节点两种类型。主节点扮演着系统的核心角色,负责控制和管理整个系统的运行,而从节点则负责存储和处理数据。

2、在主从架构中,主节点通常是单独的一个节点,它负责协调和管理整个系统的运行状态,包括控制数据的读写操作、负载均衡、数据备份等。从节点是系统中的多个节点,它们负责存储和处理数据。从节点之间的数据同步和备份由主节点控制,以保证系统的数据一致性和可靠性。

3、但是,主从架构的多副本存储系统中,由于主节点是整个系统的控制中心,一旦主节点发生故障,整个系统将无法正常工作,这会导致数据丢失或服务不可用的情况。并且在主从架构中,主节点需要处理所有的元数据和协调所有节点的工作,这会导致主节点成为整个系统的性能瓶颈,影响系统的扩展性和性能表现。

4、在主从架构中,由于数据只有在主节点上进行修改,因此在主从节点之间存在数据同步的问题。如果同步过程中发生错误或延迟,可能会导致数据不一致的情况;并且在主从架构中,由于主节点的限制,系统的扩展性受到一定的限制,难以满足大规模数据处理的需求。

5、进而,一般分布式一致性协议的多副本存储系统中每个节点中包括多个副本,可以在各节点中分别选出主副本负责处理数据,其中,多个副本之间通过分布式一致性协议进行通信,以保证数据的一致性。数据在多个节点之间进行分布式存储,以保证数据的可靠性和高可用性。每个节点都包含完整的数据集,可以在其他节点宕机时提供服务。

6、但是,在确定主节点或主副本的情况下,需要基于至少三个节点或副本进行选举,也即需要至少有一半以上的节点或副本同意才能进行数据修改操作,且每个节点或副本都需要存储相同的数据,在这种情况下,副本冗余较多,数据存储成本较高,并且在此基础上的分布式存储系统的扩展性也有一定的限制,无法通过新增节点就达到动态增加存储空间的目的。

7、针对上述现有分布式存储方式存在数据存储成本较高的问题,目前尚未提出有效的解决方案。


技术实现思路

1、本专利技术实施例提供了一种分布式数据库的副本同步方法、装置及非易失性存储介质,以至少解决现有分布式存储方式存在数据存储成本较高的技术问题。

2、根据本专利技术实施例的一个方面,提供了一种分布式数据库的副本同步方法,包括:获取目标主副本中的变更数据;确定所述变更数据的操作日志,其中,所述操作日志用于记录生成所述变更数据的至少一项数据操作;在所述目标主副本的多个目标从副本中,选择至少一个第一从副本存储所述变更数据;在所述目标主副本的多个目标从副本中,选择至少一个第二从副本存储所述操作日志。

3、可选地,获取目标主副本中的变更数据包括:在预设副本组的多个预设副本中,选举所述目标主副本;由所述目标主副本响应至少一项所述数据操作,生成所述变更数据。

4、可选地,在预设副本组的多个预设副本中,选举所述目标主副本包括:统计预设副本组中每个所述预设副本收到选举投票,其中,所述选举投票表示同意所述预设副本作为主副本;检测所述选举投票的投票数量;将所述投票数量满足预设选举规则的预设副本,确定为所述目标主副本,其中,所述预设选举规则为所述投票数量为所述预设副本组中所述预设副本的总副本数量,或所述投票数量超过所述预设副本组中所述预设副本的总副本数量的一半。

5、可选地,在预设副本组的多个预设副本中,选举所述目标主副本包括:识别不存在主副本的预设副本组为目标副本组,其中,所述目标副本组包括:多个目标副本;在分布式数据库的多个预设节点中,确定用于存储所述目标副本组的多个目标节点,其中,每个所述预设节点包括:多个预设数据分块,每个所述预设数据分块用于存储预设副本,所述预设副本包括所述目标副本,所述目标节点中存在用于存储所述目标副本的预设数据分块;监测每个所述目标节点中的主副本数量,其中,所述目标节点中存在属于不同预设副本组的多个预设副本,所述主副本数量为同一所述目标节点的多个所述预设副本中作为主副本的数量;在所述主副本数量最低的目标节点中,确定所述目标副本为所述目标主副本。

6、可选地,在预设副本组的多个预设副本中,选举所述目标主副本之前,所述方法还包括:确定所述预设副本组中预设副本的总副本数量;在分布式数据库的多个预设节点中,选取目标节点数量的预设节点作为目标节点,其中,每个所述预设节点包括:多个预设数据分块,每个所述预设数据分块用于存储所述预设副本,所述目标节点数量与所述总副本数量相同,每个所述目标节点用于存储一个预设副本;在每个所述目标节点中,确定目标数据块,其中,所述目标数据块为空闲的预设数据块;将所述预设副本组中的多个预设副本,分别放入所述目标节点中的目标数据分块。

7、可选地,在所述目标主副本的多个目标从副本中,选择至少一个第二从备份存储所述操作日志包括:在分布式数据库的多个预设节点中,确定用于存储所述目标从副本的多个从副本节点,其中,每个所述预设节点包括:多个预设数据分块,每个所述预设数据分块用于存储预设副本,所述预设副本包括所述目标从副本,所述从副本节点中存在用于存储所述目标从副本的预设数据分块;监测每个所述从副本节点中的日志存储数量,其中,所述从副本节点中存在属于不同预设副本组的多个预设从副本,所述预设从副本基于副本数据与主副本保持同步的第三从副本,或基于操作日志与主副本保持同步的第四从副本,所述日志存储数量为同一所述从副本节点中所述第四从副本的数量;在所述日志存储数量低于预设数量阈值的从副本节点中,选择所述第二从副本。

8、可选地,在确定所述变更数据的操作日志之后,所述方法还包括:获取所述主副本所在预设副本组的提交投票,其中,所述预设副本组包括:多个预设副本,每个所述预设副本为所述主副本或从副本,所述提交投票表示同意提交所述操作日志;检测所述提交投票的提交数量;在所述提交数量满足预设提交规则的情况下,向所述从副本提交所述操作日志。

9、根据本专利技术实施例的另一方面,还提供了一种分布式数据库的副本同步装置,包括:获取模块,用于获取目标主副本中的变更数据;确定模块,用于确定所述变更数据的操作日志,其中,所述操作日志用于记录生成所述变更数据的至少一项数据操作;第一同步模块,用于在所述目标主副本的多个目标从副本中,选择至少一个第一从副本存储所述变更数据;第二同步模块,用于在所述目标主副本的多个目标从副本中,选择至少一个第二从副本存储所述操作日志。

10、根据本专利技术实施例的另一方面,还提供了一种非易失性存储介质,所述非易失性存储介质用于存储程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行所述分布式数据库的副本同步方法。

11、根据本专利技术实施例的另一方面,还提供了一种电子设备,包括:存储器和处理器,所述处理器用于运行存储在所述处理器中的程序,其中,所述程序运行本文档来自技高网...

【技术保护点】

1.一种分布式数据库的副本同步方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,获取目标主副本中的变更数据包括:

3.根据权利要求2所述的方法,其特征在于,在预设副本组的多个预设副本中,选举所述目标主副本包括:

4.根据权利要求2所述的方法,其特征在于,在预设副本组的多个预设副本中,选举所述目标主副本包括:

5.根据权利要求2所述的方法,其特征在于,在预设副本组的多个预设副本中,选举所述目标主副本之前,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,在所述目标主副本的多个目标从副本中,选择至少一个第二从备份存储所述操作日志包括:

7.根据权利要求1所述的方法,其特征在于,在确定所述变更数据的操作日志之后,所述方法还包括:

8.一种分布式数据库的副本同步装置,其特征在于,包括:

9.一种非易失性存储介质,其特征在于,所述非易失性存储介质用于存储程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至7中任意一项所述分布式数据库的副本同步方法。

10.一种电子设备,其特征在于,包括:存储器和处理器,所述处理器用于运行存储在所述处理器中的程序,其中,所述程序运行时执行权利要求1至7中任意一项所述分布式数据库的副本同步方法。

...

【技术特征摘要】

1.一种分布式数据库的副本同步方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,获取目标主副本中的变更数据包括:

3.根据权利要求2所述的方法,其特征在于,在预设副本组的多个预设副本中,选举所述目标主副本包括:

4.根据权利要求2所述的方法,其特征在于,在预设副本组的多个预设副本中,选举所述目标主副本包括:

5.根据权利要求2所述的方法,其特征在于,在预设副本组的多个预设副本中,选举所述目标主副本之前,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,在所述目标主副本的多个目标从副本中,选择至少一个第二...

【专利技术属性】
技术研发人员:孙镇良张俊吴泽宇
申请(专利权)人:云和恩墨北京信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1