分布式系统的数据节点升级方法及装置的制造方法

文档序号:9846814阅读:691来源:国知局
分布式系统的数据节点升级方法及装置的制造方法
【技术领域】
[0001]本发明涉及计算机网络技术领域,具体涉及一种分布式系统的数据节点升级方法及装置。
【背景技术】
[0002]分布式存储就是将数据分散存储在多台独立的设备上。分布式系统为具有很多数据节点的集群系统,每个数据节点可以理解为一个数据存储服务器。在做数据存储时,将若干条数据存储到对应的数据节点中,这是分布式系统核心的概念。
[0003]在现有技术中,当需要对分布式系统的数据节点进行升级时,一般采用的方法是将数据节点关停,停止该数据节点对外的业务服务,也就是说将数据节点下线,在线下对数据节点进行升级,在数据节点升级完成后,再说将数据节点启动,也就是将数据节点上线,使升级后的数据节点对外提供业务服务,然而,在分布式系统的数据节点上一般备份有不同的主副本数据,数据节点在升级后需要重新启动,重新决策数据节点的主副本数据,该决策过程需要耗费很长时间,而且数据节点的启停,导致数据节点的业务服务延时或错误等,从而对分布式系统的业务服务造成影响。

【发明内容】

[0004]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的分布式系统的数据节点升级方法和相应的分布式系统的数据节点升级装置。
[0005]根据本发明的一个方面,提供了一种分布式系统的数据节点升级方法,在分布式系统中,针对一份数据,由多个数据节点分别用于备份该份数据的主副本数据和多个从副本数据,方法包括:
[0006]接收升级指令,从多个数据节点中选择待升级的第一数据节点;
[0007]将第一数据节点的业务负载转移给至少一个第二数据节点,第二数据节点备份有对应于第一数据节点中主副本数据的从副本数据;
[0008]对第一数据节点进行下线处理,以在线下完成对第一数据节点的升级。
[0009]根据本发明的另一方面,提供了一种分布式系统的数据节点升级装置,在分布式系统中,针对一份数据,由多个数据节点分别用于备份该份数据的主副本数据和多个从副本数据,装置包括:
[0010]选择模块,适于接收升级指令,从多个数据节点中选择待升级的第一数据节点;
[0011]转移模块,适于将第一数据节点的业务负载转移给至少一个第二数据节点,第二数据节点备份有对应于第一数据节点中主副本数据的从副本数据;
[0012]升级模块,适于对第一数据节点进行下线处理,以在线下完成对第一数据节点的升级。
[0013]根据本发明提供的方案,接收升级指令,从多个数据节点中选择待升级的第一数据节点;将第一数据节点的业务负载转移给至少一个第二数据节点,第二数据节点备份有对应于第一数据节点中主副本数据的从副本数据;对第一数据节点进行下线处理,以在线下完成对第一数据节点的升级,从而实现了分布式系统的平滑升级,避免了数据节点关停和启动对分布式系统的业务服务造成的影响。
[0014]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0015]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0016]图1示出了根据本发明一个实施例的分布式系统的数据节点升级方法的流程示意图;
[0017]图2示出了根据本发明另一个实施例的分布式系统的数据节点升级方法的流程示意图;
[0018]图3示出了根据本发明一个实施例的分布式系统的数据节点升级装置的功能框图;
[0019]图4示出了根据本发明另一个实施例的分布式系统的数据节点升级装置的功能框图。
【具体实施方式】
[0020]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0021]在分布式系统中,针对一份数据,由多个数据节点分别用于备份该份数据的主副本数据和多个从副本数据,也就是说将该份数据的主副本数据和多个从副本数据分别存储于多个不同的数据节点上。针对不同的数据,在分布式系统的每个数据节点上既可能存储有主副本数据也可能存储有从副本数据,一般情况下,由数据节点的主副本数据提供业务服务。
[0022]图1示出了根据本发明一个实施例的分布式系统的数据节点升级方法的流程示意图。如图1所示,该方法包括以下步骤:
[0023]步骤S100,接收升级指令,从多个数据节点中选择待升级的第一数据节点。
[0024]具体地,在接收到升级指令后,开始对分布式系统的数据节点进行升级,为了实现分布式系统的平滑升级,从分布式系统的多个数据节点中选择待升级的数据节点,具体地,可以从多个数据节点中随机选择待升级的数据节点,也可以根据多个数据节点的负载情况选择要进行升级的数据节点,作为待升级的第一数据节点,这里对如何选择待升级的第一数据节点选择不做具体限定。
[0025]步骤SlOl,将第一数据节点的业务负载转移给至少一个第二数据节点,第二数据节点备份有对应于第一数据节点中主副本数据的从副本数据。
[0026]在本发明实施例中,将第一数据节点的业务负载转移给至少一个第二数据节点,指由至少一个第二数据节点代替第一数据节点提供业务访问服务,将对第一数据节点的主副本数据的业务访问转移给至少一个第二数据节点的从副本数据。
[0027]在分布式系统中,第一数据节点可能存储有不同数据的主副本数据,因此,在进行业务负载转移时,需要将第一数据节点存储的所有主副本数据所提供的业务访问都转移给主副本数据的从副本数据。
[0028]针对一份数据,会有多个从副本数据,且多个从副本数据分别存储于不同的数据节点,因此,需要查找到备份有对应于第一数据节点的所有主副本数据的从副本数据的数据节点,从中选择承担第一数据节点的业务负载的至少一个第二数据节点。例如,针对一份数据,可以由3个数据节点用于备份该份数据的主副本数据和2个从副本数据,若第一数据节点备份有3份数据的主副本数据,则这3份数据的从副本数据至少备份于两个数据节点上,在进行业务负载转移时,一般是转移至一个从副本数据,因此,需要从至少两个数据节点中选择承担第一数据节点的业务负载的数据节点,作为至少一个第二数据节点。
[0029]这里将第一数据节点的业务负载转移给至少一个第二数据节点,能够实现继续提供第一数据节点相应的业务服务,而不会对分布式系统的业务服务造成影响,从而避免了数据节点启停造成业务服务超时。
[0030]步骤S102,对第一数据节点进行下线处理,以在线下完成对第一数据节点的升级。
[0031]在利用步骤SlOl将第一数据节点的业务负载转移给至少一个第二数据节点后,第一数据节点仅备份有数据的从副本数据,在上文提到了,业务服务一般是由主副本数据提供,也就说,第一数据节点与分布式系统的业务脱离,可以对第一数据节点进行下线处理,使第一数据节点下线,并在线下对第一数据节点进行升级。
[0032]根据本发明上述实施例提供的方法,接收升级指令,从多个数据节点中选择待升级的第一数据节点;将第一数据节点的业务负载转移给至少一个第二数据节点,第二数据节点备份有对应于第一数据节点中主副本数据的从副本数据;对第一数据节点进行下线处理,以在线下完成对第一数据节点的升级,从而实现了分布式系统的平滑升级,避免了数据节点关停和启动对分布式系统的业务服务造成的影响。
[0033]图2示出了根据本发明另一个实施例的分布式系统的数据节点升级方法的流程示意图。如图2所示,该方法包括以下步骤:
[0034]步骤S200,接收升级指令,对分布式系统的数据节点的业务负载进行分析,将业务负载压力最小的数据节点选择为待升级的第一数据节点。
[0035]在本发明实施例中,业务负载指对数据节点的主副本数据的访问量。在分布式系统中,每个数据节点对外提供的业务服务并不相同,有些数据节点的业务负载压力大,有些数据节点的业务负载压力小,在接收到升级指令后,对分布式系统的数据节点的业务负载进行分析,将业务负载压力最小的数据节点选择为待升级的第一数据节点。本发明是对分布式系统的全部数据节点进行升级,因此,待升级的第一数据节点是未升级的数据节点中的业务负载压力最小的数据节点,选择业务负载压力最小的数据节点,可以避免因数据节点升级,将业务服务转移给其他数据节点而给分布式系统造成影响。
[0036]步骤S201,根据第一数据节点的主副本数据标识,在分布式系统的数据节点中查找备份有对应于第一数据节点中主副本数据的从副本数据的数据节点。
[0037]在分布式系统中,一份数据,由多个数据节点分别用于备份该份数据的主副本数据和多个从副本数据,并且为主副本数据和从副本数据设置了相同的标识,以便于根据标识查找主副本数据或从副本数据,针对不同的数据,设置了不同的标识,从而可以准确查找到数据的主副本数据或
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1