数据同步方法、装置、节点、集群及存储介质制造方法及图纸

技术编号:22166766 阅读:30 留言:0更新日期:2019-09-21 10:31
本公开涉及一种数据同步方法、装置、节点、集群及存储介质,以快速实现集群中的主节点与从属于该主节点的从节点之间的数据同步。该数据同步方法包括:将所述主节点存储的数据操作命令与从节点存储的数据操作命令进行比对;将在所述主节点中存储且所述从节点中未存储的数据操作命令作为目标操作命令,并将所述目标操作命令发送给所述从节点,所述目标操作命令用于被所述从节点执行以实现所述主节点与所述从节点之间的数据同步。

Data synchronization methods, devices, nodes, clusters and storage media

【技术实现步骤摘要】
数据同步方法、装置、节点、集群及存储介质
本公开涉及数据处理
,具体地,涉及一种数据同步方法、装置、节点、集群及存储介质。
技术介绍
在应用系统中,由于业务量的快速增长,需要应用系统有较好的并发能力,所以,应用系统往往采用集群部署。集群中可以包括主节点和从属于该主节点的多个从节点。为了保证数据的一致性,比如在主节点由于故障下线的情况下,需要实现新的主节点与从属于该新主节点的从节点之间的数据同步,或者在有新的主节点或从节点加入集群的情况下,也需要实现对应主节点和从属于该主节点的从节点之间的数据同步。相关技术中,主要是通过全量数据同步的方式实现主节点和从属于该主节点的从节点之间的数据同步,即,将主节点的全部数据发送给对应从节点,从而实现主节点和该从节点之间的数据同步。但是,在高并发的应用场景下,全量数据同步的方式需要耗费较多的网络资源,无法快速实现主节点和从属于该主节点的从节点之间的数据同步。
技术实现思路
本公开的目的是提供一种数据同步方法、装置、节点、集群及存储介质,以快速实现主节点和从属于该主节点的从节点之间的数据同步。为了实现上述目的,第一方面,本公开提供一种数据同步方法,应用于主节点,包括:将所述主节点存储的数据操作命令与从节点存储的数据操作命令进行比对;将在所述主节点中存储且所述从节点中未存储的数据操作命令作为目标操作命令,并将所述目标操作命令发送给所述从节点,其中,所述目标操作命令用于被所述从节点执行以实现所述主节点与所述从节点之间的数据同步。可选地,在将所述主节点存储的数据操作命令与从节点存储的数据操作命令进行比对之前,所述方法还包括:根据所述主节点的节点标识和所述从节点的节点标识,确定所述主节点和所述从节点属于同一数据分区。可选地,所述方法还包括:每接收到一新的数据操作命令,将该新的数据操作命令存储到命令存储区域,其中,各数据操作命令在所述命令存储区域中的存储地址连续;每在所述命令存储区域写入一新的数据操作命令,更新所述命令存储区域的最大命令偏移量,其中,所述最大命令偏移量用于表征已存储的数据操作命令在所述命令存储区域中的最大偏移地址。可选地,所述将所述主节点存储的数据操作命令与从节点存储的数据操作命令进行比对,包括:将所述主节点的命令存储区域的最大命令偏移量与所述从节点的命令存储区域的最大命令偏移量进行比对;所述将在所述主节点中存储且所述从节点中未存储的数据操作命令作为目标操作命令,包括:若所述主节点的命令存储区域的最大命令偏移量大于所述从节点的命令存储区域的最大命令偏移量,则确定所述从节点的命令存储区域的最大命令偏移量大小在所述主节点的命令存储区域中对应的目标偏移地址;将所述主节点的命令存储区域中,所述目标偏移地址之后,以及该命令存储区域的最大偏移地址以前存储的数据操作命令作为所述目标操作命令。可选地,包括所述主节点和所述从节点的集群处于故障切换状态,所述方法还包括:确定所述集群的平均故障切换时间以及所述主节点接收数据操作命令的速率;根据所述平均故障切换时间和所述速率,确定目标存储容量;创建存储容量为所述目标存储容量的所述命令存储区。第二方面,本公开还提供一种数据同步方法,应用于从节点,所述方法包括:接收主节点发送的目标操作命令,所述目标操作命令是在所述主节点中存储且所述从节点中未存储的数据操作命令,所述目标操作命令用于被所述从节点执行以实现所述主节点与所述从节点之间的数据同步;执行所述目标操作命令。可选地,所述方法还包括:每接收到一新的数据操作命令,将该新的数据操作命令存储到命令存储区域,其中,各数据操作命令在所述命令存储区域中的存储地址连续;每在所述命令存储区域写入一新的数据操作命令,更新所述命令存储区域的最大命令偏移量,其中,所述最大命令偏移量用于表征已存储的数据操作命令在所述命令存储区域中的最大偏移地址;将更新后的所述最大命令偏移量发送给所述主节点。第三方面,本公开还提供一种数据同步装置,应用于主节点,包括:比对模块,用于将所述主节点存储的数据操作命令与从节点存储的数据操作命令进行比对;发送模块,用于将在所述主节点中存储且所述从节点中未存储的数据操作命令作为目标操作命令,并将所述目标操作命令发送给所述从节点,其中,所述目标操作命令用于被所述从节点执行以实现所述主节点与所述从节点之间的数据同步。第四方面,本公开还提供一种数据同步装置,应用于从节点,包括:接收模块,用于接收主节点发送的目标操作命令,所述目标操作命令是在所述主节点中存储且所述从节点中未存储的数据操作命令,所述目标操作命令用于被所述从节点执行以实现所述主节点与所述从节点之间的数据同步;执行模块,用于执行所述目标操作命令。第五方面,本公开还提供一种主节点,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现第一方面中中任一项所述方法的步骤。第六方面,本公开还提供一种从节点,包括:存储器,其上存储有计算机程序;处理器,用于执行所述存储器中的所述计算机程序,以实现第二方面中任一所述方法的步骤。第七方面,本公开还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面和第二方面中任一项所述方法的步骤。第八方面,本公开还提供一种存储集群,包括一个第六方面所述的主节点和至少一个第七方面所述的从节点。通过上述技术方案,可以将主节点存储的数据操作命令与从节点存储的数据操作命令进行比对,然后将在主节点存储且从节点中未存储的数据操作命令作为目标操作命令,并将该目标操作命令发送给从节点,从而可以使得从节点根据该目标操作命令更新自身存储的数据,最终实现主节点与从节点之间的数据同步。相较于相关技术中全量数据同步的方式,本公开的数据同步方法通过向从节点发送目标操作命令的方式可以快速实现主节点与从节点之间的数据同步。本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。附图说明附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:图1是根据本公开一示例性实施例示出的一种集群架构示意图。图2是根据本公开一示例性实施例示出的一种数据同步方法的流程图;图3是根据本公开另一示例性实施例示出的一种数据同步方法的流程图;图4是根据本公开另一示例性实施例示出的一种数据同步方法的流程图;图5是根据本公开一示例性实施例示出的一种数据同步装置的框图;图6是根据本公开另一示例性实施例示出的一种数据同步装置的框图;图7是根据本公开一示例性实施例示出的一种主节点的框图;图8是根据本公开一示例性实施例示出的一种从节点的框图。具体实施方式以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。在应用系统中,由于业务量的快速增长,需要应用系统有较好的并发能力,所以,应用系统往往采用集群部署。集群中可以包括主节点和从属于该主节点的多个从节点。例如,集群的架构示意图可以如图1所示,该集群中可以包括多个主节点和多个从节点,其中从节点A、B、C从属于主节点1,从节点D、E、F从属于主节点2,从节点G、H、I从属于主节点3。并且,该集群可以通过包括多本文档来自技高网...

