节点数据修复方法、装置及分布式存储系统、设备和介质与流程

文档序号:37444810发布日期:2024-03-28 18:27阅读:17来源:国知局
节点数据修复方法、装置及分布式存储系统、设备和介质与流程

本申请涉及数据存储,特别是涉及一种节点数据修复方法、装置及分布式存储系统、设备和介质。


背景技术:

1、纠删码技术是一种能够增强存储系统可靠性的方法,相较于多副本技术,纠删码技术能够在保证相同容错能力的情况下,降低存储开销和更新代价,大幅提升空间利用率。

2、对于利用纠删码技术所存储的数据,目前主要使用基于异或(exclusive or,xor)类纠删码的译码方法(即使用相同类型的奇偶校验码链)或基于混合重构思想的译码方法(即使用不同类型的奇偶校验码链),对存储集群中故障节点所存储的数据进行修复。但目前的节点数据修复方法所需的数据读取量仍然较高,以致对故障节点(尤其是单故障节点)进行修复时会造成较大的数据传输量而占用较多的网络带宽资源,进而影响系统稳定性。


技术实现思路

1、鉴于上述问题,本申请实施例提供了一种节点数据修复方法、装置及分布式存储系统、设备和介质,以便克服上述问题或者至少部分地解决上述问题。

2、本申请实施例的第一方面,提供了一种节点数据修复方法,应用于存储集群,所述存储集群包括原始数据节点和校验节点,所述方法包括:

3、确定所述存储集群中的故障节点;

4、根据所述存储集群中各节点所存储的数据之间的冗余关系,确定修复所述故障节点所需的最少数据读取量的节点组合;

5、根据所述所需的最少数据读取量的节点组合,对所述故障节点所存储的数据进行修复;

6、其中,所述校验节点包括至少一个第一局部校验节点、第二局部校验节点、第一全局校验节点和第二全局校验节点;所述原始数据节点中的部分节点所存储的数据与所述至少一个第一局部校验节点所存储的数据存在冗余关系;所述原始数据节点中的所有节点所存储的数据与所述第一全局校验节点所存储的数据存在冗余关系;所述第二全局校验节点所存储的数据与所述原始数据节点中的所有节点所存储的数据和所述第一全局校验节点所存储的数据存在冗余关系;所述第二局部校验节点所存储的数据与所述第一全局校验节点所存储的数据和所述第二全局校验节点所存储的数据存在冗余关系。

7、本申请实施例的第二方面,提供了一种分布式存储系统,所述分布式存储系统包括服务器和存储集群,所述存储集群包括原始数据节点和校验节点,所述服务器配置有插件库,所述插件库包括用于实现不同节点数据修复方法的不同插件,所述不同插件至少包括用于实现如第一方面所述的节点数据修复方法的插件;其中:

8、所述服务器,用于在检测出所述存储集群中的故障节点的情况下,从所述插件库中选择并调用插件,对所述故障节点所存储的数据进行修复;

9、其中,所述校验节点包括至少一个第一局部校验节点、第二局部校验节点、第一全局校验节点和第二全局校验节点;所述原始数据节点中的部分节点所存储的数据与所述至少一个第一局部校验节点所存储的数据存在冗余关系;所述原始数据节点中的所有节点所存储的数据与所述第一全局校验节点所存储的数据存在冗余关系;所述第二全局校验节点所存储的数据与所述原始数据节点中的所有节点所存储的数据和所述第一全局校验节点所存储的数据存在冗余关系;所述第二局部校验节点所存储的数据与所述第一全局校验节点所存储的数据和所述第二全局校验节点所存储的数据存在冗余关系。

10、本申请实施例的第三方面,提供了一种节点数据修复装置,应用于存储集群,所述存储集群包括原始数据节点和校验节点,所述装置包括:

11、第一处理模块,用于确定所述存储集群中的故障节点;

12、第二处理模块,用于根据所述存储集群中各节点所存储的数据之间的冗余关系,确定修复所述故障节点所需的最少数据读取量的节点组合;

13、第一修复模块,用于根据所述所需的最少数据读取量的节点组合,对所述故障节点所存储的数据进行修复;

