分布式文件存储系统的存储单元失效检测方法及装置制造方法

文档序号:7808822阅读:144来源:国知局
分布式文件存储系统的存储单元失效检测方法及装置制造方法
【专利摘要】本发明公开了一种分布式文件存储系统的存储单元失效检测方法,方法包括:依次获取各个节点的存储单元的运行标识;在存储单元的运行标识获取失败时,记录该存储单元为失效存储单元,并继续获取该存储单元所在节点的其它存储单元的运行标识,或者,依次获取其它节点的存储单元的运行标识。本发明还公开了一种分布式文件存储系统的存储单元失效检测装置。本发明分布式文件存储系统的存储单元失效检测方法和装置,通过依次获取各个节点中存储单元的运行标识,以确定失效存储单元并记录,可以有效的检测出分布式文件存储系统的节点中的失效存储单元,以供用户及时对失效的存储单元进行维护,保证了分布式文件存储系统的可靠性。
【专利说明】分布式文件存储系统的存储单元失效检测方法及装置

【技术领域】
[0001] 本发明涉及分布式文件系统失效检测领域,尤其涉及分布式文件存储系统的存储 单元失效检测方法及装置。

【背景技术】
[0002] 近年来,网络分布式存储已经成为存储技术发展的新趋势。分布式文件系统是构 建大规模的分布式存储系统必不可少的组成部分。由于数据是分布在不同存储节点的存储 单元上的,即使某几个存储单元失效不可用时,由于这些数据在其他节点的某些存储单元 上依然存在,所以访问节点依然可以正常访问数据,这就提供了数据的高可靠性。虽然数据 在其它存储单元上有备份存储,但是当失效的存储单元不断的累积增加时,可能会导致数 据的丢失,进而导致数据不能正常访问,分布式文件存储系统失效不可用。
[0003] 因此,亟需提供一种检测存储单元失效的方案,以及时发现分布式文件存储系统 中的失效存储单元,从而便于进行存储单元的及时更换,保证分布式文件存储系统的高可 靠性。


【发明内容】

[0004] 本发明的主要目的在于解决分布式文件存储系统不能检测失效存储单元的技术 问题。
[0005] 为实现上述目的,本发明提供的一种分布式文件存储系统的存储单元失效检测方 法,所述分布式文件存储系统的存储单元失效检测方法包括以下步骤:
[0006] 依次获取各个节点的存储单元的运行标识;
[0007] 在存储单元的运行标识获取失败时,记录该存储单元为失效存储单元,并继续获 取该存储单元所在节点的其它存储单元的运行标识,或者,依次获取其它节点的存储单元 的运行标识。
[0008] 优选地,所述在存储单元的运行标识获取失败时,记录该存储单元为失效存储单 元包括:
[0009] 在存储单元的运行标识获取失败时,重启该存储单元;
[0010] 在预设的第一时间间隔内,若存储单元重启失败,记录该存储单元为失效存储单 J Li 〇
[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] 图1为本发明分布式文件存储系统的存储单元失效检测方法第一实施例的流程 示意图;
[0041] 图2为本发明分布式文件存储系统的存储单元失效检测方法第二实施例的流程 示意图;
[0042] 图3为本发明分布式文件存储系统的存储单元失效检测方法第三实施例的流程 示意图;
[0043] 图4为本发明分布式文件存储系统的存储单元失效检测方法第四实施例的流程 示意图;
[0044] 图5为本发明分布式文件存储系统的存储单元失效检测方法第五实施例的流程 示意图;
[0045] 图6为本发明分布式文件存储系统的存储单元失效检测装置第一实施例的功能 丰旲块不意图;
[0046] 图7为本发明分布式文件存储系统的存储单元失效检测装置第二实施例的功能 丰旲块不意图;
[0047] 图8为本发明分布式文件存储系统的存储单元失效检测装置第三实施例的功能 丰旲块不意图;
[0048] 图9为本发明分布式文件存储系统的存储单元失效检测装置第四实施例的功能 丰旲块不意图;
[0049] 图10为本发明分布式文件存储系统的存储单元失效检测装置第五实施例的功能 模块示意图。
[0050] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

