一种集群数据处理方法、主节点、从节点和集群技术

技术编号:16431553 阅读:79 留言:0更新日期:2017-10-22 07:20
本发明专利技术提供了一种集群数据处理方法、主节点、从节点和集群,通过提供一种集群数据处理方法使得集群所有节点的数据可以以循环的方式不断获得更新,每个从节点均可以获取主节点和其它从节点的快照,并且能够独立对外提供查询服务,进而将集群的计算和查询压力分散到集群中所有节点;由于每个从节点均保留有主节点和其它从节点的快照,因此,即使主节点或其它节点出现宕机,每个节点仍然能够对外提供完整、正确的数据,从而显著增强整个集群的鲁棒性。

A cluster data processing method, master node, slave node and cluster

The invention provides a cluster data processing method, the host node and the slave node and cluster, the cluster provides a data processing method of the cluster data to all the nodes in a circular manner can be continually updated, each node can be obtained from the master node and other nodes from the snapshot, and can provide independent inquiry service then, to cluster all nodes in the cluster distributed computing and query pressure; because each node is retained from the master node and slave node other snapshots, therefore, even if the main node or the other node down machine, each node is still able to provide complete and accurate data externally, thereby significantly enhance the robustness of the entire cluster.

【技术实现步骤摘要】
一种集群数据处理方法、主节点、从节点和集群
本专利技术涉及分布式计算领域,尤其涉及一种集群数据处理方法、主节点、从节点和集群。
技术介绍
目前常用的集群中的数据的同步方式如图1所示,通常是集群中的其它节点将本地的数据发送至主节点,由主节点进行存储和合并计算,并统一对外提供查询功能,这种现有方案至少存储在下述三个问题:(1)从节点过多或数据量过大时,主节点处理压力会比较大;(2)只有主节点才有整个集群的完整数据,才能对外提供集群运行状态的查询,因此主节点查询压力也比较大;(3)主节点一旦出现宕机,新的主节点会丢失原有主节点的数据,出现数据不完整的情况。
技术实现思路
为了解决上述技术问题,本专利技术提出了一种集群数据处理方法、主节点、从节点和集群。本专利技术具体是以如下技术方案实现的:第一方面,一种集群数据处理方法,所述数据处理方法包括:主节点生成同步信息包,并将所述同步信息包发布至节点环中以使得所述同步信息包沿所述节点环到达下一个节点;所述节点环由一个主节点和不少于一个从节点构成,所述节点环包括所述集群中的全部节点;所述同步信息包在所述节点环中进行第一轮传递:每到达一个节点后,当前节点按照第一预设规则对自身本地的数据进行变更,并按照第二预设规则对同步信息包进行更新,将更新后的所述同步信息包重新发布至节点环上继续传递以使得所述同步信息包沿所述节点环到达下一个节点;以所述主节点获取所述同步信息包为起点,执行所述同步信息包在所述节点环中的第二轮传递:获取同步信息包的当前节点根据第三预设规则对自身本地的数据进行变更以及向所述当前节点的通信节点发布更新数据;根据第四预设规则对所述同步信息包中的内容进行删减,并将删减后的所述同步信息包发布至节点环上继续传递以使得所述同步信息包沿所述节点环到达下一个节点;当所述主节点再次获取所述同步信息包后,将所述同步信息包丢弃,返回执行所述主节点生成同步信息包的步骤。第二方面,一种主节点,所述主节点包括:同步信息包生成模块,用于生成同步信息包;同步信息包传递控制模块,用于将同步信息包发布节点环中以使得所述同步信息包沿所述节点环到达下一个节点;所述节点环由一个主节点和不少于一个从节点构成,所述节点环包括集群中的全部节点;数据处理模块,用于根据第三预设规则对自身本地的数据进行变更以及向所述主节点的通信节点发布更新数据;同步信息包变更模块,用于根据第四预设规则对所述同步信息包中的内容进行删减;同步信息包丢弃模块,用于在同步信息包经过第二轮传递后丢弃所述同步信息包。第三方面,一种从节点,所述节点包括:同步信息包获取模块,用于获取同步信息包;同步信息包传递控制模块,用于将同步信息包发布至节点环中以使得所述同步信息包沿所述节点环到达下一个节点;所述节点环由一个主节点和不少于一个从节点构成,所述节点环包括集群中的全部节点;本地数据更新模块,用于按照第一预设规则对自身本地的数据进行变更;同步信息包更新模块,用于按照第二预设规则对同步信息包进行更新;数据处理模块,用于根据第三预设规则对自身本地的数据进行变更以及向所述从节点的通信节点发布更新数据;同步信息包变更模块,用于根据第四预设规则对所述同步信息包中的内容进行删减。第四方面,一种集群,所述集群包括上述主节点和上述从节点。本专利技术提供了一种集群数据处理方法、主节点、从节点和集群,具有如下有益效果:本专利技术通过提供一种集群数据处理方法,使得集群所有节点的数据可以以循环的方式不断获得更新,每个从节点均可以获取主节点和其它从节点的快照,并且能够独立对外提供查询服务,进而将集群的计算和查询压力分散到集群中所有节点;由于每个从节点均保留有主节点和其它从节点的快照,因此,即使主节点或其它节点出现宕机,每个节点仍然能够对外提供完整、正确的数据,从而显著增强整个集群的鲁棒性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。图1是本专利技术
技术介绍
提供的数据的同步方式示意图;图2是本专利技术实施例提供的一种集群数据处理方法的应用环境图;图3是本专利技术实施例提供的一种集群数据处理方法流程图;图4是本专利技术实施例提供的主节点生成同步信息包的方法流程图;图5是本专利技术实施例提供的按照第一预设规则对自身本地的数据进行变更的方法流程图;图6是本专利技术实施例提供的按照第二预设规则对同步信息包进行更新的方法流程图;图7是本专利技术实施例提供的根据第三预设规则对自身本地的数据进行变更以及向当前节点的通信节点发布更新数据的方法流程图;图8是本专利技术实施例提供的根据第四预设规则对所述同步信息包中的内容进行删减的方法流程图;图9是本专利技术实施例提供的集群的完整的数据处理过程示意图;图10是本专利技术实施例提供的数据查询的方法流程图;图11是本专利技术实施例提供的主节点框图;图12是本专利技术实施例提供的同步信息包生成模块框;图13是本专利技术实施例提供的数据处理模块框图;图14是本专利技术实施例提供的同步信息包变更模块框图;图15是本专利技术实施例提供的从节点框图;图16是本专利技术实施例提供的本地数据更新模块框图;图17是本专利技术实施例提供的同步信息包更新模块框图;图18是本专利技术实施例提供的服务器结构示意图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。需要说明的是,本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。本专利技术实施例提供了一种集群数据处理方法的应用环境图,如图2所示,所述集群数据处理方法可以应用于由终端110和服务器集群120构成的分布式系统之中。服务器集群120包括一个主节点和至少一个从节点。终端110可以有多个,比如终端110(1)和终端110(2),每个终端构成一个客户节点,每个客户节点可以与所述服务器集群120中的任意一个节点通信,从而成为某个节点的通信节点。在上述应用环境下,本专利技术实施例提供一种集群数据处理方法,所述方法如图3所示,具体包括:S101.主节点生成同步信息包,并将所述同步信息包发布至节点环中以使得所述同步信息包沿所述节点环到达下一个节点。具体地,所述节点环由一个主节点和不少于一个从节点构成,所述节点环包括所述集群中的全部节点。S102.所述同步信息包在所述节点环中进行第一轮传递。具体地,同步信息本文档来自技高网
...
一种集群数据处理方法、主节点、从节点和集群