14、其中,所述校验节点包括至少一个第一局部校验节点、第二局部校验节点、第一全局校验节点和第二全局校验节点;所述原始数据节点中的部分节点所存储的数据与所述至少一个第一局部校验节点所存储的数据存在冗余关系;所述原始数据节点中的所有节点所存储的数据与所述第一全局校验节点所存储的数据存在冗余关系;所述第二全局校验节点所存储的数据与所述原始数据节点中的所有节点所存储的数据和所述第一全局校验节点所存储的数据存在冗余关系;所述第二局部校验节点所存储的数据与所述第一全局校验节点所存储的数据和所述第二全局校验节点所存储的数据存在冗余关系。

15、本申请实施例的第四方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的节点数据修复方法的步骤。

16、本申请实施例的第五方面,提供了一种计算机可读存储介质,其上存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现如第一方面所述的节点数据修复方法的步骤。

17、本申请实施例包括以下优点:通过引入与原始数据节点中的部分节点存在冗余关系的第一局部校验节点,可以大幅减少对故障的原始数据节点进行数据修复所需的数据读取量;通过引入与第一全局校验节点和第二全局校验节点存在冗余关系的第二局部校验节点,可以大幅减少对故障的校验节点进行数据修复所需的数据读取量;且在引入少量的局部校验数据(即第一局部校验节点和第二局部校验节点所存储的数据)来减少对单故障节点进行数据修复所需的数据读取量的基础上,选择最少数据读取量的节点组合来对存储集群中的一个或多个故障节点进行数据修复,有利于在整体上减少对存储集群中故障节点进行数据修复时的数据读取量,由此可以降低数据传输时的网络带宽资源占用,进而提高系统稳定性。



技术特征:

1.一种节点数据修复方法,其特征在于,应用于存储集群,所述存储集群包括原始数据节点和校验节点,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述存储集群中各节点所存储的数据之间的冗余关系,确定修复所述故障节点所需的最少数据读取量的节点组合,包括:

3.根据权利要求2所述的方法,其特征在于,所述在所述故障节点为单个节点的情况下,根据所述故障节点的节点类型、以及所述存储集群中各节点所存储的数据之间的冗余关系,确定修复所述故障节点所需的最少数据读取量的节点组合,包括:

4.根据权利要求3所述的方法,其特征在于,所述在所述故障节点为单个原始数据节点的情况下,根据所述存储集群中的校验节点中是否存在目标局部校验节点,确定修复所述故障节点所需的最少数据读取量的节点组合,包括:

5.根据权利要求3所述的方法,其特征在于,所述在所述故障节点为单个校验节点的情况下,根据所述故障节点是否属于第一校验节点,确定修复所述故障节点所需的最少数据读取量的节点组合,包括:

6.根据权利要求1所述的方法,其特征在于,在确定所述存储集群中的故障节点之前,所述方法还包括:

7.根据权利要求1-6任一所述的方法,其特征在于,在所述根据所述存储集群中各节点所存储的数据之间的冗余关系,确定修复所述故障节点所需的最少数据读取量的节点组合之前,所述方法还包括:

8.根据权利要求1-6任一所述的方法,其特征在于,所述存储集群以数据块的形式进行数据存储;

9.一种分布式存储系统,其特征在于,所述分布式存储系统包括服务器和存储集群,所述存储集群包括原始数据节点和校验节点,所述服务器配置有插件库,所述插件库包括用于实现不同节点数据修复方法的不同插件,所述不同插件至少包括用于实现如权利要求1至8中任一项所述的节点数据修复方法的插件;其中:

10.一种节点数据修复装置,其特征在于,应用于存储集群,所述存储集群包括原始数据节点和校验节点,所述装置包括:

11.一种电子设备,包括存储器、处理器及存储在所述存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现如权利要求1至8中任一项所述的节点数据修复方法。

12.一种计算机可读存储介质,其上存储有计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现如权利要求1至8中任一项所述的节点数据修复方法。


技术总结
本申请提供了一种节点数据修复方法、装置及分布式存储系统、设备和介质,旨在减少故障节点数据修复所需的数据读取量。该方法包括:确定存储集群中的故障节点;根据存储集群中各节点所存储的数据之间的冗余关系,确定修复故障节点所需的最少数据读取量的节点组合;根据所需的最少数据读取量的节点组合,对故障节点所存储的数据进行修复。

技术研发人员:耿微,蒋鸣,张碧英,廖瑞瑜,张海庆
受保护的技术使用者:中国电信股份有限公司
技术研发日:
技术公布日:2024/3/27
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1