【具体实施方式】
[0051] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0052] 本发明提供一种分布式文件存储系统的存储单元失效检测方法(以下描述中简 称为存储单兀失效检测方法)。
[0053] 参照图1,图1为本发明分布式文件存储系统的存储单元失效检测方法第一实施 例的流程示意图。
[0054] 在第一实施例中,该存储单元失效检测方法包括:
[0055] 步骤S10,依次获取各个节点的存储单元的运行标识;
[0056] 分布式文件存储系统中每个节点包括多个存储单元,每个存储单元在运行时,有 唯一对应的运行标识(例如运行进程的进程号)。分布式文件存储系统运行时,各个节点工 作,节点中的存储单元运行工作,则在节点中能获取到该存储单元对应的运行标识;若节点 中某个存储单元不运行工作,则在节点中获取不到该存储单元对应的运行标识。通过依次 获取各个节点的存储单元的运行标识,来确定节点中运行工作的存储单元,以及不运行工 作的存储单元,即存在故障的存储单元。
[0057] 步骤S20,在存储单元的运行标识获取失败时,记录该存储单元为失效存储单元, 并继续获取该存储单元所在节点的其它存储单元的运行标识,或者,依次获取其它节点的 存储单元的运行标识。
[0058] 在有存储单元的运行标识获取失败时,即获取不到该存储单元的运行标识时,说 明该存储单元没有运行,存在故障而不能使用,将该存储单元记录为失效存储单元;并继续 获取该存储单元所在节点的其它存储单元的运行标识或其它节点的存储单元的运行标识。 在记录失效存储单元之后,可向维护终端(如服务器以及维修人员携带的终端等)发送维 护请求,提醒及时对失效存储单元进行维修或更换,以保证分布式文件存储系统的可靠性。
[0059] 本实施例提出的存储单元失效检测方法,通过依次获取各个节点中存储单元的运 行标识,以确定失效存储单元并记录,可以有效的检测出分布式文件存储系统的节点中的 失效存储单元,以供用户及时对失效的存储单元进行维护,保证了分布式文件存储系统的 可靠性。
[0060] 参照图2,图2为本发明分布式文件存储系统的存储单元失效检测方法第二实施 例的流程示意图。
[0061] 第二实施例的方案基于第一实施例的方案,在第二实施例中,该存储单元失效检 测方法的步骤S20中在存储单元的运行标识获取失败时,记录该存储单元为失效存储单元 包括:
[0062] 步骤S21,在存储单元的运行标识获取失败时,重启该存储单元;
[0063] 由于有些存储单元不能运行工作的故障问题,可通过重启解决,使其恢复正常运 行工作,因此在有存储单元的运行标识获取失败时,先重启该存储单元,以使部分存储单元 可以立即恢复正常运行,使分布式文件存储系统保持尽量多的存储单元运行工作,保证分 布式文件存储系统运行的最大可靠性,并减少了维护人员的维护工作量。
[0064] 步骤S22,在预设的第一时间间隔内,若存储单元重启失败,记录该存储单元为失 效存储单元。
[0065] 通常能够通过重启解决故障的存储单元能在规定时间(第一时间)内重启成功, 不能通过重启解决故障的存储单元不能在规定内重启成功。对故障的存储单元执行重启操 作的第一时间间隔后返回重启操作的结果,若返回的重启结果为重启失败(即该存储单元 在预设的第一时间间隔之内重启失败),则记录该存储单元为失效存储单元;若返回的重 启结果为重启成功(即该存储单元在预设的第一时间间隔之内重启成功),则该存储单元 恢复正常运行,此时能够获取到该存储单元的运行标识,进而判定该存储单元是有效的,则 继续依次获取该存储单元所在节点的其它存储单元的运行标识,或者,依次获取其它节点 的存储单元的运行标识。
[0066] 本实施例的存储单元失效检测方法,在存储单元的运行标识获取失败时,对存储 单元进行重启,以使可以通过重启解决故障问题的存储单元立即通过重启恢复正常运行, 将不能重启解决故障问题的存储度单元记录为失效存储单元,使分布式文件存储系统保持 尽量多的存储单元运行工作,保证分布式文件存储系统的可靠性,并减少维护人员的维护 工作量。
[0067] 参照图3,图3为本发明分布式文件存储系统的存储单元失效检测方法第三实施 例的流程示意图。
[0068] 第三实施例的方案基于第一实施例或第二实施例的方案,在第三实施例中,在步 骤S20之后,存储单元失效检测方法还包括:
[0069] 步骤S30,确定分布式文件存储系统中所述失效存储单元的数量;
[0070] 在分布式文件存储系统中各个节点的存储单元的运行标识依次获取完成并记录 出所有失效存储单元后,确定记录的失效存储单元的总数量。
[0071] 步骤S40,在分布式文件存储系统中所述失效存储单元的数量大于第一阈值时,确 定所述分布式文件存储系统失效。
[0072] 预设的第一阈值优选为分布式文件存储系统中所有可用的节点(即未失效的节 点)的存储单元的总数的一半。分布式文件存储系统中所述失效存储单元的数量超过第一 阈值时,则认为分布式文件存储系统的数据传输和访问容易出现异常(不能访问数据或访 问的数据不正确等等),分布式文件存储系统的数据的可靠性低,此时确定分布式文件存储 系统失效,停止运行。
[0073] 本实施例的存储单元失效检测方法,在分布式文件存储系统中的失效存储单元的 数量超过第一阈值时,将分布式文件存储系统确定为失效,停止分布式文件存储系统运行, 避免分布式文件存储系统继续运行造成数据丢失和访问数据异常。
[0074] 参照图4,图4为本发明分布式文件存储系统的存储单元失效检测方法第四实施 例的流程示意图。
[0075] 第四实施例的方案基于第一至第三实施例中任一实施例的方案,在第四实施例 中,在步骤S10之前,存储单元失效检测方法还包括:
[0076] 步骤S50,控制分布式文件存储系统中的节点之间相互发送检测数据包;
[0077] 在本实施例中,可控制各个节点之间互相发送检测数据包,以保证分布式文件存 储系统中各个节点之间运行状态的相互检测。
[0078] 步骤S60,依次将分布式文件存储系统中任一节点作为第二节点,其它节点作为第 一节点以确定第二节点的有效性;
[0079] 例如,在分布式文件存储系统中有A、B、C、D四个节点,将B节点作为第二节点,则 A、C、D三个节点均为第一节点,判断B节点是否有效,在判断B节点是否有效后,可按照预 设的顺序继续判断C节点是否有效,依次类推直至检测完所有的节点。
[0080] 步骤S70,确定在预设的第一时间间隔之内,未接收到响应数据包的第一节点的数 量,所述反馈数据包是所述第二节点基于第一节点发送的检测数据包而反馈的;
[0081] 在本实施例中,第二节点在接收到数据包时,对接收到的数据包进行解析以确定 接收到的数据包的类型,在接收到的数据包为检测数据包时,向所述第一节点反馈响应数 据包。由于存在通信链路故障的情况,则第一节点未接收到第二节点发送的反馈数据包括 多种情况:a、通信链路出现故障;b、第一节点出现故障并未发送检测数据包;c、第二节点 出现故障并未发送反馈数据包。
[0082] 在本实施例中,确定未接收到第二节点反馈的响应数据包的第一节点的数量的步 骤可通过以下方案实现:a、第一节点在预设的第一时间间隔内未接收到响应数据包时,记 录第二节点相对于第一节点为不可信节点,并记录第一节点的标识(如名称以及代码等), 则该记录的第一节点的标识的数量即为未接收到第二节点反馈的响应数据包的第一节点 的数量;b、第一节点在预设的第一时间间隔内未接收到响应数据包时,记录所述第二节点 为不可信节点。该记录不可信节点的步骤可通过多种方式实现,例如,建立可信节点数据库 以及不可信节点数据库,在将第二节点记录为不可信节点时,将其标识(如名称以及代码 等)添加至不可信节点数据库中;或者,在将第二节点记录为不可信节点时,给所述第二节 点添加不可信标识,并获取记录第二节点为不可信节点的次数,该记录第二节点为不可信 节点的次数即为未接收到第二节点反馈的响应数据包的第一节点的数量。
[0083] 步骤S80,在未接收到响应数据包的第一节点的数量大于预设的第二阀值时,记录 所述第二节点为失效节点,并将所述第二节点屏蔽。
[0084] 失效节点已经不能使用,对失效节点中的存储单元失效检测已经没有意义,而且 节点中存储单元的数量较多,为了提高了存储单元失效检测方法的效率,因此本实施例将 检测到的失效节点进行屏蔽,使得不获取失效节点的存储单元的运行标识,避免无意义的 检测。第二阀值可由用户进行设定,优选方案为第一节点的数量的一半,以保证在大部分第 一节点未接收到第二节点反馈的响应数据包时,记录第二节点为失效节点,并将失效节点 屏蔽。
[0085] 本实施例提出的储存单元失效检测方法,在依次获取各个节点的存储单元的运行 标识之前,先检测出分布式文件存储系统中的失效节点并将失效节点屏蔽掉,不获取失效 节点的存储单元的运行标识,即不对失效节点进行存储单元失效检测,大幅提高了存储单 兀失效检测的效率。
[0086] 参照图5,图5为本发明分布式文件存储系统的存储单元失效检测方法第五实施 例的流程示意图。
[0087] 第五实施例基于第四实施例的方案,在第五实施例中,在步骤S80之后并在步骤 S10之前,存储单元失效检测方法还包括:
[0088] 步骤S90,确定分布式文件存储系统中所述失效节点的数量;
[0089] 步骤S100,在分布式文件存储系统中所述失效节点的数量小于预设的第三阈值 时,确定所述分布式文件存储系统有效。
[0090] 在本实施例中,预设的第三阀值优选为分布式文件存储系统中节点数量的一半, 在分布式文件存储系统中节点大部分不可用(即存在大部分失效节点)时,则认为该分布 式文件存储系统已不可进行数据传输,确定该分布式文件存储系统失效,此时分布式文件 存储系统已经不可用,再对分布式文件存储系统的存储单元的失效检测已经没有了意义。 在分布式文件存储系统中失效节点的数量小于第三阈值时,分布式文件存储系统才确定为 有效,此时对分布式文件存储系统的存储单元的失效检测才有意义。在记录失效节点以及 确定该分布式文件存储系统失效之后,可向维护终端(如服务器以及维修人员携带的终端 等)发送维护请求,要保证失效节点和分布式文件存储系统及时恢复正常。
[0091] 本实施例的存储单元失效检测方法,在依次获取各个节点的存储单元的运行标识 之前,先确定分布式文件存储系统是否可用,在分布式文件存储系统可用时才对分布式文 件存储系统的节点的存储单元进行失效检测,避免了在分布式文件存储系统已经失效时, 对分布式文件存储系统做无意义的存储单元失效检测。
[0092] 本发明还提供一种分布式文件存储系统的存储单元失效检测装置(以下描述中 简称为存储单元失效检测装置)。
[0093] 参照图6,图6为本发明分布式文件存储系统的存储单元失效检测装置第一实施 例的功能模块示意图。
[0094] 在第一实施例中,所述存储单元失效检测装置包括:
[0095] 获取模块10,用于依次获取各个节点的存储单元的运行标识,以及用于在存储单 元的运行标识获取失败时,继续获取该存储单元所在节点的其它存储单元的运行标识,或 者,依次获取其它节点的存储单元的运行标识;
[0096] 分布式文件存储系统中每个节点包括多个存储单元,每个存储单元在运行时,有 唯一对应的运行标识(例如运行进程的进程号)。分布式文件存储系统运行时,各个节点工 作,节点中的存储单元运行工作,则在节点中能获取到该存储单元对应的运行标识;若节点 中某个存储单元不运行工作,则在节点中获取不到该存储单元对应的运行标识。通过获取 模块10依次获取各个节点的存储单元的运行标识,来确定节点中运行工作的存储单元,以 及不运行工作的存储单元,即存在故障的存储单元。
[0097] 记录模块20,用于在存储单元的运行标识获取失败时,记录该存储单元为失效存 储单元。
[0098] 在获取模块10获取存储单元的运行标识失败时,即获取模块10获取不到该存储 单元的运行标识时,说明该存储单元没有运行,存在故障而不能使用,则记录模块20将该 存储单元记录为失效存储单元;并且获取模块10继续获取该存储单元所在节点的其它存 储单元的运行标识或其它节点的存储单元的运行标识。在记录模块20记录失效存储单元 之后,可向维护终端(如服务器以及维修人员携带的终端等)发送维护请求,提醒及时对失 效存储单元进行维修或更换,以保证分布式文件存储系统的可靠性。
[0099] 本实施例提出的存储单元失效检测装置,通过获取模块10依次获取各个节点中 存储单元的运行标识,以确定失效存储单元并通过记录模块20进行记录,可以有效的检测 出分布式文件存储系统的节点中的失效存储单元,以供用户及时对失效的存储单元进行维 护,保证了分布式文件存储系统的可靠性。
[0100] 参照图7,图7为本发明分布式文件存储系统的存储单元失效检测装置第二实施 例的功能模块示意图。
[0101] 第二实施例的方案基于第一实施例的方案,在第二实施例中,所述存储单元失效 检测装置的记录模块20包括:
[0102] 重启单元21,用于在存储单元的运行标识获取失败时,重启该存储单元;
[0103] 由于有些存储单元不能运行工作的故障问题,可通过重启解决,使其恢复正常运 行工作,因此在获取模块10获取存储单元的运行标识失败时,重启单元21重启该存储单 元,以使有些存储单元可以立即恢复正常运行,使分布式文件存储系统保持尽量多的存储 单元运行工作,保证分布式文件存储系统运行的最大可靠性,并减少了维护人员的维护工 作量。
[0104] 记录单元22,用于在预设的第一时间间隔内,若存储单元重启失败,记录该存储单 元为失效存储单元。
[0105] 通常能够通过重启单元21重启解决故障的存储单元能在规定时间(第一时间) 内重启成功,不能通过重启单元21重启解决故障的存储单元不能在规定内重启成功。对故 障的存储单元执行重启操作的第一时间间隔后返回重启操作的结果,若返回的重启结果为 重启失败(即该存储单元在预设的第一时间间隔之内重启失败),则记录单元22记录该存 储单元为失效存储单元;若返回的重启结果为重启成功(即该存储单元在预设的第一时间 间隔之内重启成功),则该存储单元恢复正常运行,此时获取模块10能够获取到该存储单 元的运行标识,进而判定该存储单元是有效的,则获取模块10继续获取该存储单元所在节 点的其它存储单元的运行标识,或者,依次获取其它节点的存储单元的运行标识。
[0106] 本实施例的存储单元失效检测装置,在存储单元的运行标识获取失败时,重启单 元21对存储单元进行重启,以使可以通过重启解决故障问题的存储单元立即通过重启恢 复正常运行,记录单元22将不能重启解决故障问题的存储度单元记录为失效存储单元,使 分布式文件存储系统保持尽量多的存储单元运行工作,保证分布式文件存储系统的可靠 性,并减少维护人员的维护工作量。
[0107] 参照图8,图8为本发明分布式文件存储系统的存储单元失效检测装置第三实施 例的功能模块示意图。
[0108] 第三实施例的方案基于第一或第二实施例的方案,在第三实施例中,所述存储单 元失效检测装置还包括:
[0109] 第一确定模块30,用于获取分布式文件存储系统中所述失效存储单元的数量;
[0110] 在分布式文件存储系统中获取模块10依次获取完成各个节点的存储单元的运行 标识,且记录模块20记录出所有失效储单元后,第一确定模块30确定记录的失效存储单元 的总数量。
[0111] 第二确定模块40,用于在分布式文件存储系统中所述失效存储单元的数量大于第 一阈值时,确定所述分布式文件存储系统失效。
[0112] 预设的第一阈值优选为分布式文件存储系统中所有可用的节点(即未失效的节 点)的存储单元的总数的一半。第二确定模块40在分布式文件存储系统中所述失效存储 单元的数量超过第一阈值时,则认为分布式文件存储系统的数据传输和访问容易出现异常 (不能访问数据或访问的数据不正确等等),分布式文件存储系统的数据的可靠性低,此时 确定分布式文件存储系统失效,停止运行。
[0113] 参照图9,图9为本发明分布式文件存储系统的存储单元失效检测装置第四实施 例的功能模块示意图。
[0114] 第四实施例的方案基于第一至第三实施例中任一实施例的方案,在第四实施例 中,所述存储单元失效检测装置还包括:
[0115] 控制模块50,用于控制分布式文件存储系统中的节点之间相互发送检测数据包;
[0116] 在本实施例中,控制模块50可控制各个节点之间互相发送检测数据包,以保证分 布式文件存储系统中各个节点之间运行状态的相互检测。
[0117] 节点有效性检测模块60,用于依次将分布式文件存储系统中任一节点作为第二节 点,其它节点作为第一节点以确定第二节点的有效性;
[0118] 例如,在分布式文件存储系统中有A、B、C、D四个节点,节点有效性检测模块60将 B节点作为第二节点,则A、C、D三个节点均为第一节点,判断B节点是否有效,在判断B节 点是否有效后,节点有效性检测模块60可按照预设的顺序继续判断C节点是否有效,依次 类推直至检测完所有的节点。
[0119] 第三确定模块70,用于在预设的第一时间间隔之内,确定未接收到响应数据包的 第一节点的数量,所述反馈数据包是所述第二节点基于所述第一节点发送的检测数据包而 反馈的;
[0120] 在本实施例中,第二节点在接收到数据包时,对接收到的数据包进行解析以确定 接收到的数据包的类型,在接收到的数据包为检测数据包时,向所述第一节点反馈响应数 据包。由于存在通信链路故障的情况,则第一节点未接收到第二节点发送的反馈数据包括 多种情况:a、通信链路出现故障;b、第一节点出现故障并未发送检测数据包;c、第二节点 出现故障并未发送反馈数据包。
[0121] 在本实施例中,第三确定模块70确定未接收到第二节点反馈的响应数据包的第 一节点的数量的步骤可通过以下方案实现:a、第一节点在预设的第一时间间隔内未接收到 响应数据包时,记录第二节点相对于第一节点为不可信节点,并记录第一节点的标识(如 名称以及代码等),则该记录的第一节点的标识的数量即为未接收到第二节点反馈的响应 数据包的第一节点的数量;b、第一节点在预设的第一时间间隔内未接收到响应数据包时, 记录所述第二节点为不可信节点。该记录不可信节点的步骤可通过多种方式实现,例如,建 立可信节点数据库以及不可信节点数据库,在将第二节点记录为不可信节点时,将其标识 (如名称以及代码等)添加至不可信节点数据库中;或者,在将第二节点记录为不可信节点 时,给所述第二节点添加不可信标识,并获取记录第二节点为不可信节点的次数,该记录第 二节点为不可信节点的次数即为未接收到第二节点反馈的响应数据包的第一节点的数量。
[0122] 屏蔽模块80,用于在未接收到响应数据包的第一节点的数量大于预设的第二阀值 时,记录所述第二节点为失效节点,并将所述第二节点屏蔽。
[0123] 失效节点已经不能使用,对失效节点中的存储单元失效检测已经没有意义,而且 节点中存储单元的数量较多,为了提高了存储单元失效检测方法的效率,因此屏蔽模块80 将检测到的失效节点进行屏蔽,使得不获取失效节点的存储单元的运行标识,避免无意义 的检测。第二阀值可由用户进行设定,优选方案为第一节点的数量的一半,以保证在大部分 第一节点未接收到第二节点反馈的响应数据包时,屏蔽模块80记录第二节点为失效节点, 并将失效节点屏蔽。
[0124] 本实施例提出的储存单元失效检测装置,在获取模块10依次获取各个节点的存 储单元的运行标识之前,先检测出分布式文件存储系统中的失效节点并通过屏蔽模块80 将失效节点屏蔽掉,不获取失效节点的存储单元的运行标识,即不对失效节点进行存储单 元失效检测,大幅提高了存储单元失效检测的效率。
[0125] 参照图10,图10为本发明分布式文件存储系统的存储单元失效检测装置第五实 施例的功能模块示意图。
[0126] 第五实施例的方案基于第四实施例的方案,在第五实施例中,所述存储单元失效 检测装置还包括:
[0127] 第四确定模块90,用于确定分布式文件存储系统中所述失效节点的数量;
[0128] 第五确定模块100,用于在分布式文件存储系统中所述失效节点的数量小于预设 的第三阈值时,确定所述分布式文件存储系统有效。
[0129] 在本实施例中,预设的第三阀值优选为分布式文件存储系统中节点数量的一半, 在分布式文件存储系统中节点大部分不可用(即存在大部分失效节点)时,则第五确定 模块1〇〇认为该分布式文件存储系统已不可进行数据传输,确定该分布式文件存储系统失 效,此时分布式文件存储系统已经不可用,再对分布式文件存储系统的存储单元的失效检 测已经没有了意义。在分布式文件存储系统中失效节点的数量小于第三阈值时,第五确定 模块100才确定分布式文件存储系统有效,此时对分布式文件存储系统的存储单元的失效 检测才有意义。在记录失效节点以及确定该分布式文件存储系统失效之后,可向维护终端 (如服务器以及维修人员携带的终端等)发送维护请求,要保证失效节点和分布式文件存 储系统及时恢复正常。
[0130] 本实施例的存储单元失效检测装置,在获取模块10依次获取各个节点的存储单 元的运行标识之前,先通过第五确定模块100确定分布式文件存储系统是否可用,在分布 式文件存储系统确定可用时才对分布式文件存储系统的节点的存储单元进行失效检测,避 免了在分布式文件存储系统已经失效时,对分布式文件存储系统做无意义的存储单元失效 检测。
[0131] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发 明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技 术领域,均同理包括在本发明的专利保护范围内。
【权利要求】
1. 一种分布式文件存储系统的存储单元失效检测方法,其特征在于,所述分布式文件 存储系统的存储单元失效检测方法包括以下步骤: 依次获取各个节点的存储单元的运行标识; 在存储单元的运行标识获取失败时,记录该存储单元为失效存储单元,并继续获取该 存储单元所在节点的其它存储单元的运行标识,或者,依次获取其它节点的存储单元的运 行标识。
2. 如权利要求1所述的分布式文件存储系统的存储单元失效检测方法,其特征在于, 所述在存储单元的运行标识获取失败时,记录该存储单元为失效存储单元包括: 在存储单元的运行标识获取失败时,重启该存储单元; 在预设的第一时间间隔内,若存储单元重启失败,记录该存储单元为失效存储单元。
3. 如权利要求1所述的分布式文件存储系统的存储单元失效检测方法,其特征在于, 所述在存储单元的运行标识获取失败时,记录该存储单元为失效存储单元,并继续依次获 取该节点中其它存储单元的运行标识,或者,依次获取其它节点的存储单元的运行标识的 步骤之后,所述分布式文件存储系统的存储单元失效检测方法还包括: 确定分布式文件存储系统中所述失效存储单元的数量; 在分布式文件存储系统中所述失效存储单元的数量大于第一阈值时,确定所述分布式 文件存储系统失效。
4. 如权利要求1-3中任一项所述的分布式文件存储系统的存储单元失效检测方法,其 特征在于,所述依次获取各个节点的存储单元的运行标识的步骤之前,所述分布式文件存 储系统的存储单元失效检测方法还包括: 控制分布式文件存储系统中的节点之间相互发送检测数据包; 依次将分布式文件存储系统中任一节点作为第二节点,其它节点作为第一节点以确定 第二节点的有效性; 在预设的第一时间间隔之内,确定未接收到响应数据包的第一节点的数量,所述反馈 数据包是所述第二节点基于所述第一节点发送的检测数据包而反馈的; 在未接收到响应数据包的第一节点的数量大于预设的第二阀值时,记录所述第二节点 为失效节点,并将所述第二节点屏蔽。
5. 如权利要求4所述的分布式文件存储系统的存储单元失效检测方法,其特征在于, 所述在未接收到响应数据包的第一节点的数量大于预设的第二阀值时,记录所述第二节点 为失效节点,并将所述第二节点屏蔽的步骤之后,所述分布式文件存储系统的存储单元失 效检测方法还包括: 确定分布式文件存储系统中所述失效节点的数量; 在分布式文件存储系统中所述失效节点的数量小于预设的第三阈值时,确定所述分布 式文件存储系统有效。
6. -种分布式文件存储系统的存储单元失效检测装置,其特征在于,所述分布式文件 存储系统的存储单元失效检测装置包括: 获取模块,用于依次获取各个节点的存储单元的运行标识,以及用于在存储单元的运 行标识获取失败时,继续获取该存储单元所在节点的其它存储单元的运行标识,或者,依次 获取其它节点的存储单元的运行标识; 记录模块,用于在存储单元的运行标识获取失败时,记录该存储单元为失效存储单元。
7. 如权利要求6所述的分布式文件存储系统的存储单元失效检测装置,其特征在于, 所述记录模块包括: 重启单元,用于在存储单元的运行标识获取失败时,重启该存储单元; 记录单元,用于在预设的第一时间间隔内,若存储单元重启失败,记录该存储单元为失 效存储单元。
8. 如权利要求6所述的分布式文件存储系统的存储单元失效检测装置,其特征在于, 所述分布式文件存储系统的存储单元失效检测装置还包括: 第一确定模块,用于获取分布式文件存储系统中所述失效存储单元的数量; 第二确定模块,用于在分布式文件存储系统中所述失效存储单元的数量大于第一阈值 时,确定所述分布式文件存储系统失效。
9. 如权利要求6-8中任一项所述的分布式文件存储系统的存储单元失效检测装置,其 特征在于,所述分布式文件存储系统的存储单元失效检测装置还包括: 控制模块,用于控制分布式文件存储系统中的节点之间相互发送检测数据包; 节点有效性检测模块,用于依次将分布式文件存储系统中任一节点作为第二节点,其 它节点作为第一节点以确定第二节点的有效性; 第三确定模块,用于在预设的第一时间间隔之内,确定未接收到响应数据包的第一节 点的数量,所述反馈数据包是所述第二节点基于所述第一节点发送的检测数据包而反馈 的; 屏蔽模块,用于在未接收到响应数据包的第一节点的数量大于预设的第二阀值时,记 录所述第二节点为失效节点,并将所述第二节点屏蔽。
10. 如权利要求9所述的分布式文件存储系统的存储单元失效检测装置,其特征在于, 所述分布式文件存储系统的存储单元失效检测装置还包括: 第四确定模块,用于确定分布式文件存储系统中所述失效节点的数量; 第五确定模块,用于在分布式文件存储系统中所述失效节点的数量小于预设的第三阈 值时,确定所述分布式文件存储系统有效。
【文档编号】H04L12/24GK104158843SQ201410333913
【公开日】2014年11月19日 申请日期:2014年7月14日 优先权日:2014年7月14日
【发明者】李璐 申请人:深圳市中博科创信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1