【技术保护点】
一种集群数据处理方法,其特征在于,所述数据处理方法包括:主节点生成同步信息包,并将所述同步信息包发布至节点环中以使得所述同步信息包沿所述节点环到达下一个节点;所述节点环由一个主节点和不少于一个从节点构成,所述节点环包括所述集群中的全部节点;所述同步信息包在所述节点环中进行第一轮传递:每到达一个节点后,当前节点按照第一预设规则对自身本地的数据进行变更,并按照第二预设规则对同步信息包进行更新,将更新后的所述同步信息包重新发布至节点环上继续传递以使得所述同步信息包沿所述节点环到达下一个节点;以所述主节点获取所述同步信息包为起点,执行所述同步信息包在所述节点环中的第二轮传递:获取同步信息包的当前节点根据第三预设规则对自身本地的数据进行变更以及向所述当前节点的通信节点发布更新数据;根据第四预设规则对所述同步信息包中的内容进行删减,并将删减后的所述同步信息包发布至节点环上继续传递以使得所述同步信息包沿所述节点环到达下一个节点;当所述主节点再次获取所述同步信息包后,将所述同步信息包丢弃,返回执行所述主节点生成同步信息包的步骤。

【技术特征摘要】
1.一种集群数据处理方法,其特征在于,所述数据处理方法包括:主节点生成同步信息包,并将所述同步信息包发布至节点环中以使得所述同步信息包沿所述节点环到达下一个节点;所述节点环由一个主节点和不少于一个从节点构成,所述节点环包括所述集群中的全部节点;所述同步信息包在所述节点环中进行第一轮传递:每到达一个节点后,当前节点按照第一预设规则对自身本地的数据进行变更,并按照第二预设规则对同步信息包进行更新,将更新后的所述同步信息包重新发布至节点环上继续传递以使得所述同步信息包沿所述节点环到达下一个节点;以所述主节点获取所述同步信息包为起点,执行所述同步信息包在所述节点环中的第二轮传递:获取同步信息包的当前节点根据第三预设规则对自身本地的数据进行变更以及向所述当前节点的通信节点发布更新数据;根据第四预设规则对所述同步信息包中的内容进行删减,并将删减后的所述同步信息包发布至节点环上继续传递以使得所述同步信息包沿所述节点环到达下一个节点;当所述主节点再次获取所述同步信息包后,将所述同步信息包丢弃,返回执行所述主节点生成同步信息包的步骤。2.根据权利要求1所述的方法,其特征在于,所述主节点生成同步信息包包括:获取主节点的节点数据;获取主节点的通信数据,所述主节点的通信数据为从主节点的通信节点处接收到的数据,所述主节点的通信节点为与主节点通信的客户节点;根据所述主节点的节点数据和通信数据生成同步信息包。3.根据权利要求2所述的方法,其特征在于:所述当前节点按照第一预设规则对自身本地的数据进行变更包括:提取所述同步信息包中的数据;根据所述同步信息包中的数据生成其它节点的节点数据的快照;将所述快照存储于自身本地;所述按照第二预设规则对同步信息包进行更新包括:获取当前节点的节点数据;获取当前节点的通信数据,所述当前节点的通信数据为从当前节点的通信节点处接收到的数据,所述当前节点的通信节点为与当前节点通信的客户节点;根据当前节点的节点数据和所述当前节点的通信数据对所述同步信息包进行更新。4.根据权利要求3所述的方法,其特征在于:所述当前节点根据第三预设规则对自身本地的数据进行变更以及向所述当前节点的通信节点发布更新数据包括:获取所述同步信息包中的数据;根据所述同步信息包中的数据生成其它节点的节点数据的快照;根据所述快照更新自身本地存储的快照;获取当前节点的节点数据和存储于当前节点自身本地的其它节点的节点数据的快照;根据获取到的内容生成更新数据;将所述更新数据发布至所述当前节点的通信节点;所述根据第四预设规则对所述同步信息包中的内容进行删减包括:删除所述同步信息包中当前节点的节点数据;删除所述同步信息包中当前节点的通信数据。5.根据权利要求1所述的方法,其特征在于,在所述当前节点按照第一预设规则对自身本地的数据进行变更之前,还包括删除当前节点自身本地存储的其它节点的节点数据的快照的步骤。6.根据权利要求1所述的方法,其特征在于,若集群中主节点被删除,根据预设的节点选择算法,在从节点中重新选择主节点。7.根据权利要求1所述的方法,其特征在于,若集群中添加新的从节点或删除旧的从节点,将引发节点环的动态更新以使得节点环始终包括集群中的全部节...

【专利技术属性】
技术研发人员:张晓春
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1