[发明专利]一种基于纠删码的跨中心协同修复方法在审

专利信息
申请号: 201810773745.X 申请日: 2018-07-15
公开(公告)号: CN109067852A 公开(公告)日: 2018-12-21
发明(设计)人: 王意洁;许方亮;包涵;马行空 申请(专利权)人: 中国人民解放军国防科技大学
主分类号: H04L29/08 分类号: H04L29/08;H04L12/26;G06F3/06
代理公司: 长沙中科启明知识产权代理事务所(普通合伙) 43226 代理人: 任合明
地址: 410003 湖*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于纠删码的跨中心协同修复方法,技术方案是先构建由数据中心和控制节点组成的分布存储系统,数据中心包括N个存储节点,控制节点为失效数据块Di选择新存储节点LN,向LN发送网络延迟测试请求和存储节点二维数组NSet;LN测试LN与NSet中各存储节点之间的网络延迟,向控制节点发送网络延迟测试结果数组NL;控制节点根据NL选择k个可用数据块及其所在存储节点,k个可用数据块所在的存储节点进行解码计算,被选存储节点所在的数据中心将解码计算结果进行合并,将合并后的结果发送给LN;LN将结果进一步合并得到恢复的Di;控制节点向用户返回修复成功信息。采用本发明可提高大规模分布存储系统的数据修复效率和容错能力。
搜索关键词: 存储节点 控制节点 数据中心 分布存储系统 可用数据块 发送网络 延迟测试 解码 修复 合并 协同 成功信息 二维数组 结果数组 容错能力 失效数据 数据修复 网络延迟 用户返回 构建 测试 恢复
【主权项】:
1.一种基于纠删码的跨中心协同修复方法,其特征在于包括以下步骤:第一步,构建一个分布存储系统,它由M个数据中心和一个控制节点组成,每个数据中心均包括N个存储节点,每个节点都是一台可独立运行的计算机,各节点通过网络设备互连,M和N均为正整数;控制节点和存储节点上均安装有操作系统、TCP/IP协议软件,配置了网络环境;控制节点负责与用户交互,接收用户提交的失效数据块修复请求;负责为失效数据块选择新的存储节点,并向新的存储节点发送网络延迟测试请求;负责根据网络延迟选择可用数据块及其所在存储节点;负责存储解码系数,向各存储节点分发失效数据块修复任务和接收修复成功信息,向用户返回修复成功信息;存储节点负责存储数据对象的原始数据块和冗余数据块,执行网络延迟测试任务,并向控制节点返回网络延迟测试结果;执行失效数据块修复任务,并向控制节点返回修复成功信息;将数据对象DO分割为k个原始数据块即D1,D2,……,Di……,Dk,1≤i≤k,k为正整数,对k个原始数据块进行编码计算得到m个冗余数据块,m为正整数,这k+m个数据块分别存储在k+m个存储节点上,k+m<N;在分布存储系统中,每个数据块拥有唯一的数据块编号;控制节点上安装有任务管理程序和结果回收程序;任务管理程序接收用户提交的失效数据块修复请求,为失效数据块选择一个新存储节点,并向新存储节点发送网络延迟测试请求;根据网络延迟测试结果从数据对象DO的除去失效数据块的k+m‑1个可用数据块中选择k个可用数据块及其所在存储节点;向k个可用数据块所在的存储节点发送失效数据块修复请求及修复所需的相关信息;结果回收程序负责接收存储节点的修复成功信息并返回给用户;存储节点上安装有网络延迟测试程序和修复程序;网络延迟测试程序负责接收来自控制节点的网络延迟测试请求,进行网络延迟测试,向控制节点发送网络延迟测试结果;修复程序负责接收来自控制节点的失效数据块修复请求,并对存储节点上存储的可用数据块进行解码计算,完成修复后向控制节点发送修复成功信息;第二步,控制节点为待修复的失效数据块Di选择新存储节点LN;第三步,控制节点向存储节点LN发送网络延迟测试请求和存储节点二维数组NSet,具体方法是:3.1控制节点的任务管理程序向存储节点LN发送网络延迟测试请求;3.2控制节点的任务管理程序将数据对象DO的除去失效数据块Di以外的k+m‑1个可用数据块所在的存储节点构成存储节点二维数组NSet,NSet[s][1]表示第s个可用数据块所在的存储节点,NSet[s][2]表示第s个可用数据块所在的存储节点所在的数据中心,1≤s≤k+m‑1,向存储节点LN发送存储节点数组NSet;第四步,存储节点LN接收来自控制节点的网络延迟测试请求和存储节点二维数组NSet,依次测试LN与NSet中各存储节点之间的网络延迟,向控制节点发送网络延迟测试结果数组NL,具体方法是:4.1存储节点LN的网络延迟测试程序接收来自控制节点的网络延迟测试请求和存储节点二维数组NSet;4.2存储节点LN的网络延迟测试程序依次测试LN与NSet中各存储节点之间的网络延迟,采用网络延迟测试结果数组NL存储测试结果,NL[s]表示存储节点LN与存储节点NSet[s][1]之间的网络延迟;4.3存储节点LN的网络延迟测试程序向控制节点发送网络延迟测试结果数组NL;第五步,控制节点接收来自存储节点LN的网络延迟测试结果数组NL;根据NL从数据对象DO的除去失效数据块的k+m‑1个可用数据块中选择k个可用数据块及其所在存储节点,具体方法是:5.1控制节点的任务管理程序接收来自存储节点LN的网络延迟测试结果数组NL;5.2控制节点的任务管理程序根据NL从数据对象DO的除去失效数据块的k+m‑1个可用数据块中选择k个可用数据块,采用被选存储节点二维数组RNSet存储被选中的k个可用数据块所在的存储节点及其所在数据中心,RNSet[t][1]表示被选中的第t个可用数据块所在存储节点,RNSet[t][2]表示被选中的第t个可用数据块所在存储节点的所在数据中心,1≤t≤k;第六步,控制节点执行任务管理程序,向第五步选择的k个可用数据块的所在存储节点发送失效数据块Di修复请求、可用数据块编号及其解码系数Hir、被选存储节点二维数组RNSet、失效数据块Di的新存储节点LN的编号,1≤r≤k;第七步,第五步选择的k个可用数据块的所在存储节点执行修复程序,接收来自控制节点的失效数据块Di修复请求、可用数据块编号及其解码系数Hir、被选存储节点二维数组RNSet、失效数据块Di的新存储节点LN的编号;基于可用数据块及其解码系数Hir进行解码计算,RNSet中的每个数据中心先将解码计算结果进行合并,然后将合并后的中间解码结果发送给LN:7.1被选中的k个可用数据块的所在存储节点的修复程序进行解码计算,得到新数据块Si1,…,Sir,…,Sik;7.2被选中的k个可用数据块的所在存储节点的修复程序进行数据中心内部的解码结果合并,得到合并后的中间解码结果,方法是:7.2.1采用数据块状态数组CSet记录被选中的k个可用数据块的解码计算结果是否进行传送和合并,初始化CSet中的每个元素为0,即CSet[1],……,CSet[r],……,CSet[k]均=0;7.2.2初始化被选存储节点序号r=1;7.2.3初始化后续存储节点序号x=r+1;7.2.4如果CSet[x]=0且RNSet[r][2]=RNSet[x][2],则存储节点RNSet[x][1]的修复程序将解码计算得到的数据块Six发送给存储节点RNSet[r][1],存储节点RNSet[r][1]的修复程序接收存储节点RNSet[x][1]发送来的解码计算结果数据块Six,将Six与本地解码计算结果数据块Sir进行合并,即Sir=Sir+Six,令CSet[x]=1,转第7.2.5步;否则,直接转第7.2.5步;7.2.5如果x<k,则令x=x+1,转第7.2.4步;否则,r=r+1,转第7.2.6步;7.2.6如果r<k,转第7.2.3步;否则,数据中心内部解码结果合并结束;7.3各数据中心将合并后的中间解码结果发送给失效数据块Di的新存储节点LN;第八步,失效数据块Di的新存储节点LN接收各数据中心发送的中间解码结果,将接收到的中间解码结果进行合并得到最终解码结果,即恢复的Di,向控制节点发送修复成功信息;第九步,控制节点的结果回收程序接收来自存储节点LN的修复成功信息,向用户返回修复成功信息。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201810773745.X/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top