CN111697976A - 一种基于分布式存储的rs纠删快速解码方法及系统 - Google Patents

一种基于分布式存储的rs纠删快速解码方法及系统 Download PDF

Info

Publication number
CN111697976A
CN111697976A CN202010466908.7A CN202010466908A CN111697976A CN 111697976 A CN111697976 A CN 111697976A CN 202010466908 A CN202010466908 A CN 202010466908A CN 111697976 A CN111697976 A CN 111697976A
Authority
CN
China
Prior art keywords
matrix
small
inverse
module
van der
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010466908.7A
Other languages
English (en)
Other versions
CN111697976B (zh
Inventor
吴睿振
王凛
王明明
吴艳
王金富
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202010466908.7A priority Critical patent/CN111697976B/zh
Publication of CN111697976A publication Critical patent/CN111697976A/zh
Application granted granted Critical
Publication of CN111697976B publication Critical patent/CN111697976B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明涉及服务器存储技术领域,提供一种基于分布式存储的RS纠删快速解码方法及系统,方法包括:利用添加的校验码矩阵重新拼组一个k*k的矩阵;对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵;基于RS编码和范德蒙矩阵的特性,计算逆矩阵;将计算得到的逆矩阵乘以重新排序后对应的存储数据库,得到原始存储数据块,从而通过拆分组合成简单的小型矩阵,省略大部分运算,降低运算复杂度,提高运算速度。

Description

一种基于分布式存储的RS纠删快速解码方法及系统
技术领域
本发明属于服务器存储技术领域,尤其涉及一种基于分布式存储的RS纠删快速解码方法及系统。
背景技术
面对海量数据的存储要求,分布式存储以其成本低廉,可扩展性好等优势逐渐取代了统一存储的主导地位,在理论研究和实际应用方面得到了越来越多的关注。分布式存储系统多以廉价的磁盘作为存储节点,每个存储节点的可靠性往往不会很高,另一方面,一个分布式存储系统通常包含很多的节点,由于软硬件故障,人为失误等原因,系统常常发生节点失效的情况。
为了提高分布式存储系统的数据可靠性,保证数据收集节点能以很高的概率实现原始文件的重构,需要在存储原始数据的基础上,额外存储一定数量的冗余,使得在出现部分节点失效的情况下,系统仍然可以正常运行,数据收集节点仍然可以对原始文件实现解码恢复。同时,为了维持系统的可靠性,需要对失效的节点及时进行修复,但是,目前对失效节点的修复的算法,存在算法复杂,运算难度大,运算速度较低,适用范围较窄。
发明内容
针对现有技术中的缺陷,本发明提供了一种基于分布式存储的RS纠删快速解码方法,旨在解决现有技术中对失效节点的修复的算法存在算法复杂,运算难度大,运算速度较低,适用范围较窄的问题。
本发明所提供的技术方案是:一种基于分布式存储的RS纠删快速解码方法,所述方法包括下述步骤:
利用添加的校验码矩阵重新拼组一个k*k的矩阵,其中,k为大于等于1的自然数;
对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵,其逆矩阵
Figure BDA0002512971160000021
为:
Figure BDA0002512971160000022
其中,E为单位矩阵;
基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure BDA0002512971160000023
将计算得到的逆矩阵
Figure BDA0002512971160000024
乘以重新排序后对应的存储数据库,得到原始存储数据块。
作为一种改进的方案,所述基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure BDA0002512971160000025
的步骤具体包括下述步骤:
在逆矩阵的计算式中,判断小矩阵A和小矩阵D的矩阵类型,其中,该矩阵类型包括E矩阵、范德蒙矩阵、E矩阵和范德蒙矩阵的混合矩阵以及1*1的最小矩阵;
根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵;
计算逆矩阵
Figure BDA0002512971160000026
中的-D-1·C·A-1
控制在剩余分块中执行补零操作,生成基于RS纠删码对应的逆矩阵
Figure BDA0002512971160000027
作为一种改进的方案,所述根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵的步骤具体包括下述步骤:
当所述小矩阵A和小矩阵D为E矩阵时,确定所述小矩阵A和小矩阵D的逆矩阵为自身;
当所述小矩阵A和小矩阵D为1*1的最小矩阵时,则确定所述小矩阵A和小矩阵D的逆矩阵为自身元素的倒数;
当所述小矩阵A和小矩阵D为E矩阵和范德蒙矩阵的混合矩阵时,则控制返回执行所述对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵的步骤。
作为一种改进的方案,所述根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵的步骤具体包括下述步骤:
当所述小矩阵A和小矩阵D为范德蒙矩阵时,计算范德蒙矩阵的逆。
作为一种改进的方案,所述当所述小矩阵A和小矩阵D为范德蒙矩阵时,计算范德蒙矩阵的逆的步骤具体包括下述步骤:
构造范德蒙矩阵所对应的逆矩阵的每一个元素计算关系式;
定义一拉格朗日插值法基本多项式;
对所述拉格朗日插值法基本多项式执行展开操作;
将经典的基本对称函数S代入执行展开操作的拉格朗日插值法基本多项式;
对代入所述经典的基本对称函数S后的计算式进行变换,得到范德蒙矩阵的逆矩阵的每一个元素Zij
本发明的另一目的在于提供一种基于分布式存储的RS纠删快速解码系统,所述系统包括:
矩阵拼组模块,用于利用添加的校验码矩阵重新拼组一个k*k的矩阵,其中,k为大于等于1的自然数;
矩阵分块模块,用于对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵,其逆矩阵
Figure BDA0002512971160000031
为:
Figure BDA0002512971160000041
其中,E为单位矩阵;
逆矩阵计算模块,用于基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure BDA0002512971160000042
原始存储数据块恢复模块,用于将计算得到的逆矩阵
Figure BDA0002512971160000043
乘以重新排序后对应的存储数据库,得到原始存储数据块。
作为一种改进的方案,逆矩阵计算模块具体包括:
矩阵类型判断模块,用于在逆矩阵的计算式中,判断小矩阵A和小矩阵D的矩阵类型,其中,该矩阵类型包括E矩阵、范德蒙矩阵、E矩阵和范德蒙矩阵的混合矩阵以及1*1的最小矩阵;
小矩阵逆矩阵计算模块,用于根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵;
算式计算模块,用于计算逆矩阵
Figure BDA0002512971160000044
中的-D-1·C·A-1
逆矩阵生成模块,用于控制在剩余分块中执行补零操作,生成基于RS纠删码对应的逆矩阵
Figure BDA0002512971160000045
作为一种改进的方案,所述小矩阵逆矩阵计算模块具体包括:
第一逆矩阵确定模块,用于当所述小矩阵A和小矩阵D为E矩阵时,确定所述小矩阵A和小矩阵D的逆矩阵为自身;
第二逆矩阵确定模块,用于当所述小矩阵A和小矩阵D为1*1的最小矩阵时,则确定所述小矩阵A和小矩阵D的逆矩阵为自身元素的倒数;
返回执行控制模块,用于当所述小矩阵A和小矩阵D为E矩阵和范德蒙矩阵的混合矩阵时,则控制返回执行所述对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵的步骤。
作为一种改进的方案,所述小矩阵逆矩阵计算模块具体包括:
范德蒙矩阵的逆矩阵计算模块,用于当所述小矩阵A和小矩阵D为范德蒙矩阵时,计算范德蒙矩阵的逆。
作为一种改进的方案,所述范德蒙矩阵的逆矩阵计算模块具体包括:
元素计算关系式构造模块,用于构造范德蒙矩阵所对应的逆矩阵的每一个元素计算关系式;
拉格朗日插值法基本多项式定义模块,用于定义一拉格朗日插值法基本多项式;
展开操作模块,用于对所述拉格朗日插值法基本多项式执行展开操作;
代入模块,用于将经典的基本对称函数S代入执行展开操作的拉格朗日插值法基本多项式;
计算式变换模块,用于对代入所述经典的基本对称函数S后的计算式进行变换,得到范德蒙矩阵的逆矩阵的每一个元素Zij
在本发明实施例中,利用添加的校验码矩阵重新拼组一个k*k的矩阵;对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵;基于RS编码和范德蒙矩阵的特性,计算逆矩阵;将计算得到的逆矩阵乘以重新排序后对应的存储数据库,得到原始存储数据块,从而通过拆分组合成简单的小型矩阵,省略大部分运算,降低运算复杂度,提高运算速度。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1是本发明提供的基于分布式存储的RS纠删快速解码方法的实现流程图;
图2是本发明提供的基于RS编码和范德蒙矩阵的特性,计算逆矩阵的实现流程图;
图3是本发明提供的计算范德蒙矩阵的逆的实现流程图;
图4是本发明提供的基于分布式存储的RS纠删快速解码系统的结构框图;
图5是本发明提供的逆矩阵计算模块的结构框图;
图6是本发明提供的小矩阵逆矩阵计算模块的结构框图;
图7是本发明提供的范德蒙矩阵的逆矩阵计算模块的结构框图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的、技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。
图1是本发明提供的基于分布式存储的RS纠删快速解码方法的实现流程图,其具体包括下述步骤:
在步骤S101中,利用添加的校验码矩阵重新拼组一个k*k的矩阵,其中,k为大于等于1的自然数;
在分布式存储中,RS编码矩阵是考虑存储具体可能的丢失情况设置的,因此针对不同的数据块丢失情况,为能够恢复原始数据块,都会利用添加的校验码矩阵重新拼成一个k*k的矩阵。
在步骤S102中,对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵,其逆矩阵
Figure BDA0002512971160000061
为:
Figure BDA0002512971160000062
其中,E为单位矩阵;
在步骤S103中,基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure BDA0002512971160000071
在步骤S104中,将计算得到的逆矩阵
Figure BDA0002512971160000072
乘以重新排序后对应的存储数据库,得到原始存储数据块。
在该步骤中,利用范德蒙矩阵和RS编码矩阵特性,通过对待求逆矩阵分析和排列组合,结合范德蒙矩阵和利用范德蒙矩阵进行编码的RS矩阵特性,将待求逆矩阵拆分成不同的特殊矩阵,利用矩阵特性和拉格朗日插值法直接生成逆矩阵。所提出的发明,可适用于多重复杂情况,并通过拆分组合成简单个小型矩阵,省略大部分运算,降低运算复杂度,提高运算速度。算法模式单向且易于复用,通过状态机可以迭代执行,不仅适用于软件需求,亦适用于硬件电路的实现,填补了硬件RS解码器的空白。
在该实施例中,如图2所示,基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure BDA0002512971160000073
的步骤具体包括下述步骤:
在步骤S201中,在逆矩阵的计算式中,判断小矩阵A和小矩阵D的矩阵类型,其中,该矩阵类型包括E矩阵、范德蒙矩阵、E矩阵和范德蒙矩阵的混合矩阵以及1*1的最小矩阵;
在步骤S202中,根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵;
在步骤S203中,计算逆矩阵
Figure BDA0002512971160000074
中的-D-1·C·A-1
其中,剩余-D-1·C·A-1可以优化为-D-1·C,此时D的逆矩阵已通过上述操作求出,直接与-C部分相乘,即会得到-D-1·C·A-1
在步骤S204中,控制在剩余分块中执行补零操作,生成基于RS纠删码对应的逆矩阵
Figure BDA0002512971160000075
在本发明实施例中,根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵的步骤具体包括下述步骤:
(1)当所述小矩阵A和小矩阵D为E矩阵时,确定所述小矩阵A和小矩阵D的逆矩阵为自身;
(2)当所述小矩阵A和小矩阵D为1*1的最小矩阵时,则确定所述小矩阵A和小矩阵D的逆矩阵为自身元素的倒数;
(3)当所述小矩阵A和小矩阵D为E矩阵和范德蒙矩阵的混合矩阵时,则控制返回执行所述对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵的步骤。
在本发明实施例中,根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵的步骤还包括下述步骤:
当所述小矩阵A和小矩阵D为范德蒙矩阵时,计算范德蒙矩阵的逆;
其中,如图3所示,该计算范德蒙矩阵的逆的步骤具体包括下述步骤:
在步骤S301中,构造范德蒙矩阵所对应的逆矩阵的每一个元素计算关系式;
其中,该元素计算关系式为:
Figure BDA0002512971160000081
构造下Z=[zij]表示的是n*n阶的范德蒙矩阵V=[Vij]的逆矩阵。
在步骤S302中,定义一拉格朗日插值法基本多项式;
在该步骤中,通过上述步骤S301,即将求逆的问题转换为求Z的问题了,根据上述公式,使用拉格朗日插值法利用当i=m时的结果应为1的特性,定义拉格朗日插值法基本多项式:
Figure BDA0002512971160000082
因为Li(xi)=1,且Li(xp)=0于是对于t∈{x1,…,xn}转换为:
Figure BDA0002512971160000091
在步骤S303中,对所述拉格朗日插值法基本多项式执行展开操作;
对步骤S302得到的计算式进行开展,得到:
Figure BDA0002512971160000092
其中S是经典的基本对称函数,表示为如下:
Figure BDA0002512971160000093
且S0(x1,...,xi-1,xi+1,...,xn)≡1
在步骤S304中,将经典的基本对称函数S代入执行展开操作的拉格朗日插值法基本多项式;
在该步骤中,将S带入上面的L,可得:
Figure BDA0002512971160000094
在步骤S305中,对代入所述经典的基本对称函数S后的计算式进行变换,得到范德蒙矩阵的逆矩阵的每一个元素Zij
结合上式求逆矩阵Z可知:
Figure BDA0002512971160000101
得到矩阵是范德蒙矩阵情况下,求得逆矩阵的每一个元素值。
在本发明实施例中,纠删码(Erasure Code)属于编码理论中的一种向前纠错技术,最早应用于通信领域以解决数据传输中的丢失与损耗这类问题。由于纠删码技术在防止数据丢失取得了较好的效果,因此被引入存储领域。纠删码可以在保证相同可靠性的前提下有效地降低存储开销,因此纠删码技术被广泛地应用于各大存储系统以及数据中心例如微软的Azure、Facebook的F4等。
纠删码的种类众多,在实际存储系统中较常见的有应用在分布式环境下的RS码(Reed-Solomon Code)。RS码与两个参数k和r相关。给定两个正整数k和r,RS码将k个数据块编码为r个额外的校验块。而r个校验块基于范德蒙矩阵进行编码获得方式就称为利用范德蒙矩阵编码的RS纠删码,具体编码过程如下所示:
Figure BDA0002512971160000102
上部分的k*k矩阵对应的就是k个原始数据块,下部分的r*k矩阵对应的就是范德蒙矩阵,通过与原始数据D1到Dk相乘,得到新添加的P1到Pr就是编码所得到的r个校验数据。当其中任意做多r个数据在传输中出错或丢失,需要纠错时,即用剩余数据对应矩阵的逆矩阵与数据相乘,即会得到原始数据块D1到Dk
以D1到Dr数据丢失,进行解码为例,过程如下所示:
Figure BDA0002512971160000111
以k=4,r=2为例,此时原始数据块4块,增加的校验码块2块。则使用范德蒙矩阵编码的RS纠删编码矩阵为:
Figure BDA0002512971160000112
假设传输后丢失数据D2,D3,则解码恢复数据块的方式为:
Figure BDA0002512971160000113
图4是本发明提供的基于分布式存储的RS纠删快速解码系统的结构框图,为了便于说明,图中仅给出了与本发明实施例相关的部分。
基于分布式存储的RS纠删快速解码系统包括:
矩阵拼组模块11,用于利用添加的校验码矩阵重新拼组一个k*k的矩阵,其中,k为大于等于1的自然数;
矩阵分块模块12,用于对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵,其逆矩阵
Figure BDA0002512971160000114
为:
Figure BDA0002512971160000121
其中,E为单位矩阵;
逆矩阵计算模块13,用于基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure BDA0002512971160000122
原始存储数据块恢复模块14,用于将计算得到的逆矩阵
Figure BDA0002512971160000123
乘以重新排序后对应的存储数据库,得到原始存储数据块。
其中,图5所示,逆矩阵计算模块13具体包括:
矩阵类型判断模块15,用于在逆矩阵的计算式中,判断小矩阵A和小矩阵D的矩阵类型,其中,该矩阵类型包括E矩阵、范德蒙矩阵、E矩阵和范德蒙矩阵的混合矩阵以及1*1的最小矩阵;
小矩阵逆矩阵计算模块16,用于根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵;
算式计算模块17,用于计算逆矩阵
Figure BDA0002512971160000124
中的-D-1·C·A-1
逆矩阵生成模块18,用于控制在剩余分块中执行补零操作,生成基于RS纠删码对应的逆矩阵
Figure BDA0002512971160000125
在该实施例中,如图6所示,小矩阵逆矩阵计算模块16具体包括:
第一逆矩阵确定模块19,用于当所述小矩阵A和小矩阵D为E矩阵时,确定所述小矩阵A和小矩阵D的逆矩阵为自身;
第二逆矩阵确定模块20,用于当所述小矩阵A和小矩阵D为1*1的最小矩阵时,则确定所述小矩阵A和小矩阵D的逆矩阵为自身元素的倒数;
返回执行控制模块21,用于当所述小矩阵A和小矩阵D为E矩阵和范德蒙矩阵的混合矩阵时,则控制返回执行所述对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵的步骤。
在该实施例中,小矩阵逆矩阵计算模块16具体包括:
范德蒙矩阵的逆矩阵计算模块22,用于当所述小矩阵A和小矩阵D为范德蒙矩阵时,计算范德蒙矩阵的逆。
其中,如图7所示,范德蒙矩阵的逆矩阵计算模块22具体包括:
元素计算关系式构造模块23,用于构造范德蒙矩阵所对应的逆矩阵的每一个元素计算关系式;
拉格朗日插值法基本多项式定义模块24,用于定义一拉格朗日插值法基本多项式;
展开操作模块25,用于对所述拉格朗日插值法基本多项式执行展开操作;
代入模块26,用于将经典的基本对称函数S代入执行展开操作的拉格朗日插值法基本多项式;
计算式变换模块27,用于对代入所述经典的基本对称函数S后的计算式进行变换,得到范德蒙矩阵的逆矩阵的每一个元素Zij
其中,上述各个模块的功能如上述方法实施例所记载,在此并阻碍赘述。
在本发明实施例中,利用添加的校验码矩阵重新拼组一个k*k的矩阵;对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵;基于RS编码和范德蒙矩阵的特性,计算逆矩阵;将计算得到的逆矩阵乘以重新排序后对应的存储数据库,得到原始存储数据块,从而通过拆分组合成简单的小型矩阵,省略大部分运算,降低运算复杂度,提高运算速度。
以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

Claims (10)

1.一种基于分布式存储的RS纠删快速解码方法,其特征在于,所述方法包括下述步骤:
利用添加的校验码矩阵重新拼组一个k*k的矩阵,其中,k为大于等于1的自然数;
对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵,其逆矩阵
Figure FDA0002512971150000011
为:
Figure FDA0002512971150000012
其中,E为单位矩阵;
基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure FDA0002512971150000013
将计算得到的逆矩阵
Figure FDA0002512971150000014
乘以重新排序后对应的存储数据库,得到原始存储数据块。
2.根据权利要求1所述的基于分布式存储的RS纠删快速解码方法,其特征在于,所述基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure FDA0002512971150000015
的步骤具体包括下述步骤:
在逆矩阵的计算式中,判断小矩阵A和小矩阵D的矩阵类型,其中,该矩阵类型包括E矩阵、范德蒙矩阵、E矩阵和范德蒙矩阵的混合矩阵以及1*1的最小矩阵;
根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵;
计算逆矩阵
Figure FDA0002512971150000016
中的-D-1·C·A-1
控制在剩余分块中执行补零操作,生成基于RS纠删码对应的逆矩阵
Figure FDA0002512971150000021
3.根据权利要求2所述的基于分布式存储的RS纠删快速解码方法,其特征在于,所述根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵的步骤具体包括下述步骤:
当所述小矩阵A和小矩阵D为E矩阵时,确定所述小矩阵A和小矩阵D的逆矩阵为自身;
当所述小矩阵A和小矩阵D为1*1的最小矩阵时,则确定所述小矩阵A和小矩阵D的逆矩阵为自身元素的倒数;
当所述小矩阵A和小矩阵D为E矩阵和范德蒙矩阵的混合矩阵时,则控制返回执行所述对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵的步骤。
4.根据权利要求2所述的基于分布式存储的RS纠删快速解码方法,其特征在于,所述根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵的步骤具体包括下述步骤:
当所述小矩阵A和小矩阵D为范德蒙矩阵时,计算范德蒙矩阵的逆。
5.根据权利要求4所述的基于分布式存储的RS纠删快速解码方法,其特征在于,所述当所述小矩阵A和小矩阵D为范德蒙矩阵时,计算范德蒙矩阵的逆的步骤具体包括下述步骤:
构造范德蒙矩阵所对应的逆矩阵的每一个元素计算关系式;
定义一拉格朗日插值法基本多项式;
对所述拉格朗日插值法基本多项式执行展开操作;
将经典的基本对称函数S代入执行展开操作的拉格朗日插值法基本多项式;
对代入所述经典的基本对称函数S后的计算式进行变换,得到范德蒙矩阵的逆矩阵的每一个元素Zij
6.一种基于分布式存储的RS纠删快速解码系统,其特征在于,所述系统包括:
矩阵拼组模块,用于利用添加的校验码矩阵重新拼组一个k*k的矩阵,其中,k为大于等于1的自然数;
矩阵分块模块,用于对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵,其逆矩阵
Figure FDA0002512971150000031
为:
Figure FDA0002512971150000032
其中,E为单位矩阵;
逆矩阵计算模块,用于基于RS编码和范德蒙矩阵的特性,计算逆矩阵
Figure FDA0002512971150000033
原始存储数据块恢复模块,用于将计算得到的逆矩阵
Figure FDA0002512971150000034
乘以重新排序后对应的存储数据库,得到原始存储数据块。
7.根据权利要求6所述的基于分布式存储的RS纠删快速解码系统,其特征在于,逆矩阵计算模块具体包括:
矩阵类型判断模块,用于在逆矩阵的计算式中,判断小矩阵A和小矩阵D的矩阵类型,其中,该矩阵类型包括E矩阵、范德蒙矩阵、E矩阵和范德蒙矩阵的混合矩阵以及1*1的最小矩阵;
小矩阵逆矩阵计算模块,用于根据判断得到的小矩阵A和小矩阵D的矩阵类型,计算小矩阵A和小矩阵D的逆矩阵;
算式计算模块,用于计算逆矩阵
Figure FDA0002512971150000035
中的-D-1·C·A-1
逆矩阵生成模块,用于控制在剩余分块中执行补零操作,生成基于RS纠删码对应的逆矩阵
Figure FDA0002512971150000041
8.根据权利要求7所述的基于分布式存储的RS纠删快速解码系统,其特征在于,所述小矩阵逆矩阵计算模块具体包括:
第一逆矩阵确定模块,用于当所述小矩阵A和小矩阵D为E矩阵时,确定所述小矩阵A和小矩阵D的逆矩阵为自身;
第二逆矩阵确定模块,用于当所述小矩阵A和小矩阵D为1*1的最小矩阵时,则确定所述小矩阵A和小矩阵D的逆矩阵为自身元素的倒数;
返回执行控制模块,用于当所述小矩阵A和小矩阵D为E矩阵和范德蒙矩阵的混合矩阵时,则控制返回执行所述对新拼组成的k*k的矩阵进行矩阵分块,得到A、B、C、D四个n*n的小矩阵的步骤。
9.根据权利要求7所述的基于分布式存储的RS纠删快速解码系统,其特征在于,所述小矩阵逆矩阵计算模块具体包括:
范德蒙矩阵的逆矩阵计算模块,用于当所述小矩阵A和小矩阵D为范德蒙矩阵时,计算范德蒙矩阵的逆。
10.根据权利要求9所述的基于分布式存储的RS纠删快速解码系统,其特征在于,所述范德蒙矩阵的逆矩阵计算模块具体包括:
元素计算关系式构造模块,用于构造范德蒙矩阵所对应的逆矩阵的每一个元素计算关系式;
拉格朗日插值法基本多项式定义模块,用于定义一拉格朗日插值法基本多项式;
展开操作模块,用于对所述拉格朗日插值法基本多项式执行展开操作;
代入模块,用于将经典的基本对称函数S代入执行展开操作的拉格朗日插值法基本多项式;
计算式变换模块,用于对代入所述经典的基本对称函数S后的计算式进行变换,得到范德蒙矩阵的逆矩阵的每一个元素Zij
CN202010466908.7A 2020-05-28 2020-05-28 一种基于分布式存储的rs纠删快速解码方法及系统 Active CN111697976B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010466908.7A CN111697976B (zh) 2020-05-28 2020-05-28 一种基于分布式存储的rs纠删快速解码方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010466908.7A CN111697976B (zh) 2020-05-28 2020-05-28 一种基于分布式存储的rs纠删快速解码方法及系统

Publications (2)

Publication Number Publication Date
CN111697976A true CN111697976A (zh) 2020-09-22
CN111697976B CN111697976B (zh) 2023-01-06

Family

ID=72478707

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010466908.7A Active CN111697976B (zh) 2020-05-28 2020-05-28 一种基于分布式存储的rs纠删快速解码方法及系统

Country Status (1)

Country Link
CN (1) CN111697976B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858169A (zh) * 2020-07-10 2020-10-30 山东云海国创云计算装备产业创新中心有限公司 一种数据恢复方法、系统及相关组件
CN112052115A (zh) * 2020-09-28 2020-12-08 山东云海国创云计算装备产业创新中心有限公司 数据存储纠删方法、装置、设备及计算机可读存储介质
CN112286449A (zh) * 2020-10-16 2021-01-29 山东云海国创云计算装备产业创新中心有限公司 一种rs纠删处理设备及分布式存储系统
CN113836482A (zh) * 2021-07-30 2021-12-24 深圳大学 一种编码分布式计算系统
WO2022127289A1 (zh) * 2020-12-18 2022-06-23 苏州浪潮智能科技有限公司 基于高斯消元进行校验恢复的方法、系统、设备及介质
WO2023197506A1 (zh) * 2022-04-11 2023-10-19 苏州浪潮智能科技有限公司 一种数据存储方法、系统、设备及存储介质
CN114879904B (zh) * 2022-04-22 2024-05-03 山东云海国创云计算装备产业创新中心有限公司 一种数据存储纠删方法、装置、设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192924A (zh) * 2006-11-24 2008-06-04 北京大学 基于Reed-Solomon码的P2P存储系统编码方法
CN104461781A (zh) * 2014-12-01 2015-03-25 华中科技大学 一种基于纠删码的数据块重建方法
CN105338035A (zh) * 2014-08-07 2016-02-17 苏宁云商集团股份有限公司 基于rs纠删码的安全存储方法和装置
CN105335150A (zh) * 2014-08-13 2016-02-17 苏宁云商集团股份有限公司 纠删码数据的快速编解码方法和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192924A (zh) * 2006-11-24 2008-06-04 北京大学 基于Reed-Solomon码的P2P存储系统编码方法
CN105338035A (zh) * 2014-08-07 2016-02-17 苏宁云商集团股份有限公司 基于rs纠删码的安全存储方法和装置
CN105335150A (zh) * 2014-08-13 2016-02-17 苏宁云商集团股份有限公司 纠删码数据的快速编解码方法和系统
CN104461781A (zh) * 2014-12-01 2015-03-25 华中科技大学 一种基于纠删码的数据块重建方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111858169A (zh) * 2020-07-10 2020-10-30 山东云海国创云计算装备产业创新中心有限公司 一种数据恢复方法、系统及相关组件
CN112052115A (zh) * 2020-09-28 2020-12-08 山东云海国创云计算装备产业创新中心有限公司 数据存储纠删方法、装置、设备及计算机可读存储介质
CN112052115B (zh) * 2020-09-28 2022-07-08 山东云海国创云计算装备产业创新中心有限公司 数据存储纠删方法、装置、设备及计算机可读存储介质
CN112286449A (zh) * 2020-10-16 2021-01-29 山东云海国创云计算装备产业创新中心有限公司 一种rs纠删处理设备及分布式存储系统
CN112286449B (zh) * 2020-10-16 2023-04-25 山东云海国创云计算装备产业创新中心有限公司 一种rs纠删处理设备及分布式存储系统
WO2022127289A1 (zh) * 2020-12-18 2022-06-23 苏州浪潮智能科技有限公司 基于高斯消元进行校验恢复的方法、系统、设备及介质
CN113836482A (zh) * 2021-07-30 2021-12-24 深圳大学 一种编码分布式计算系统
CN113836482B (zh) * 2021-07-30 2023-12-05 深圳大学 一种编码分布式计算系统
WO2023197506A1 (zh) * 2022-04-11 2023-10-19 苏州浪潮智能科技有限公司 一种数据存储方法、系统、设备及存储介质
CN114879904B (zh) * 2022-04-22 2024-05-03 山东云海国创云计算装备产业创新中心有限公司 一种数据存储纠删方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN111697976B (zh) 2023-01-06

Similar Documents

Publication Publication Date Title
CN111697976B (zh) 一种基于分布式存储的rs纠删快速解码方法及系统
CN111682874B (zh) 一种数据恢复的方法、系统、设备及可读存储介质
WO2020047707A1 (zh) 分布式存储系统的数据编码、解码及修复方法
CN111858169B (zh) 一种数据恢复方法、系统及相关组件
CN112799875B (zh) 基于高斯消元进行校验恢复的方法、系统、设备及介质
CN114153651B (zh) 一种数据编码方法、装置、设备及介质
CN113505019B (zh) 一种纠删码数据及校验恢复方法、装置、设备及可读介质
CN112000512B (zh) 一种数据修复方法及相关装置
CN111858142A (zh) 一种数据处理方法、装置及电子设备和存储介质
CN115454712B (zh) 一种校验码恢复方法、系统、电子设备及存储介质
CN110837436A (zh) 有限域上高效纠删码轻量化自动解码方法、智能终端模块
CN112181707B (zh) 分布式存储数据恢复调度方法、系统、设备及存储介质
CN111525931B (zh) Ldpc译码器、ldpc译码方法、存储介质和电子设备
CN115113816A (zh) 一种纠删码数据处理系统、方法、计算机设备及介质
US11323139B2 (en) Apparatuses and methods for mapping frozen sets between polar codes and product codes
CN115269258A (zh) 一种数据恢复的方法和系统
US10379952B2 (en) Data recovery and regeneration using parity code
JP2012033169A (ja) バックアップシステムにおける符号化を使用して、ライブチェックポインティング、同期、及び/又は復旧をサポートするための方法及び装置
Haibo et al. Improved decoding algorithm for the generalized EVENODD array code
CN106302573B (zh) 一种采用擦除码处理数据的方法、系统及装置
CN107615248B (zh) 分布式数据存储方法、控制设备和系统
CN114296648B (zh) 分布式云存储数据的维护方法、装置、设备和可读介质
US11528037B1 (en) Hardware architecture for local erasure correction in SSD/UFS via maximally recoverable codes
CN114244376B (zh) 一种数据编码方法、系统、设备以及介质
Yang et al. Hierarchical Hybrid Error Correction for Time-Sensitive Devices at the Edge

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant