一种退服节点的数据备份方法及装置制造方法

文档序号:6629083阅读:177来源:国知局
一种退服节点的数据备份方法及装置制造方法
【专利摘要】本发明实施例公开了一种退服节点的数据备份方法及装置。一种退服节点的数据备份方法,应用于待退服从属节点,该方法包括:向主节点发送退服消息;接收主节点发送的通知消息;根据通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行合并,并将合并得到的数据发送给对应于该数据的备份目标节点,其中,通知消息中携带有备份目标节点的标识,备份目标节点为:主节点为待退服从属节点中需要制作副本的数据块分配的非待退服从属节点。应用上述技术方案,由于本发明中的待退服从属节点能够对本地的、需要制作副本的数据块进行合并,并将合并得到的数据一次性发送给备份目标节点,因此减少了网路连接次数,降低了网络开销。
【专利说明】一种退服节点的数据备份方法及装置

【技术领域】
[0001] 本发明涉及分布式存储【技术领域】,特别涉及一种退服节点的数据备份方法及装 置。

【背景技术】
[0002] 随着互联网行业信息化程度的不断提高,全球数据日益膨胀。面对当前PB数量级 的海量数据存储需求,传统的基于存储服务器存放所有数据的存储系统,在容量和性能的 扩展上存在瓶颈。分布式存储系统以其扩展性强、性价比高、容错性好等优势得到了业界的 广泛认同。
[0003] 分布式存储系统对故障或老旧从属节点进行退服时,需要利用复制的方式,对待 退服从属节点上的数据制作副本,并将制作的副本发送到该系统的非待退服从属节点上, 以满足系统对数据冗余度的要求。如Hadoop HDFS/MooseFS默认每个数据块需要有3个 副本,当退服datanode时,首先需要对该datanode中的数据制作3个副本,之后将制作的 副本发送到3个非待退服的datanode上;其中,分布式存储系统中的数据通常是以数据块 block为单位进行存储的。
[0004] 现有技术中,分布式存储系统中待退服从属节点是以单个数据块为复制单位,逐 个对本地中的数据块制作副本,并将制作的副本逐个发送到非待退服从属节点上。
[0005] 然而,当本地中存储有大量数据块时,待退服从属节点需要对每个数据块制作副 本,并将制作的大量副本逐个发送到非待退服从属节点上。每进行一次数据块的发送都需 要建立网络连接,发送多个数据块就需要建立多次网络连接,网络开销较大。


【发明内容】

