节点修复方法及相关设备技术

技术编号:39521367 阅读:9 留言:0更新日期:2023-11-25 19:00
本申请实施例提供了一种节点修复方法及相关设备,用于解决分布式存储系统下修复多个节点所带来的网络传输问题

【技术实现步骤摘要】
节点修复方法及相关设备


[0001]本申请实施例涉及数据存储
,尤其涉及一种节点修复方法及相关设备


技术介绍

[0002]里德

所罗门码
(RS(k

m))
是擦除码家族中应用最广泛的一种纠删码

尤其是在分布式存储系统中

[0003]为了实现高可用性和低存储成本,纠删码被广泛地使用来代替复制

与复制相比,纠删码可以降低存储成本,但也带来了更高的修复开销

例如,目前的多节点修复算法是并行多个单节点修复算法,这将会产生两个严重的问题:节点间负载不平衡和多个独立的单节点修复产生的冗余块传输

当修复条带内的多个块时,每个节点的上传块数和下载块数不平衡,容易导致修复时间取决于负载最重的节点,其中网络传输开销在实际应用中占据主导地位,且这种开销随着故障节点的增加而线性增加,从而造成修复时间的提升


技术实现思路

[0004]本申请实施例提供了一种节点修复方法及相关设备,用于解决分布式存储系统下修复多个节点所带来的网络传输问题,以尽可能地加快修复速度

[0005]本申请实施例第一方面提供了一种节点修复方法,应用于分布式存储系统,包括:
[0006]获取所述分布式存储系统中的所有数据节点;其中,所述所有数据节点包括故障节点及幸存节点,所述幸存节点为所述所有数据节点中除开所述故障节点的节点;
[0007]将所述幸存节点进行调度分组,其中,任一组次中的所述幸存节点为成对存在;
[0008]将同一组次中的所述幸存节点进行归并操作,以将当前幸存节点中的节点修复数据传输至同一组次中的其他幸存节点,形成节点修复块;其中,所述节点修复块由所述其他幸存节点的节点修复数据及所述当前幸存节点的节点修复数据形成;
[0009]将任一组次中的所述节点修复块传输至所述故障节点,对所述故障节点进行修复,以使得所述故障节点根据所述节点修复块完成故障修复

[0010]可选地,所述将所述幸存节点进行调度分组包括:
[0011]将
k
个所述幸存节点分为个组,其中,任一个组中包括两个所述幸存节点,所述
k
为正整数;
[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]若所述故障节点的数量为
m
个,将任一组次中排序为前
m
个的所述幸存节点对应的所述节点修复块本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种节点修复方法,其特征在于,应用于分布式存储系统,所述方法包括:获取所述分布式存储系统中的所有数据节点;其中,所述所有数据节点包括故障节点及幸存节点,所述幸存节点为所述所有数据节点中除开所述故障节点的节点;将所述幸存节点进行调度分组,其中,任一组次中的所述幸存节点为成对存在;将同一组次中的所述幸存节点进行归并操作,以将当前幸存节点中的节点修复数据传输至同一组次中的其他幸存节点,形成节点修复块;其中,所述节点修复块由所述其他幸存节点的节点修复数据及所述当前幸存节点的节点修复数据形成;将任一组次中的所述节点修复块传输至所述故障节点,对所述故障节点进行修复,以使得所述故障节点根据所述节点修复块完成故障修复
。2.
根据权利要求1所述的节点修复方法,其特征在于,所述将所述幸存节点进行调度分组包括:将
k
个所述幸存节点分为个组,其中,任一个组中包括两个所述幸存节点,所述
k
为正整数;所述将同一组次中的所述幸存节点进行归并操作,以将当前幸存节点中的节点修复数据传输至同一组次中的其他幸存节点,包括:将第一幸存节点的第一幸存节点修复数据传输至第二幸存节点;其中,所述第一幸存节点为在所述个组中处于同一组次且位于后半部分的幸存节点,所述第二幸存节点为在所述个组中处于同一组次且位于前半部分的幸存节点
。3.
根据权利要求2所述的节点修复方法,其特征在于,所述将第一幸存节点的节点修复数据传输至第二幸存节点之后,所述方法还包括:将所述个组进行归并操作,获取个组;其中,任一个组中包括四个所述幸存节点;获取第三幸存节点的第三幸存节点修复数据及第四幸存节点的第四幸存节点修复数据,并确定所述第三幸存节点对应的第三加权系数及所述第四幸存节点对应的第四加权系数;其中,所述第三幸存节点及所述所述第四幸存节点分别为在所述个组中处于同一组次且位于后半部分的幸存节点;确定基于所述第三幸存节点修复数据

所述第四幸存节点修复数据及所述第三加权系数的与所述第五幸存节点对应的第五幸存节点修复数据,并确定基于所述第三幸存节点修复数据

所述第四幸存节点修复数据及所述第四加权系数的与所述第六幸存节点对应的第六幸存节点修复数据;其中,所述第五幸存节点及所述第六幸存节点分别为在所述个组中处于同一组次且位于前半部分的幸存节点;将所述第五幸存节点修复数据传输至所述第五幸存节点,将所述第六幸存节点修复数据传输至所述第六幸存节点
。4.
根据权利要求2或3所述的节点修复方法,其特征在于,所述方法还包括:
若同一分组中的所述幸存节点的数量的一半小于所述故障节点的数量,将当前分组中前半部分的所述幸存节点的节点修复数据传输至后半部分的所述幸存节点;所述形成节点修复块,包括:将经过传输所述节点修复数据后的任一所述幸存节点进行归并,生成所述节点修复块;其中,所述节点修复块包含当前幸存节点获取的所有节点修复数据
。5.
根据权利要求3所述的节点修复方法,其特征在于,所述方法还包括:若存在未位于任一个组中的幸存节点,确定未位于任一个组中的幸存节点为剩余幸存节点,并将所有所述剩余幸存节点归并至剩余组;所述形成节点修复块,包括:确定所述剩余组中的剩余幸存节点的节点修复数据及与所述节点修复数据对应的加权系数;根据所述剩余幸存节点的节点修复数据及加权系数生成与所述剩余组对应的节点修复块
。6.
根据权...

【专利技术属性】
技术研发人员:李诗逸张帅蓬夏文
申请(专利权)人:哈尔滨工业大学深圳哈尔滨工业大学深圳科技创新研究院
类型:发明
国别省市:

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

1