【技术保护点】
1.一种数据同步方法,其特征在于,应用于主节点,所述方法包括:将所述主节点存储的数据操作命令与从节点存储的数据操作命令进行比对;将在所述主节点中存储且所述从节点中未存储的数据操作命令作为目标操作命令,并将所述目标操作命令发送给所述从节点,其中,所述目标操作命令用于被所述从节点执行以实现所述主节点与所述从节点之间的数据同步。

【技术特征摘要】
1.一种数据同步方法,其特征在于,应用于主节点,所述方法包括:将所述主节点存储的数据操作命令与从节点存储的数据操作命令进行比对;将在所述主节点中存储且所述从节点中未存储的数据操作命令作为目标操作命令,并将所述目标操作命令发送给所述从节点,其中,所述目标操作命令用于被所述从节点执行以实现所述主节点与所述从节点之间的数据同步。2.根据权利要求1所述的方法,其特征在于,在将所述主节点存储的数据操作命令与从节点存储的数据操作命令进行比对之前,所述方法还包括:根据所述主节点的节点标识和所述从节点的节点标识,确定所述主节点和所述从节点属于同一数据分区。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:每接收到一新的数据操作命令,将该新的数据操作命令存储到命令存储区域,其中,各数据操作命令在所述命令存储区域中的存储地址连续;每在所述命令存储区域写入一新的数据操作命令,更新所述命令存储区域的最大命令偏移量,其中,所述最大命令偏移量用于表征已存储的数据操作命令在所述命令存储区域中的最大偏移地址。4.一种数据同步方法,其特征在于,应用于从节点,所述方法包括:接收主节点发送的目标操作命令,所述目标操作命令是在所述主节点中存储且所述从节点中未存储的数据操作命令,所述目标操作命令用于被所述从节点执行以实现所述主节点与所述从节点之间的数据同步;执行所述目标...

【专利技术属性】
技术研发人员:李栋
申请(专利权)人:东软集团股份有限公司
类型:发明
国别省市:辽宁,21

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

1