[0006] 为了解决上述问题,本发明实施例公开了一种退服节点的数据备份方法及装置, 具体技术方案如下:
[0007] -种退服节点的数据备份方法,应用于分布式存储系统中的待退服从属节点,所 述分布式存储系统包括:一个主节点和若干从属节点,所述从属节点中包括至少一个待退 服从属节点,和至少一个非待退服从属节点,所述方法包括:
[0008] 向所述主节点发送退服消息;
[0009] 接收所述主节点发送的通知消息,其中,所述通知消息中携带有备份目标节点的 标识,所述备份目标节点为:所述主节点为待退服从属节点中需要制作副本的数据块分配 的非待退服从属节点;
[0010] 根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行合 并,并将合并得到的数据发送给对应于该数据的备份目标节点。
[0011] 可选的,所述通知消息还携带有压缩参数;
[0012] 所述根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进 行合并,并将合并得到的数据发送给对应于该数据的备份目标节点,包括:
[0013] 根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行整 合,对每组整合结果进一步压缩后,将压缩得到的数据发送给对应于该数据的备份目标节 点。
[0014] 可选的,所述方法还包括:
[0015] 向所述主节点发送反馈信息,所述反馈信息表示所述合并得到的数据是否成功发 送给对应该数据的备份目标节点。
[0016] 一种退服节点的数据备份方法,应用于分布式存储系统中的主节点,所述分布式 存储系统包括:一个主节点和若干从属节点,所述从属节点中包括至少一个待退服从属节 点,和至少一个非待退服从属节点,所述方法包括:
[0017] 接收待退服从属节点发送的退服消息;
[0018] 根据接收到的退服消息,确定所述待退服从属节点中需要制作副本的数据块;
[0019] 根据所确定的结果,为需要制作副本的每个数据块分配备份目标节点,其中,所述 备份目标节点为:系统中的非待退服从属节点;
[0020] 根据所述分配结果,生成携带有备份目标节点标识的通知消息;其中,所述通知消 息用于控制所述待退服从属节点,对存储于该待退服从属节点的、对应于同一备份目标节 点的数据块进行合并,并将合并得到的数据发送给对应于该数据的备份目标节点;
[0021] 将所生成的通知消息发送给所述待退服从属节点。
[0022] 可选的,所述通知消息还携带有压缩参数;
[0023] 所述通知消息用于控制所述待退服从属节点,对存储于该待退服从属节点的、对 应于同一备份目标节点的数据块进行整合,对每组整合结果进一步压缩后,将压缩得到的 数据发送给对应于该数据的备份目标节点。
[0024] -种退服节点的数据备份装置,应用于分布式存储系统中的待退服从属节点,所 述分布式存储系统包括:一个主节点和若干从属节点,所述从属节点中包括至少一个待退 服从属节点,和至少一个非待退服从属节点,所述装置包括:
[0025] 第一消息发送模块,用于向所述主节点发送退服消息;
[0026] 第一消息接收模块,用于接收所述主节点发送的通知消息,其中,所述通知消息中 携带有备份目标节点的标识,所述备份目标节点为:所述主节点为待退服从属节点中需要 制作副本的数据块分配的非待退服从属节点;
[0027] 数据发送模块,用于根据所述第一消息接收模块接收到的通知消息,对存储于本 地的、对应于同一备份目标节点的数据块进行合并,并将合并得到的数据发送给对应于该 数据的备份目标节点。
[0028] 可选的,所述通知消息还携带有压缩参数;
[0029] 所述数据发送模块,具体用于:
[0030] 根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行整 合,对每组整合结果进一步压缩后,将压缩得到的数据发送给对应于该数据的备份目标节 点。
[0031] 可选的,所述装置还包括:
[0032] 反馈信息发送模块,用于向所述主节点发送反馈信息,所述反馈信息表示所述数 据发送模块是否将合并得到的数据成功发送给对应该数据的备份目标节点。
[0033] -种退服节点的数据备份装置,应用于分布式存储系统中的主节点,所述分布式 存储系统包括:一个主节点和若干从属节点,所述从属节点中包括至少一个待退服从属节 点,和至少一个非待退服从属节点,所述装置包括:
[0034] 第二消息接收模块,用于接收待退服从属节点发送的退服消息;
[0035] 信息确定模块,根据所述第二消息接收模块接收到的退服消息,确定所述待退服 从属节点中需要制作副本的数据块;
[0036] 节点分配模块,用于根据所述信息确定模块确定的结果,为需要制作副本的每个 数据块分配备份目标节点,其中,所述备份目标节点为:系统中的非待退服从属节点;
[0037] 消息生成模块,用于根据所述节点分配模块的分配结果,生成携带有备份目标节 点标识的通知消息;其中,所述通知消息用于控制所述待退服从属节点,对存储于该待退服 从属节点的、对应于同一备份目标节点的数据块进行合并,并将合并得到的数据发送给对 应于该数据的备份目标节点;
[0038] 第二消息发送模块,用于将所述消息生成模块生成的通知消息发送给所述待退服 从属节点。
[0039] 可选的,所述通知消息还携带有压缩参数;
[0040] 所述通知消息用于控制所述待退服从属节点,对存储于该待退服从属节点的、对 应于同一备份目标节点的数据块进行整合,对每组整合结果进一步压缩后,将压缩得到的 数据发送给对应于该数据的备份目标节点。
[0041] 应用上述技术方案,本发明实施例提供的退服节点的数据备份方法及装置,能够 在接收到主节点发送的通知消息后,根据所述通知消息,将本地中对应于同一备份目标节 点的数据块进行合并,并将合并得到的数据发送给对应于该数据的备份目标节点,以完成 对本地中数据的备份,其中,所述通知消息中携带有备份目标节点的标识,所述备份目标节 点为:所述主节点为待退服从属节点中需要制作副本的数据块分配的非待退服从属节点。
[0042] 与现有技术相比,由于本发明中的待退服从属节点能够对本地的、需要制作副本 的数据块进行合并,并将合并得到的数据一次性发送给备份目标节点,因此减少了待退服 从属节点与备份目标节点之间的网路连接次数,降低了网络开销。

