[发明专利]一种折叠式可扩展分布式存储编码及修复、扩展方法有效
申请号: | 202110726617.1 | 申请日: | 2021-06-29 |
公开(公告)号: | CN113391948B | 公开(公告)日: | 2022-10-21 |
发明(设计)人: | 孙蓉;杜从军;刘景伟;裴庆祺 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F11/10 | 分类号: | G06F11/10;G06F3/06 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 田文英;王品华 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 折叠式 扩展 分布式 存储 编码 修复 方法 | ||
1.一种折叠式可扩展分布式存储编码方法,其特征在于,计算下一个阶段的编码参数,根据生成矩阵的折叠规则构建上一个阶段对应的生成矩阵集,确定各阶段对应的码,将所有阶段对应的码组成一个编码组;该方法的步骤包括如下:
(1)设定第1个阶段的编码参数:
将信息节点数k1、校验节点数r1、元校验节点数s1设定为第1个阶段的编码参数,其中,k1、r1为正整数,s1为非负整数且小于等于r1;
(2)计算下一个阶段的编码参数:
(2a)按照下式,计算下一个阶段的信息节点数、校验节点数:
k′=2k
r′=2r-s
其中,k′、r′分别表示当前阶段的下一个阶段的信息节点数、校验节点数,k、r、s分别表示当前阶段的信息节点数、校验节点数、元校验节点数;
(2b)从取值范围{s,s+1,…,2r-s}中选取一个与希望以低修复复杂度修复的同时失效的信息节点数最大值相等的值作为下一个阶段的元校验节点数;
(3)判断当前迭代得到的编码参数的总数是否是等于m,若是,则执行步骤(4);否则,将本次确定的编码参数作为当前阶段的编码参数后执行步骤(2);m表示设定的拟构造的编码组中码的总数,m的值为大于等于2的整数;
(4)确定最终编码参数:
(4a)将当前迭代得到的编码参数中的校验节点数的值设定为当前迭代得到的编码参数中的元校验节点数;
(4b)将当前迭代得到的信息节点数、校验节点数与确定的元校验节点数组成最终编码参数;
(5)构建最后一个阶段对应的生成矩阵:
将一个系统型MDS码作为基本码,利用基本码的生成矩阵构造方法,构建一个与最后一个阶段对应的生成矩阵Gm:
其中,Gm表示最后一个阶段对应的生成矩阵,表示一个km阶的单位矩阵,km的取值等于最终编码参数中的信息节点数,表示一个rm行km列的矩阵,rm的取值等于最终编码参数中的校验节点数;
(6)设定生成矩阵的折叠规则:
(6a)将待折叠的矩阵划分成A、B、X、U、V五个矩阵:其中,A表示待折叠的矩阵的第1行至第l1行组成的一个左信息矩阵,表示当前阶段的上一阶段对应的编码参数中的信息节点数;B表示待折叠的矩阵的第l2行至第l3行组成的一个右信息矩阵,X表示待折叠的矩阵的第l4行至前l5行组成的矩阵,表示当前阶段的上一阶段对应的编码参数中的元校验节点数;U表示待折叠的矩阵的第l6行至第l7行组成的矩阵,表示当前阶段的上一阶段对应的编码参数中的校验节点数;V表示待折叠的矩阵的第l8行至最后1行组成的一个右非元矩阵,
(6b)生成一个与矩阵X行列元素均相等的矩阵,该矩阵的最后μ个非零列的元素全部置零后得到一个左元矩阵X′,生成一个与矩阵X行列元素均相等的矩阵,该矩阵的前μ个非零列的元素全部置零后得到一个右元矩阵X″;将矩阵U的最后μ个非零列的元素全部置零后得到一个左非元矩阵U′;
(6c)按照下式,分别对矩阵A、矩阵X′、矩阵U′,矩阵B、矩阵X″、矩阵V进行组合,构建出对待折叠的矩阵折叠后的当前阶段的上一个阶段对应的生成矩阵集中的两个相互关联的生成矩阵:
其中,G′表示左生成矩阵、G″表示右生成矩阵;
(7)构建最后一个阶段的上一个阶段对应的生成矩阵集:
(7a)根据生成矩阵的折叠规则,对最后一个阶段对应的生成矩阵进行折叠,并将折叠后的生成矩阵加入到当前阶段的上一个阶段对应的生成矩阵集中;
(7b)判断m-1的值是否等于2,若是,则执行步骤(10),否则,将本次迭代确定的生成矩阵集作为当前阶段对应的生成矩阵集后执行步骤(8);
(8)构造上一阶段对应的生成矩阵集:
根据生成矩阵的折叠规则,对当前阶段对应的生成矩阵集中的每一个生成矩阵进行折叠,并将折叠得到的生成矩阵加入到当前阶段的上一个阶段对应的生成矩阵集中;
(9)判断当前迭代得到的生成矩阵集中生成矩阵的数量是否等于2m-1,若是,则执行步骤(10),否则,将本次确定的生成矩阵集作为当前阶段对应的生成矩阵集后执行步骤(8);
(10)确定各阶段的码:
将每一个阶段对应的编码参数作为其对应的码的编码参数;将最后一个阶段对应的生成矩阵作为最后一个阶段的码的子条带的生成矩阵;将除最后一个阶段以外的其他每个阶段对应的生成矩阵集中的各生成矩阵作为其对应的码的各子条带的生成矩阵;
(11)将所有阶段的码组合成一个编码组;
(12)从编码组中选择一个码,所选码的编码参数中信息节点数与校验节点数的和等于希望采用的节点总数;
(13)对待编码数据进行编码:
将待编码数据平均划分为t个信息符号,t=km;用所选码的每一个子条带对应的生成矩阵分别对待编码数据进行编码,得到该子条带的数据符号,由所有子条带的数据符号组成编码数据;将编码数据保存到相应节点中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110726617.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:水印生成、解码方法以及存储介质、电子设备
- 下一篇:车身回转控制方法以及系统