【专利附图】

【附图说明】
[0043] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0044] 图la为本发明实施例提供的一种退服节点的数据备份方法的流程图;
[0045] 图lb为简化的分布式存储系统的结构示意图;
[0046] 图2为本发明实施例提供的另一种退服节点的数据备份方法的流程图;
[0047] 图3为本发明实施例提供的另一种退服节点的数据备份方法的流程图;
[0048] 图4为本发明实施例提供的一种退服节点的数据备份装置的结构示意图;
[0049] 图5为本发明实施例提供的另一种退服节点的数据备份装置的结构示意图;
[0050] 图6为本发明实施例提供的另一种退服节点的数据备份装置的结构示意图。

【具体实施方式】
[0051] 为了使本领域技术人员更好地理解本发明中的技术方案,下面将结合本发明实施 例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例 仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通 技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范 围。
[0052] 分布式存储系统对故障或老旧从属节点进行退服时,需要利用复制的方式,对待 退服从属节点上的数据制作副本,并将制作的副本发送到该系统的非待退服从属节点上, 以满足系统对数据冗余度的要求。然而,由于以单个数据块为复制单位,逐个对本地中的数 据块制作副本,并将制作的副本逐个发送到非待退服从属节点上的数据备份方法,存在网 络开销较大和耗时较长的问题。因此,提出一种高效的退服节点的数据备份方法已成为本 领域技术人员亟待解决的问题。为此,本发明实施例提出了一种退服节点的数据备份方法 及装置。
[0053] 下面首先对本发明实施例提供的一种退服节点的数据备份方法进行介绍。
[0054] 需要说明的是,本发明实施例方法适用于分布式存储系统,在实际应用中,该分布 式存储系统可以为Hadoop HDFS、MooseFS等。
[0055] 如图la所示,本发明实施例提供的一种退服节点的数据备份方法,应用于分布式 存储系统中的待退服从属节点,所述分布式存储系统包括:一个主节点和若干从属节点,所 述从属节点中包括至少一个待退服从属节点,和至少一个非待退服从属节点,所述方法可 以包括:
[0056] S101,向所述主节点发送退服消息。
[0057] 为了方便理解,将分布式存储系统的结构简化为图lb所示,分布式存储系统为一 个master/slave架构的系统,该系统包括:一个主节点和多个从属节点,其中,主节点类 似master的身份,负责管理文件系统的名字空间以及客户端对文件元信息的访问,这里提 到的元信息可以包括:文件存储路径、复制因子,名称等信息以及修改日志;从属节点类似 slave的身份,负责存储和维护该系统中的文件数据。
[0058] 可以理解的是,故障或者服务时间较长等原因可能造成分布式存储系统中的某些 从属节点工作状态出现异常,此时,该分布式存储系统需要对出现故障或老旧从属节点进 行退服。
[0059] 在退出服务之前,待退服从属节点可以向处于同一分布式存储系统中的主节点发 送退服消息,告知主节点:该分布式存储系统中的某一从属节点即将退出服务,以使主节点 及时采取相应的策略对该系统进行调整,维持该系统正常的生产流程。
[0060] S102,接收所述主节点发送的通知消息,其中,所述通知消息中携带有备份目标节 点的标识,所述备份目标节点为:所述主节点为待退服从属节点中需要制作副本的数据块 分配的非待退服从属节点。
[0061] 可以理解的是,由于分布式存储系统的主节点中记录有:该系统中全部文件数据 的存储信息,因此,在接收到待退服从属节点发送的退服消息后,主节点能够根据接收到的 退服消息,确定该系统中即将退出服务的从属节点(即待退服从属节点),进一步的,确定 出该待退服从属节点中存储的文件数据。
[0062] 为满足分布式存储系统对数据冗余度的要求,及维持该系统后续的正常工作,需 要将该待退服从属节点中存储的文件数据备份到该系统中正常服务的从属节点(即非待 退服从属节点)上。
[0063] 具体的,在确定出该待退服从属节点中存储的文件数据后,主节点会为需要备份 的数据分配非退服从属节点;此外,由于文件数据是以数据块为单位存储在从属点上的,因 此,主节点会以数据块为单位,为每个数据块分配非待退服从属节点。具体的分配方式可以 为:存储能力强的非待退服从属节点分配较多的数据块,或存在关联关系的数据块可以分 配到同一待退服从属节点上,本发明实施例对此不作限定。
[0064] 为了便于理解及描述,下面将分配有数据块的非待退服从属节点简称为:备份目 标节点。
[0065] 在完成分配工作后,主节点能够生成携带有备份目标节点标识的通知消息,并将 该通知消息发送给待退服从属节点。
[0066] 本发明实施例中的待退服从属节点可以接收主节点发送的、携带有备份目标节点 标识的通知消息。
[0067] S103,根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进 行合并,并将合并得到的数据发送给对应于该数据的备份目标节点。
[0068] 具体的,在接收到主节点发送的通知消息后,本发明实施例中的待退服从属节点 能够根据接收到通知消息,确定出备份目标节点,进一步的将存储于本地的、对应于同一 备份目标节点的数据块进行整合,并将整合得到的数据发送给对应于该数据的备份目标节 点。整合得到的数据可以为一个完整的文件,该文件中包括多个数据块,每个数据块之间存 在用于区分每个数据块的元信息。
[0069] 比如待退服从属节点中存在5个需要备份的数据块,数据块1?3分配给非待退 服从属节点A,数据块4?5分配给非待退服从属节点B,该待退服从属节点可以将数据块 1?3整合成一个文件a,将数据块4?5整合成一个文件b ;整合操作完成后,将文件a发 送给非待退服从属节点A,将文件b发送给非待退服从属节点B。
[0070] 可选的,所述通知消息还携带有压缩参数;在接收到主节点发送的通知消息后,本 发明实施例中的待退服从属节点能够根据接收到通知消息,确定出备份目标节点,进一步 的将存储于本地的、对应于同一备份目标节点的数据块进行整合,对每组整合结果进一步 压缩后,将压缩得到的数据发送给对应于该数据的备份目标节点。本发明实施例通过对整 合得到的数据进行压缩,提高了数据传输的效率。
[0071] 比如比如待退服从属节点中存在5个需要备份的数据块,数据块1?3分配给非 待退服从属节点A,数据块4?5分配给非待退服从属节点B,该待退服从属节点可以将数 据块1?3整合成一个文件a,将数据块4?5整合成一个文件b ;整合操作完成后,进一步 对文件a、文件b进行压缩,分别得到文件aW,将文件a1发送给非待退服从属节点A,将文 件b 1发送给非待退服从属节点B。
[0072] 由此可见,本发明实施例提供的退服节点的数据备份方法,能够在接收到主节点 发送的通知消息后,根据所述通知消息,将本地中对应于同一备份目标节点的数据块进行 合并,并将合并得到的数据发送给对应于该数据的备份目标节点,以完成对本地中数据的 备份,其中,所述通知消息中携带有备份目标节点的标识,所述备份目标节点为:所述主节 点为待退服从属节点中需要制作副本的数据块分配的非待退服从属节点。
[0073] 与现有技术相比,由于本发明中的待退服从属节点能够对本地的、需要制作副本 的数据块进行合并,并将合并得到的数据一次性发送给备份目标节点,因此减少了待退服 从属节点与备份目标节点之间的网路连接次数,降低了网络开销。
[0074] 在本发明的另一个实施例中,如图2所示,还可以在图la所示方法的基础上增加 S104,下面对本发明实施例中增加的S104进行描述。
[0075] S104,向所述主节点发送反馈信息,所述反馈信息表示所述合并得到的数据是否 成功发送给对应该数据的备份目标节点。
[0076] 在将合并得到的数据发送给备份目标节点后,待退服从属节点还可以向主节点发 送反馈信息,用以告知主节点:本次数据发送是否成功;
[0077] 在本次发送失败的情况下,该主节点可以控制待退服从属节点再次向备份目标节 点发送合并得到的数据,提高了系统的反映能力。
[0078] 进一步的,在接收到待退服从属节点发送的数据,并成功对该数据进行备份后,备 份目标节点可以向主节点发送提示消息,以告知该主节点:数据已备份成功。
[0079] 相应于图la所示的、应用于分布式存储系统中待退服从属节点的退服节点的数 据备份方法,本发明实施例还提供了一种应用于分布式存储系统中主节点的退服节点的数 据备份方法。
[0080] 如图3所示,本发明实施例提供的一种退服节点的数据备份方法,应用于分布式 存储系统中的主节点,所述分布式存储系统包括:一个主节点和若干从属节点,所述从属节 点中包括至少一个待退服从属节点,和至少一个非待退服从属节点,所述方法可以包括:
[0081] S301,接收待退服从属节点发送的退服消息。
[0082] 在退出服务之前,待退服从属节点可以向处于同一分布式存储系统中的主节点发 送退服消息,告知主节点:该分布式存储系统中的某一从属节点即将退出服务,以使主节点 及时采取相应的策略对该系统进行调整,维持该系统正常的生产流程。
[0083] 本发明实施例中的主节点可以接收待退服从属节点发送的退服消息,并根据该通 知消息对该系统进行相应的调整。需要说明的是,本发明实施例中的待退服从属节点可以 是一个,或者多个。
[0084] S302,根据接收到的退服消息,确定所述待退服从属节点中需要制作副本的数据 块。
[0085] 可以理解的是,由于分布式存储系统的主节点中记录有:该系统中全部文件数据 的存储信息,因此,在接收到待退服从属节点发送的退服消息后,主节点能够根据接收到的 退服消息,确认该系统中即将退出服务的从属节点(即待退服从属节点),进一步的,确定 出该待退服从属节点中存储的文件数据。
[0086] 为满足分布式存储系统对数据冗余度的要求,及维持该系统后续的正常工作,此 夕卜,由于文件数据是以数据块为单位存储在从属点上的,因此,需要将该待退服从属节点中 存储的文件数据的数据块备份到该系统中正常服务的从属节点(即非待退服从属节点) 上。
[0087] S303,根据所确定的结果,为需要制作副本的每个数据块分配备份目标节点,其 中,所述备份目标节点为:系统中的非待退服从属节点。
[0088] 在确定出该待退服从属节点中存储的文件数据后,主节点会为需要备份的数据分 配非退服的从属节点;此外,由于文件数据是以数据块为单位存储在从属点上的,因此,主 节点会以数据块为单位,为每个数据块分配非待退服从属节点。具体的分配方式可以为:存 储能力强的非待退服从属节点分配较多的数据块,或存在关联关系的数据块可以分配到同 一待退服从属节点上,本发明实施例对此不作限定。
[0089] S304,根据所述分配结果,生成携带有备份目标节点标识的通知消息;其中,所述 通知消息用于控制所述待退服从属节点,对存储于该待退服从属节点的、对应于同一备份 目标节点的数据块进行合并,并将合并得到的数据发送给对应于该数据的备份目标节点。
[0090] S305,将所生成的通知消息发送给所述待退服从属节点。
[0091] 由此可见,本发明实施例提供的退服节点的数据备份方法,能够在接收到待退服 从属节点发送的退服消息后,确定所述待退服从属节点中需要制作副本的数据块,并为上 述数据块分配备份目标节点,进而生成包含上述备份目标节点标识的通知消息,并将上述 通知消息发送给待退服从属节点,其中,上述通知消息用于控制所述待退服从属节点,对存 储于该待退服从属节点的、对应于同一备份目标节点的数据块进行合并,并将合并得到的 数据发送给对应于该数据的备份目标节点。
[0092] 与现有技术相比,由于本发明中的待退服从属节点,能够接收并根据主节点发送 的通知消息,对本地的、需要制作副本的数据块进行合并,并将合并得到的数据一次性发送 给备份目标节点,因此减少了待退服从属节点与备份目标节点之间的网路连接次数,降低 了网络开销。
[0093] 可选的,在本发明的一个实施例中,所述通知消息还可以携带有压缩参数;
[0094] 所述通知消息用于控制所述待退服从属节点,对存储于该待退服从属节点的、对 应于同一备份目标节点的数据块进行整合,对每组整合结果进一步压缩后,将压缩得到的 数据发送给对应于该数据的备份目标节点。
[0095] 相应于图la所示的方法实施例,本发明实施例还提供了一种退服节点的数据备 份装置。
[0096] 如图4所示,本发明实施例提供的一种退服节点的数据备份装置,应用于分布式 存储系统中的待退服从属节点,所述分布式存储系统包括:一个主节点和若干从属节点,所 述从属节点中包括至少一个待退服从属节点,和至少一个非待退服从属节点,所述装置可 以包括:
[0097] 第一消息发送模块401,用于向所述主节点发送退服消息;
[0098] 第一消息接收模块402,用于接收所述主节点发送的通知消息,其中,所述通知消 息中携带有备份目标节点的标识,所述备份目标节点为:所述主节点为待退服从属节点中 需要制作副本的数据块分配的非待退服从属节点;
[0099] 数据发送模块403,用于根据所述第一消息接收模块402接收到的通知消息,对存 储于本地的、对应于同一备份目标节点的数据块进行合并,并将合并得到的数据发送给对 应于该数据的备份目标节点。
[0100] 由此可见,本发明实施例提供的退服节点的数据备份装置,能够在接收到主节点 发送的通知消息后,根据所述通知消息,将本地中对应于同一备份目标节点的数据块进行 合并,并将合并得到的数据发送给对应于该数据的备份目标节点,以完成对本地中数据的 备份,其中,所述通知消息中携带有备份目标节点的标识,所述备份目标节点为:所述主节 点为待退服从属节点中需要制作副本的数据块分配的非待退服从属节点。
[0101] 与现有技术相比,由于本发明中的待退服从属节点能够对本地的、需要制作副本 的数据块进行合并,并将合并得到的数据一次性发送给备份目标节点,因此减少了待退服 从属节点与备份目标节点之间的网路连接次数,降低了网络开销。
[0102] 可选的,在本发明的一个实施例中,所述通知消息还可以携带有压缩参数;
[0103] 所述数据发送模块403,可以具体用于:
[0104] 根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行整 合,对每组整合结果进一步压缩后,将压缩得到的数据发送给对应于该数据的备份目标节 点。
[0105] 可选的,在本发明的另一个实施例中,如图5所示,还可以在图4所示装置的基础 上增加反馈信息发送模块404,下面对本发明实施例中增加的反馈信息发送模块404进行 描述。
[0106] 反馈信息发送模块404,用于向所述主节点发送反馈信息,所述反馈信息表示所述 数据发送模块403是否将合并得到的数据成功发送给对应该数据的备份目标节点。
[0107] 相应于图3所示的方法实施例,本发明实施例还提供了一种退服节点的数据备份 装直。
[0108] 如图6所示,本发明实施例提供的一种退服节点的数据备份装置,应用于分布式 存储系统中的主节点,所述分布式存储系统包括:一个主节点和若干从属节点,所述从属节 点中包括至少一个待退服从属节点,和至少一个非待退服从属节点,所述装置可以包括:
[0109] 第二消息接收模块601,用于接收待退服从属节点发送的退服消息;
[0110] 信息确定模块602,根据所述第二消息接收模块601接收到的退服消息,确定所述 待退服从属节点中需要制作副本的数据块;
[0111] 节点分配模块603,用于根据所述信息确定模块602确定的结果,为需要制作副 本的每个数据块分配备份目标节点,其中,所述备份目标节点为:系统中的非待退服从属节 占.
[0112] 消息生成模块604,用于根据所述节点分配模块603的分配结果,生成携带有备份 目标节点标识的通知消息;其中,所述通知消息用于控制所述待退服从属节点,对存储于该 待退服从属节点的、对应于同一备份目标节点的数据块进行合并,并将合并得到的数据发 送给对应于该数据的备份目标节点;
[0113] 第二消息发送模块605,用于将所述消息生成模块604生成的通知消息发送给所 述待退服从属节点。
[0114] 由此可见,本发明实施例提供的退服节点的数据备份方法,能够在接收到待退服 从属节点发送的退服消息后,确定所述待退服从属节点中需要制作副本的数据块,并为上 述数据块分配备份目标节点,进而生成包含上述备份目标节点标识的通知消息,并将上述 通知消息发送给待退服从属节点,其中,上述通知消息用于控制所述待退服从属节点,对存 储于该待退服从属节点的、对应于同一备份目标节点的数据块进行合并,并将合并得到的 数据发送给对应于该数据的备份目标节点。
[0115] 与现有技术相比,由于本发明中的待退服从属节点,能够接收并根据主节点发送 的通知消息,对本地的、需要制作副本的数据块进行合并,并将合并得到的数据一次性发送 给备份目标节点,因此减少了待退服从属节点与备份目标节点之间的网路连接次数,降低 了网络开销。
[0116] 可选的,在本发明的一个实施例中,所述通知消息还可以携带有压缩参数;
[0117] 所述通知消息还可以用于控制所述待退服从属节点,对存储于该待退服从属节点 的、对应于同一备份目标节点的数据块进行整合,对每组整合结果进一步压缩后,将压缩得 到的数据发送给对应于该数据的备份目标节点。
[0118] 对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关 之处参见方法实施例的部分说明即可。
[0119] 为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本 发明时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
[0120] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实 体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存 在任何这种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体意在涵 盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要 素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备 所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除 在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0121] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部 分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实 施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例 的部分说明即可。
[0122] 本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可 以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中, 这里所称得的存储介质,如:R0M/RAM、磁碟、光盘等。
[0123] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在 本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围 内。
【权利要求】
1. 一种退服节点的数据备份方法,应用于分布式存储系统中的待退服从属节点,所述 分布式存储系统包括:一个主节点和若干从属节点,所述从属节点中包括至少一个待退服 从属节点,和至少一个非待退服从属节点,其特征在于,所述方法包括: 向所述主节点发送退服消息; 接收所述主节点发送的通知消息,其中,所述通知消息中携带有备份目标节点的标识, 所述备份目标节点为:所述主节点为待退服从属节点中需要制作副本的数据块分配的非待 退服从属节点; 根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行合并,并 将合并得到的数据发送给对应于该数据的备份目标节点。
2. 根据权利要求1所述的方法,其特征在于,所述通知消息还携带有压缩参数; 所述根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行合 并,并将合并得到的数据发送给对应于该数据的备份目标节点,包括: 根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行整合,对 每组整合结果进一步压缩后,将压缩得到的数据发送给对应于该数据的备份目标节点。
3. 根据权利要求1所述的方法,其特征在于,所述方法还包括: 向所述主节点发送反馈信息,所述反馈信息表示所述合并得到的数据是否成功发送给 对应该数据的备份目标节点。
4. 一种退服节点的数据备份方法,应用于分布式存储系统中的主节点,所述分布式存 储系统包括:一个主节点和若干从属节点,所述从属节点中包括至少一个待退服从属节点, 和至少一个非待退服从属节点,其特征在于,所述方法包括: 接收待退服从属节点发送的退服消息; 根据接收到的退服消息,确定所述待退服从属节点中需要制作副本的数据块; 根据所确定的结果,为需要制作副本的每个数据块分配备份目标节点,其中,所述备份 目标节点为:系统中的非待退服从属节点; 根据所述分配结果,生成携带有备份目标节点标识的通知消息;其中,所述通知消息用 于控制所述待退服从属节点,对存储于该待退服从属节点的、对应于同一备份目标节点的 数据块进行合并,并将合并得到的数据发送给对应于该数据的备份目标节点; 将所生成的通知消息发送给所述待退服从属节点。
5. 根据权利要求4所述的方法,其特征在于,所述通知消息还携带有压缩参数; 所述通知消息用于控制所述待退服从属节点,对存储于该待退服从属节点的、对应于 同一备份目标节点的数据块进行整合,对每组整合结果进一步压缩后,将压缩得到的数据 发送给对应于该数据的备份目标节点。
6. -种退服节点的数据备份装置,应用于分布式存储系统中的待退服从属节点,所述 分布式存储系统包括:一个主节点和若干从属节点,所述从属节点中包括至少一个待退服 从属节点,和至少一个非待退服从属节点,其特征在于,所述装置包括: 第一消息发送模块,用于向所述主节点发送退服消息; 第一消息接收模块,用于接收所述主节点发送的通知消息,其中,所述通知消息中携带 有备份目标节点的标识,所述备份目标节点为:所述主节点为待退服从属节点中需要制作 副本的数据块分配的非待退服从属节点; 数据发送模块,用于根据所述第一消息接收模块接收到的通知消息,对存储于本地的、 对应于同一备份目标节点的数据块进行合并,并将合并得到的数据发送给对应于该数据的 备份目标节点。
7. 根据权利要求6所述的装置,其特征在于,所述通知消息还携带有压缩参数; 所述数据发送模块,具体用于: 根据所述通知消息,对存储于本地的、对应于同一备份目标节点的数据块进行整合,对 每组整合结果进一步压缩后,将压缩得到的数据发送给对应于该数据的备份目标节点。
8. 根据权利要求6所述的装置,其特征在于,所述装置还包括: 反馈信息发送模块,用于向所述主节点发送反馈信息,所述反馈信息表示所述数据发 送模块是否将合并得到的数据成功发送给对应该数据的备份目标节点。
9. 一种退服节点的数据备份装置,应用于分布式存储系统中的主节点,所述分布式存 储系统包括:一个主节点和若干从属节点,所述从属节点中包括至少一个待退服从属节点, 和至少一个非待退服从属节点,其特征在于,所述装置包括: 第二消息接收模块,用于接收待退服从属节点发送的退服消息; 信息确定模块,根据所述第二消息接收模块接收到的退服消息,确定所述待退服从属 节点中需要制作副本的数据块; 节点分配模块,用于根据所述信息确定模块确定的结果,为需要制作副本的每个数据 块分配备份目标节点,其中,所述备份目标节点为:系统中的非待退服从属节点; 消息生成模块,用于根据所述节点分配模块的分配结果,生成携带有备份目标节点标 识的通知消息;其中,所述通知消息用于控制所述待退服从属节点,对存储于该待退服从属 节点的、对应于同一备份目标节点的数据块进行合并,并将合并得到的数据发送给对应于 该数据的备份目标节点; 第二消息发送模块,用于将所述消息生成模块生成的通知消息发送给所述待退服从属 节点。
10. 根据权利要求9所述的装置,其特征在于,所述通知消息还携带有压缩参数; 所述通知消息用于控制所述待退服从属节点,对存储于该待退服从属节点的、对应于 同一备份目标节点的数据块进行整合,对每组整合结果进一步压缩后,将压缩得到的数据 发送给对应于该数据的备份目标节点。
【文档编号】G06F11/14GK104216803SQ201410515483
【公开日】2014年12月17日 申请日期:2014年9月29日 优先权日:2014年9月29日
【发明者】郭嘉涛 申请人:北京奇艺世纪科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1