Movatterモバイル変換


[0]ホーム

URL:


CN104461781A - Data block reconstruction method based on erasure codes - Google Patents

Data block reconstruction method based on erasure codes
Download PDF

Info

Publication number
CN104461781A
CN104461781ACN201410717059.2ACN201410717059ACN104461781ACN 104461781 ACN104461781 ACN 104461781ACN 201410717059 ACN201410717059 ACN 201410717059ACN 104461781 ACN104461781 ACN 104461781A
Authority
CN
China
Prior art keywords
data
matrix
check
block
blocks
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
CN201410717059.2A
Other languages
Chinese (zh)
Other versions
CN104461781B (en
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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and TechnologyfiledCriticalHuazhong University of Science and Technology
Priority to CN201410717059.2ApriorityCriticalpatent/CN104461781B/en
Publication of CN104461781ApublicationCriticalpatent/CN104461781A/en
Application grantedgrantedCritical
Publication of CN104461781BpublicationCriticalpatent/CN104461781B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Landscapes

Abstract

Translated fromChinese

一种基于纠删码的数据块重建方法,属于计算机存储技术领域,解决现有数据块修复方法需要传输大量数据的问题,以减少重建数据的传输量。本发明包括数据分块步骤、构造生成矩阵G步骤、生成校验块步骤、检查数据块状态步骤、构造修复矩阵步骤和修复数据块步骤。本发明将原始文件分为k个数据块,将每个数据块继续等分为r个数据片;k个数据块编码为m个校验块,每个校验块也包含r个校验片。重建任意一个数据块时,从剩余的每个数据块的r个数据片和校验块的r个校验片中取r/m片(该方法保证r被m整除),从而重建一个数据块只需要总量(m+k-1)r/m的数据片,相对里德-所罗门编码重建一个数据块的数据量,有了明显的减少。

A data block reconstruction method based on an erasure code belongs to the technical field of computer storage, and solves the problem that a large amount of data needs to be transmitted in existing data block repair methods, so as to reduce the transmission amount of reconstructed data. The invention includes the steps of dividing data into blocks, constructing a generating matrix G, generating check blocks, checking the status of data blocks, constructing a repair matrix and repairing data blocks. The present invention divides the original file into k data blocks, and divides each data block into r data slices equally; k data blocks are coded into m check blocks, and each check block also includes r check slices . When rebuilding any data block, r/m slices are taken from the r data slices of each remaining data block and the r check slices of the check block (this method ensures that r is divisible by m), thus rebuilding a data block Only the total amount of (m+k-1)r/m data slices is needed, which is significantly reduced compared to the amount of data required to reconstruct a data block by Reed-Solomon encoding.

Description

Translated fromChinese
一种基于纠删码的数据块重建方法A Data Block Reconstruction Method Based on Erasure Code

技术领域technical field

本发明属于计算机存储技术领域,具体涉及一种基于纠删码的数据块重建方法,可减少重建数据传输。The invention belongs to the technical field of computer storage, and in particular relates to a data block reconstruction method based on an erasure code, which can reduce reconstruction data transmission.

背景技术Background technique

从RAID(独立硬盘冗余阵列)到分布式存储系统,纠删码广泛应用于存储系统中,用于防止部分数据丢失或数据服务器宕机导致的数据不可访问。From RAID (Redundant Array of Independent Hard Disks) to distributed storage systems, erasure codes are widely used in storage systems to prevent partial data loss or data inaccessibility caused by data server downtime.

纠删码是一种数据保护的编码方法,它首先将原始数据分为等大的数据块,然后再将数据块编码为校验块。当若干个数据块或校验块丢失时,纠删码技术保证原始数据仍然可以恢复。Erasure coding is a coding method for data protection. It first divides the original data into data blocks of equal size, and then encodes the data blocks into check blocks. When several data blocks or check blocks are lost, the erasure code technology ensures that the original data can still be recovered.

传统的编码方法将原始数据等分为k份数据块,编码生成m份校验块并将它们存储在k+m个不同的存储节点。存储节点是存储设备的逻辑抽象,既可以是一个磁盘也可以是一个存储服务器。所有(k+m)块数据块和校验块中的任意k块都可以重建出k个数据块。但是这类纠删码也面临着一个修复带宽问题:重建一个数据块需要该数据块大小的k倍磁盘I/O和网络流量,占用大量的存储资源和网络资源。The traditional encoding method divides the original data into k data blocks, encodes m check blocks and stores them in k+m different storage nodes. A storage node is a logical abstraction of a storage device, which can be either a disk or a storage server. Any k blocks in all (k+m) data blocks and check blocks can reconstruct k data blocks. However, this type of erasure code also faces a repair bandwidth problem: rebuilding a data block requires k times the size of the data block in disk I/O and network traffic, occupying a large amount of storage resources and network resources.

以(n,k)里德-所罗门编码为例,n是数据块和校验块的总个数,k是数据块个数,m=n-k是校验块个数。当使用(n,k)里德-所罗门编码对数据量为M的文件进行编码时,首先将文件等分为k个数据块:D0、D1、...、Dk-1,每个数据块大小为M/k,接着计算生成矩阵和k个数据块的乘积(计算基于有限域),得到m个校验块C0、C1、…、Cm-1,每个校验块大小也是M/k。(n,k)里德-所罗门编码的生成矩阵是一个基于有限域GF(2w)的m行k列的矩阵,该矩阵可以是变换后的范德尔蒙德矩阵(Vandermonde matrix),也可以是柯西矩阵(Cauchy matrix)。当一个数据块或校验块失效时,需要重建数据块或校验块以保证可靠性。如果失效的是校验块,利用k块数据块可以重新编码得到;如果失效的是数据块,利用剩余n-1块数据块和校验块中的任意k块可重建该数据块。无论是失效的是一块数据块还是一块校验块,都需要k块整块数据块或校验块进行重建,所需要的数据量是M。Taking (n, k) Reed-Solomon encoding as an example, n is the total number of data blocks and check blocks, k is the number of data blocks, and m=nk is the number of check blocks. When using (n, k) Reed-Solomon encoding to encode a file with a data volume of M, the file is first divided into k data blocks: D0 , D1 , ..., Dk-1 , each The size of each data block is M/k, and then calculate the product of the generator matrix and k data blocks (the calculation is based on the finite field), and obtain m check blocks C0 , C1 , ..., Cm-1 , each check The block size is also M/k. The generator matrix of (n, k) Reed-Solomon coding is a matrix with m rows and k columns based on finite field GF(2w ), which can be a transformed Vandermonde matrix, or is the Cauchy matrix. When a data block or check block fails, the data block or check block needs to be rebuilt to ensure reliability. If the invalidation is a check block, k data blocks can be used to re-encode it; if the invalidation is a data block, the data block can be reconstructed by using any k of the remaining n-1 data blocks and check blocks. Regardless of whether it is a data block or a check block that fails, k entire data blocks or check blocks are required to rebuild, and the required data volume is M.

现有减少单数据节点失效所需重建数据量的编码方法往往牺牲了最优的存储效率或者最大距离可分(MDS)性质。简单再生码(Simple RegeneratingCodes,见论文:"Simple regenerating codes:Network coding for cloud storage."INFOCOM,2012Proceedings IEEE.IEEE,2012.)在每个存储节点多存储1/f的数据量,f越大,额外的存储开销越小,但相应的修复带宽也越大,反之亦然。局部重建码(Local Reconstruction Codes,见论文:"Erasure Coding inWindows Azure Storage."USENIX Annual Technical Conference.2012.)将数据块分组,不仅在组内进行编码,并在组间进行编码,这样可以将大部分单点失效的重建局限在组内进行,从而减少了重建数据量,但局部重建码需要额外的存储开销,且不满足MDS性质。功能性最小存储再生码(FunctionalMinimum Storage Regenerating codes,见论文:NCCloud:ANetwork-Coding-Based Storage System in a Cloud-of-Clouds[J].2013.)虽然存储和修复单个节点失效所需要的数据量都是最优的,但存在计算开销大,且保存的不是原来的数据,因此读取数据时需要解码等缺点。Existing encoding methods to reduce the amount of reconstructed data required for a single data node failure often sacrifice optimal storage efficiency or maximum distance separability (MDS) properties. Simple Regenerating Codes (Simple Regenerating Codes, see the paper: "Simple regenerating codes: Network coding for cloud storage." INFOCOM, 2012 Proceedings IEEE.IEEE, 2012.) stores 1/f more data in each storage node, the larger f is, The smaller the additional storage overhead, the larger the corresponding repair bandwidth, and vice versa. Local Reconstruction Codes (Local Reconstruction Codes, see the paper: "Erasure Coding in Windows Azure Storage." USENIX Annual Technical Conference.2012.) group data blocks, code not only within the group, but also between groups, so that large The reconstruction of partial single-point failure is limited to the group, thereby reducing the amount of reconstruction data, but the local reconstruction code requires additional storage overhead and does not satisfy the MDS property. Functional Minimum Storage Regenerating codes (FunctionalMinimum Storage Regenerating codes, see the paper: NCCloud: ANetwork-Coding-Based Storage System in a Cloud-of-Clouds[J].2013.) Although the amount of data required to store and repair a single node failure Both are optimal, but there are disadvantages such as high computational overhead, and the storage is not the original data, so it needs to be decoded when reading the data.

发明内容Contents of the invention

本发明提供一种基于纠删码的数据块重建方法,解决现有数据块修复方法需要传输大量数据的问题,以减少重建数据的传输量。The invention provides a data block reconstruction method based on an erasure code, which solves the problem that a large amount of data needs to be transmitted in the existing data block repair method, so as to reduce the transmission amount of reconstruction data.

本发明所提供的一种基于纠删码的数据块重建方法,包括数据分块步骤、构造生成矩阵G步骤、生成校验块步骤、检查数据块状态步骤、构造修复矩阵步骤和修复数据块步骤,其特征在于:A data block reconstruction method based on an erasure code provided by the present invention includes the steps of dividing data into blocks, constructing a generation matrix G, generating a check block, checking the state of a data block, constructing a repair matrix, and repairing a data block. , characterized by:

(1)数据分块步骤:(1) Data block steps:

将数据量为M的原始文件等分为k个数据块Dj,j=0、...、k-1,再将k个数据块分别保存在k个数据节点上,进而将各数据节点上的数据块Dj等分为r个数据片Dj,p,p=0、...、r-1,r=mk-1,k≥2,m≥2;等分过程中不足部分用0补齐并记录不足数据块或数据片的长度;Divide the original file with a data volume of M into k data blocks Dj , j=0,...,k-1, and then store the k data blocks on k data nodes respectively, and then divide each data node The data block Dj above is equally divided into r pieces of data Dj, p , p=0,..., r-1, r=mk-1 , k≥2, m≥2; Partially fill with 0 and record the length of the insufficient data block or data slice;

对所有数据片赋予序号,数据片Dj,p为第j×r+p+1个数据片;Assign serial numbers to all data slices, data slice Dj, p is the j×r+p+1th data slice;

(2)构造生成矩阵G步骤:(2) Steps of constructing generator matrix G:

生成矩阵G是m行、k列的分块矩阵,包括m×k个子矩阵Gi,jThe generator matrix G is a block matrix with m rows and k columns, including m×k sub-matrices Gi, j :

GG0,00,0GG0,10,1......GG00,,kk--11GG1,01,0GG1,11,1......GG11,,kk--11........................GGmm--1,01,0GGmm--11,,11......GGmm--11,,kk--11,,

其中,每个子矩阵Gi,j为一个r行、r列的方阵,满足下面等式:Among them, each sub-matrix Gi,j is a square matrix with r rows and r columns, which satisfies the following equation:

GGii,,jj==((IImmii++))⊗⊗jj⊗⊗((IImm))⊗⊗((kk--11--jj))··ααii,,jj,,ii==00~~mm--11,,jj==00~~kk--11;;

其中,表示矩阵的张量乘(也称为Kronecker乘),Im表示m行、m列的单位矩阵,表示单位矩阵Im所有元素循环左移i位后的结果,当i=0时,表示j个连续张量乘的结果,αi,j是(m+k,k)-里德-所罗门编码生成矩阵中第i行第j列元素;in, Represents the tensor multiplication of matrices (also known as Kronecker multiplication), Im represents the identity matrix of m rows and m columns, Indicates the result of all elements of the identity matrixIm being cyclically shifted to the left by i bits, when i=0, means j The result of continuous tensor multiplication, αi, j is the (m+k, k)-Reed-Solomon encoding generation matrix element in row i and column j;

(3)生成校验块步骤:(3) Generate check block steps:

分别计算生成矩阵G中各行子矩阵和所有数据块的乘积,得到m个校验块Ci,i=0~m-1,再将m个校验块分别保存在m个数据节点上,第i个校验块Ci为生成矩阵G的第i行子矩阵与k个数据块的乘积:Calculate the product of each row sub-matrix in the generator matrix G and all data blocks respectively to obtain m check blocks Ci , i=0~m-1, and then store the m check blocks on m data nodes respectively, the first The i check block Ci is the product of the i-th row sub-matrix of the generator matrix G and the k data blocks:

CCii==CCii,,00CCii,,11......CCii,,rr--11==GGii,,00GGii,,11......GGii,,kk--11·&Center Dot;DD.00DD.11......DD.kk--11;;

校验块Ci再等分为r个校验片Ci,p,p=0~r-1;对所有校验片赋予序号,校验片Ci,p为第i×r+p+1个校验片;The check block Ci is divided into r check slices Ci, p , p=0~r-1; all check slices are assigned serial numbers, and the check slice Ci, p is the i×r+p+ 1 check sheet;

(4)检查数据块状态步骤:(4) Check the data block status steps:

定期依次检查各数据节点上的数据块是否出错或丢失,是则转步骤(5);否则不作处理;Regularly check whether the data blocks on each data node are wrong or lost, if so, turn to step (5); otherwise, do not process;

(5)构造修复矩阵步骤,包括下述子步骤:(5) The step of constructing the repair matrix includes the following sub-steps:

(5.1)当第i个数据节点上的数据块Di出错或丢失,将生成矩阵G中第i列的子矩阵全设置为0,构成第一中间矩阵GA(5.1) When the data block Di on the i-th data node is wrong or lost, all the sub-matrixes in the i-th column in the generation matrix G are set to 0 to form the first intermediate matrix GA ;

(5.2)在第一中间矩阵GA中选取任意一个非零子矩阵,在该非零子矩阵中选取任意一个非零矩阵元素作为种子,在第一中间矩阵GA中标记该非零矩阵元素所在的行向量与列向量;(5.2) Select any non-zero sub-matrix in the first intermediate matrix GA , select any non-zero matrix element in this non-zero sub-matrix as a seed, and mark this non-zero matrix element in the first intermediate matrix GA The row vector and column vector where it is located;

(5.3)对所标记的行向量与列向量中的每个非零矩阵元素,在第一中间矩阵GA中标记该非零矩阵元素所在的行向量和列向量;(5.3) for each non-zero matrix element in the marked row vector and the column vector, mark the row vector and the column vector where the non-zero matrix element is located in the first intermediate matrixGA ;

(5.4)判断是否有新的行向量和列向量被标记,是则转子步骤(5.3),否则进行子步骤(5.5);(5.4) Judging whether there are new row vectors and column vectors to be marked, if yes, the rotor step (5.3), otherwise proceed to the sub-step (5.5);

(5.5)构成修复矩阵Mr(5.5) Constitute the repair matrix Mr :

首先生成一个k×r行,k×r列的单位矩阵GBFirst generate an identity matrix GB with k×r rows and k×r columns;

将第一中间矩阵GA标记的列向量序号作为行向量序号,从单位矩阵GB中选取对应的行向量,作为第一行向量组;The column vector sequence number of the first intermediate matrix GA mark is used as the row vector sequence number, and the corresponding row vector is selected from the identity matrix GB as the first row vector group;

将第一中间矩阵GA标记的行向量序号作为行向量序号,从生成矩阵G中选取对应的行向量,作为第二行向量组;The row vector sequence number marked by the first intermediate matrix GA is used as the row vector sequence number, and the corresponding row vector is selected from the generator matrix G as the second row vector group;

将所述第一行向量组置于第二行向量组之上,构成第二中间矩阵Gc,将第二中间矩阵Gc中全零列删除得到正方矩阵Gd,然后从正方矩阵Gd的逆矩阵中选择从i×r/m开始的r个行向量,构成r行、(k+m-1)×r/m列的修复矩阵MrPlace the first row vector group on the second row vector group to form a second intermediate matrix Gc , delete all zero columns in the second intermediate matrix Gc to obtain a square matrix Gd , and then obtain a square matrix G d from the square matrix Gd the inverse matrix of Select r row vectors starting from i×r/m to form a repair matrix Mr with r rows and (k+m-1)×r/m columns;

(6)修复数据块步骤:(6) Repair data block steps:

选取第一中间矩阵GA标记的列向量的列序号作为数据片序号,其所对应的各数据片作为数据片序列SDr,数据片数量为(k-1)×r/m,选取第一中间矩阵GA标记的行向量的行序号作为校验片序号,其所对应的各校验片作为校验片序列SCr,校验片数量为m×r/m;Select the column number of the column vector marked by the first intermediate matrix GA as the data piece number, and the corresponding data pieces as the data piece sequence SDr , the number of data pieces is (k-1)×r/m, select the first The row number of the row vector marked by the intermediate matrix GA is used as the check slice number, and the corresponding check slices are used as the check slice sequence SCr , and the number of check slices is m×r/m;

通过计算Mr和数据片序列SDr和校验片序列SCr的乘积重建数据块DiReconstruct data block Di by calculating the product of Mr and data slice sequence SDr and check slice sequence SCr :

DD.ii==Mmrr××SDSDrrSCSCrr..

本发明将原始文件分为k个数据块,将每个数据块继续等分为r个数据片;k个数据块编码为m个校验块,每个校验块也包含r个校验片。重建任意一个数据块时,从剩余的每个数据块的r个数据片和校验块的r个校验片中取r/m片(该方法保证r被m整除),从而重建一个数据块只需要总量(m+k-1)r/m的数据片,相对里德-所罗门编码重建一个数据块的数据量,有了明显的减少。The present invention divides the original file into k data blocks, and divides each data block into r data slices equally; k data blocks are coded into m check blocks, and each check block also includes r check slices . When rebuilding any data block, take r/m slices from the r data slices of each remaining data block and the r check slices of the check block (this method guarantees that r is divisible by m), thus rebuilding a data block Only the total amount of (m+k-1)r/m data slices is needed, which is significantly reduced compared to the amount of data required to reconstruct a data block by Reed-Solomon encoding.

本发明要求k≥2,且m≥2,适用于重建存储数据块的数据节点,而不适用于重建存储校验块的校验节点。The present invention requires k≥2 and m≥2, which is suitable for rebuilding data nodes storing data blocks, but not suitable for rebuilding check nodes storing check blocks.

附图说明Description of drawings

图1为本发明的流程示意图;Fig. 1 is a schematic flow sheet of the present invention;

图2为构造修复矩阵步骤的流程示意图。Fig. 2 is a schematic flowchart of the steps of constructing a repair matrix.

具体实施方式Detailed ways

如图1所示,本发明的实施例,结合一个m=2,k=3的实例,包括数据分块步骤、构造生成矩阵G步骤、生成校验块步骤、检查步骤、构造修复矩阵步骤和修复数据块步骤:As shown in Figure 1, the embodiment of the present invention, in conjunction with an example of m=2, k=3, includes a data block step, a step of constructing a generator matrix G, a step of generating a check block, a step of checking, a step of constructing a repair matrix and Repair data block steps:

(1)数据分块步骤:(1) Data block steps:

将数据量为66MB的原始文件等分为3个22MB的数据块Dj,j=0、1、2,再将3个数据块分别保存在3个数据节点N0,N1,N2上,进而将各数据节点上的数据块Dj等分为4个数据片Dj,p,p=0、1、2、3;Divide the original file with a data volume of 66MB into three 22MB data blocks Dj , j=0, 1, 2, and then store the three data blocks in three data nodes N0 , N1 , and N2 respectively , and further divide the data block Dj on each data node into four data slices Dj,p , p=0, 1, 2, 3;

对所有数据片赋予序号,数据片Dj,p为第j×4+p+1个数据片;Assign serial numbers to all data slices, data slice Dj, p is the j×4+p+1th data slice;

(2)构造生成矩阵G步骤:(2) Steps of constructing generator matrix G:

生成矩阵G是2行,3列的分块矩阵,包括2×3个子矩阵:The generator matrix G is a block matrix with 2 rows and 3 columns, including 2×3 sub-matrices:

GG==GG0,00,0GG0,10,1GG0,20,2GG1,01,0GG1,11,1GG1,21,2,,

其中,每个子矩阵为一个4行、4列的方阵,满足下面等式:Among them, each sub-matrix is a square matrix with 4 rows and 4 columns, which satisfies the following equation:

GGii,,jj==((IImmii++))⊗⊗jj⊗⊗((IImm))⊗⊗((kk--11--jj))·&Center Dot;ααii,,jj,,ii==00~~11,,jj==00~~22;;

GG0,00,0==GG0,10,1==GG0,20,2==11000011⊗⊗11000011·&Center Dot;11==11000000001100000000110000000011,,

GG11,,00==11000011⊗⊗11000011·&Center Dot;ff==ff00000000ff00000000ff00000000ff,,

GG11,,11==00111100⊗⊗11000011·&Center Dot;88==00008800000000888800000000880000,,

GG11,,22==00111100⊗⊗00111100·&Center Dot;66==00000066000066000066000066000000;;

矩阵中元素均以16进制表示;相应的(5,3)-里德-所罗门编码生成矩阵为2×3的矩阵:The elements in the matrix are all expressed in hexadecimal; the corresponding (5,3)-Reed-Solomon encoding generation matrix is a 2×3 matrix:

111111ff8866;;

αi,j是(5,3)-里德-所罗门编码生成矩阵中第i行第j列元素;αi,j is the (5,3)-Reed-Solomon encoding generation matrix element in row i and column j;

(3)生成校验块步骤:(3) Generate check block steps:

分别计算生成矩阵G中各行子矩阵和所有数据块D0、D1、D2的乘积,得到2个校验块C0和C1,再将2个校验块分别保存在2个数据节点N3,N4上:Calculate the product of each row sub-matrix in the generator matrix G and all data blocks D0 , D1 , and D2 to obtain two check blocks C0 and C1 , and then store the two check blocks in two data nodes N3 , N4 on:

CC00CC11==GG0,00,0GG0,10,1GG0,20,2GG1,01,0GG1,11,1GG1,21,2·&Center Dot;DD.00DD.11DD.22

每个校验块22MB,每个校验块可以分为4个校验片,记作Ci,p,以C0,0和C1,1为例,其计算如下:Each check block is 22MB, each check block can be divided into 4 check slices, denoted as Ci,p , taking C0,0 and C1,1 as an example, the calculation is as follows:

CC0,00,0==DD.0,00,0⊕⊕DD.1,01,0⊕⊕DD.2,02,0;;

CC1,11,1==1515·&Center Dot;DD.0,10,1⊕⊕88·&Center Dot;DD.1,31,3⊕⊕66·&Center Dot;DD.2,22,2;;

其中表示异或运算,Ci,p是所有校验片中编号第i×4+p+1个校验片,p=0~3;in Indicates XOR operation, Ci, p is the number i×4+p+1 check piece in all check pieces, p=0~3;

(4)检查数据块状态步骤:(4) Check the data block status steps:

定期依次检查各数据节点上的数据块是否出错或丢失,是则转步骤(5);否则不作处理;Regularly check whether the data blocks on each data node are wrong or lost, if so, turn to step (5); otherwise, do not process;

(5)构造修复矩阵步骤,如图2所示,包括下述子步骤:(5) construct repair matrix step, as shown in Figure 2, comprise following sub-step:

(5.1)当第0个数据节点上的数据块D0出错或丢失,其四个数据片均出错或丢失,将生成矩阵G中第0列的子矩阵全设置为0,构成第一中间矩阵GA(5.1) When the data block D0 on the 0th data node is wrong or lost, and its four data pieces are all wrong or lost, all the sub-matrixes in the 0th column in the generation matrix G are set to 0 to form the first intermediate matrix GA :

GGAA==000000001100000011000000000000000011000000110000000000000000110000001100000000000000001100000011000000000000880000000066000000000000008800006600000000008800000000660000000000000088000066000000;;

(5.2)在第一中间矩阵GA中选取非零子矩阵G0,1,在子矩阵G0,1中选取矩阵元素1(GA的第一行第五列)作为种子,在第一中间矩阵GA中标记该非零矩阵元素所在的行向量(第一行各矩阵元素)与列向量(第五列各矩阵元素);(5.2) Select a non-zero sub-matrix G0,1 in the first intermediate matrix GA , select matrix element 1 (the first row and fifth column of GA ) in the sub-matrix G0,1 as the seed, in the first The row vector (each matrix element in the first row) and the column vector (each matrix element in the fifth column) where the non-zero matrix element is marked in the intermediate matrix GA ;

(5.3)对所标记的行向量与列向量中的每个非零矩阵元素,在第一中间矩阵GA中标记该非零矩阵元素所在的行向量和列向量;(5.3) for each non-zero matrix element in the marked row vector and the column vector, mark the row vector and the column vector where the non-zero matrix element is located in the first intermediate matrixGA ;

(5.4)判断是否有新的行向量和列向量被标记,是则转子步骤(5.3),否则进行子步骤(5.5);共计标记了四个行向量第1、2、7、8行向量和四个列向量第5、6、9、10列向量;(5.4) Judging whether there are new row vectors and column vectors to be marked, if so, then the rotor step (5.3), otherwise proceed to sub-step (5.5); a total of four row vectors 1st, 2nd, 7th, 8th row vectors and The 5th, 6th, 9th, and 10th column vectors of four column vectors;

(5.5)构成修复矩阵Mr(5.5) Constitute the repair matrix Mr :

首先生成一个12行,12列大小的单位矩阵GBFirst generate a 12-row, 12-column identity matrix GB ;

将第一中间矩阵GA标记的列向量序号第5、6、9、10作为行向量序号,从单位矩阵GB中选取对应的行向量,作为第一行向量组;The column vector number 5, 6, 9, and 10 marked by the first intermediate matrix GA is used as the row vector number, and the corresponding row vector is selected from the unit matrix GB as the first row vector group;

000000001100000000000000000000000011000000000000000000000000000011000000000000000000000000110000,,

将第一中间矩阵GA标记的行向量序号第1、2、7、8作为行向量序号,从生成矩阵G中选取对应的行向量,作为第二行向量组;Using the row vector numbers 1, 2, 7, and 8 marked by the first intermediate matrix GA as the row vector numbers, select the corresponding row vector from the generator matrix G as the second row vector group;

1100000011000000110000000011000000110000001100000000ff008800000000660000000000ff0088000066000000,,

将所述第一行向量组置于第二行向量组之上,构成第二中间矩阵GcPut the first row vector group on the second row vector group to form the second intermediate matrix Gc :

GGcc==0000000011000000000000000000000000110000000000000000000000000000110000000000000000000000001100001100000011000000110000000011000000110000001100000000ff008800000000660000000000ff0088000066000000,,

将第二中间矩阵Gc中全零列删除得到正方矩阵GdDelete all zero columns in the second intermediate matrix Gc to get a square matrix Gd :

GGdd==0000000011000000000000000011000000000000000011000000000000000011110000001100110000110000001100110000ff0088000066000000ff00886600,,

Gd的逆矩阵Inverse matrix of Gd

GGdd--11==11000000110000001111000011110000525296960053539696969696960000cc4453530000000096961100000000000000001100000000000000001100000000000000001100000000,,

然后从正方矩阵Gd的逆矩阵中选择从0开始的4个行向量,构成4行、8列的修复矩阵MrThen from the inverse matrix of the square matrix Gd Select 4 row vectors starting from 0 to form a repair matrix Mr with 4 rows and 8 columns:

Mmrr==11000000110000001111000011110000525296960053539696969696960000cc445353000000009696;;

(6)修复数据块步骤:(6) Repair data block steps:

选取第一中间矩阵GA标记的列向量的列序号第5、6、9、10作为数据片序号,其所对应的各数据片作为数据片序列SDr,数据片数量为4,分别为数据片D1,0,D1,1,D2,0,D2,1,选取第一中间矩阵GA标记的行向量的行序号第1、2、7、8作为校验片序号,其所对应的各校验片作为校验片序列SCr,校验片数量为4,分别为校验片C0,0,C0,1,C1,2,C1,3Select the column numbers 5, 6, 9, and 10 of the column vector marked by the first intermediate matrix GA as the data piece number, and the corresponding data pieces as the data piece sequence SDr , the number of data pieces is 4, respectively Slices D1,0 , D1,1 , D2,0 , D2,1 , select the row numbers 1, 2, 7, and 8 of the row vector marked by the first intermediate matrix GA as the verification slice numbers, and The corresponding check slices are used as the check slice sequence SCr , and the number of check slices is 4, which are check slices C0,0 , C0,1 , C1,2 , C1,3 ;

通过计算Mr和数据片序列SDr和校验片序列SCr的乘积重建数据块D0Reconstruct data block D0 by calculating the product of Mr and data slice sequence SDr and check slice sequence SCr :

DD.00==DD.0,00,0DD.0,10,1DD.0,20,2DD.0,30,3==11000000110000001111000011110000525296960053539696969696960000cc445353000000009696·&Center Dot;DD.1,01,0DD.1,11,1DD.2,02,0DD.2,12,1DD.00,,00DD.0,10,1DD.1,21,2DD.1,31,3..

Claims (1)

Translated fromChinese
1.一种基于纠删码的数据块重建方法,包括数据分块步骤、构造生成矩阵G步骤、生成校验块步骤、检查数据块状态步骤、构造修复矩阵步骤和修复数据块步骤,其特征在于:1. A data block reconstruction method based on erasure codes, comprising a data block step, constructing a generation matrix G step, generating a check block step, checking a data block state step, constructing a repair matrix step and repairing a data block step, its characteristics in:(1)数据分块步骤:(1) Data block steps:将数据量为M的原始文件等分为k个数据块Dj,j=0、...、k-1,再将k个数据块分别保存在k个数据节点上,进而将各数据节点上的数据块Dj等分为r个数据片Dj,p,p=0、...、r-1,r=mk-1,k≥2,m≥2;等分过程中不足部分用0补齐并记录不足数据块或数据片的长度;Divide the original file with a data volume of M into k data blocks Dj , j=0,...,k-1, and then store the k data blocks on k data nodes respectively, and then divide each data node The data block Dj above is equally divided into r pieces of data Dj, p , p=0,..., r-1, r=mk-1 , k≥2, m≥2; Partially fill with 0 and record the length of the insufficient data block or data slice;对所有数据片赋予序号,数据片Dj,p为第j×r+p+1个数据片;Assign serial numbers to all data slices, data slice Dj, p is the j×r+p+1th data slice;(2)构造生成矩阵G步骤:(2) Steps of constructing generator matrix G:生成矩阵G是m行、k列的分块矩阵,包括m×k个子矩阵Gi,jThe generator matrix G is a block matrix with m rows and k columns, including m×k sub-matrices Gi, j :GG0,00,0GG0,10,1......GG00,,kk--11GG1,01,0GG1,11,1......GG11,,kk--11........................GGmm--1,01,0GGmm--1,11,1......GGmm--11,,kk--11,,其中,每个子矩阵Gi,j为一个r行、r列的方阵,满足下面等式:Among them, each sub-matrix Gi,j is a square matrix with r rows and r columns, which satisfies the following equation:Gi,j=(Imi+)⊗j⊗(Im)⊗(k-1-j)·αi,j,i=0~m-1,j=0~k-1;G i , j = ( I m i + ) ⊗ j ⊗ ( I m ) ⊗ ( k - 1 - j ) · α i , j , i=0~m-1, j=0~k-1;其中,表示矩阵的张量乘(也称为Kronecker乘),Im表示m行、m列的单位矩阵,表示单位矩阵Im所有元素循环左移i位后的结果,当i=0时,表示j个连续张量乘的结果,αi,j是(m+k,k)-里德-所罗门编码生成矩阵中第i行第j列元素;in, Represents the tensor multiplication of matrices (also known as Kronecker multiplication), Im represents the identity matrix of m rows and m columns, Indicates the result of all elements of the identity matrixIm being cyclically shifted to the left by i bits, when i=0, means j The result of continuous tensor multiplication, αi, j is the (m+k, k)-Reed-Solomon encoding generation matrix element in row i and column j;(3)生成校验块步骤:(3) Steps to generate check block:分别计算生成矩阵G中各行子矩阵和所有数据块的乘积,得到m个校验块Ci,i=0~m-1,再将m个校验块分别保存在m个数据节点上,第i个校验块Ci为生成矩阵G的第i行子矩阵与k个数据块的乘积:Calculate the product of each row sub-matrix in the generator matrix G and all data blocks respectively to obtain m check blocks Ci , i=0~m-1, and then store the m check blocks on m data nodes respectively, the first The i check block Ci is the product of the i-th row sub-matrix of the generator matrix G and the k data blocks:CCii==CCii,,00CCii,,11......CCii,,rr--11==GGii,,00GGii,,11......GGii,,kk--11·&Center Dot;DD.00DD.11......DD.kk--11;;校验块Ci再等分为r个校验片Cj,p,p=0~r-1;对所有校验片赋予序号,校验片Cj,p为第i×r+p+1个校验片;The check block Ci is divided into r check slices Cj, p , p=0~r-1; all check slices are assigned serial numbers, and the check slice Cj, p is the i×r+p+ 1 check sheet;(4)检查数据块状态步骤:(4) Check the data block status steps:定期依次检查各数据节点上的数据块是否出错或丢失,是则转步骤(5);否则不作处理;Regularly check whether the data blocks on each data node are wrong or lost, if so, turn to step (5); otherwise, do not process;(5)构造修复矩阵步骤,包括下述子步骤:(5) The step of constructing the repair matrix includes the following sub-steps:(5.1)当第i个数据节点上的数据块Di出错或丢失,将生成矩阵G中第i列的子矩阵全设置为0,构成第一中间矩阵GA(5.1) When the data block Di on the i-th data node is wrong or lost, all the sub-matrixes in the i-th column in the generation matrix G are set to 0 to form the first intermediate matrix GA ;(5.2)在第一中间矩阵GA中选取任意一个非零子矩阵,在该非零子矩阵中选取任意一个非零矩阵元素作为种子,在第一中间矩阵GA中标记该非零矩阵元素所在的行向量与列向量;(5.2) Select any non-zero sub-matrix in the first intermediate matrix GA , select any non-zero matrix element in this non-zero sub-matrix as a seed, and mark this non-zero matrix element in the first intermediate matrix GA The row vector and column vector where it is located;(5.3)对所标记的行向量与列向量中的每个非零矩阵元素,在第一中间矩阵GA中标记该非零矩阵元素所在的行向量和列向量;(5.3) for each non-zero matrix element in the marked row vector and the column vector, mark the row vector and the column vector where the non-zero matrix element is located in the first intermediate matrixGA ;(5.4)判断是否有新的行向量和列向量被标记,是则转子步骤(5.3),否则进行子步骤(5.5);(5.4) Judging whether there are new row vectors and column vectors to be marked, if yes, the rotor step (5.3), otherwise proceed to the sub-step (5.5);(5.5)构成修复矩阵Mr(5.5) Constitute the repair matrix Mr :首先生成一个k×r行,k×r列的单位矩阵GBFirst generate an identity matrix GB with k×r rows and k×r columns;将第一中间矩阵GA标记的列向量序号作为行向量序号,从单位矩阵GB中选取对应的行向量,作为第一行向量组;The column vector sequence number of the first intermediate matrix GA mark is used as the row vector sequence number, and the corresponding row vector is selected from the identity matrix GB as the first row vector group;将第一中间矩阵GA标记的行向量序号作为行向量序号,从生成矩阵G中选取对应的行向量,作为第二行向量组;The row vector sequence number marked by the first intermediate matrix GA is used as the row vector sequence number, and the corresponding row vector is selected from the generator matrix G as the second row vector group;将所述第一行向量组置于第二行向量组之上,构成第二中间矩阵Gc,将第二中间矩阵Gc中全零列删除得到正方矩阵Gd,然后从正方矩阵Gd的逆矩阵中选择从i×r/m开始的r个行向量,构成r行、(k+m-1)×r/m列的修复矩阵MrPlace the first row vector group on the second row vector group to form a second intermediate matrix Gc , delete all zero columns in the second intermediate matrix Gc to obtain a square matrix Gd , and then obtain a square matrix G d from the square matrix Gd the inverse matrix of Select r row vectors starting from i×r/m to form a repair matrix Mr with r rows and (k+m-1)×r/m columns;(6)修复数据块步骤:(6) Repair data block steps:选取第一中间矩阵GA标记的列向量的列序号作为数据片序号,其所对应的各数据片作为数据片序列SDr,数据片数量为(k-1)×r/m,选取第一中间矩阵GA标记的行向量的行序号作为校验片序号,其所对应的各校验片作为校验片序列SCr,校验片数量为m×r/m;Select the column number of the column vector marked by the first intermediate matrix GA as the data piece number, and the corresponding data pieces as the data piece sequence SDr , the number of data pieces is (k-1)×r/m, select the first The row number of the row vector marked by the intermediate matrix GA is used as the check slice number, and the corresponding check slices are used as the check slice sequence SCr , and the number of check slices is m×r/m;通过计算Mr和数据片序列SDr和校验片序列SCr的乘积重建数据块DiReconstruct data block Di by calculating the product of Mr and data slice sequence SDr and check slice sequence SCr :DD.ii==Mmrr××SDSDrrSCSCrr..
CN201410717059.2A2014-12-012014-12-01A kind of data block method for reconstructing based on correcting and eleting codesActiveCN104461781B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN201410717059.2ACN104461781B (en)2014-12-012014-12-01A kind of data block method for reconstructing based on correcting and eleting codes

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201410717059.2ACN104461781B (en)2014-12-012014-12-01A kind of data block method for reconstructing based on correcting and eleting codes

Publications (2)

Publication NumberPublication Date
CN104461781Atrue CN104461781A (en)2015-03-25
CN104461781B CN104461781B (en)2017-10-31

Family

ID=52907877

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201410717059.2AActiveCN104461781B (en)2014-12-012014-12-01A kind of data block method for reconstructing based on correcting and eleting codes

Country Status (1)

CountryLink
CN (1)CN104461781B (en)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN105353974A (en)*2015-10-082016-02-24华东交通大学Dual fault-tolerant encoding method applicable to disk array and distributed storage system
CN105808170A (en)*2016-03-222016-07-27华东交通大学RAID6 (Redundant Array of Independent Disks 6) encoding method capable of repairing single-disk error by minimum disk accessing
CN105893169A (en)*2016-03-312016-08-24乐视控股(北京)有限公司File storage method and system based on erasure codes
CN105930232A (en)*2016-05-122016-09-07南京大学Simple regenerating code reparation method by using network topology information
CN106201764A (en)*2016-06-292016-12-07北京三快在线科技有限公司A kind of date storage method and device, a kind of data reconstruction method and device
WO2016201639A1 (en)*2015-06-172016-12-22华为技术有限公司Distributed data storage method, control device and system
CN106302573A (en)*2015-05-142017-01-04杭州海康威视系统技术有限公司A kind of method, system and device using erasure codes to process data
WO2017041233A1 (en)*2015-09-082017-03-16广东超算数据安全技术有限公司Encoding and storage node repairing method for functional-repair regenerating code
CN106686095A (en)*2016-12-302017-05-17郑州云海信息技术有限公司 A data storage method and device based on erasure code technology
WO2017107107A1 (en)*2015-12-232017-06-29Intel CorporationTechniques to recover data in a network storage system
CN107656832A (en)*2017-09-182018-02-02华中科技大学A kind of correcting and eleting codes method of low data reconstruction expense
CN108347306A (en)*2018-03-162018-07-31长安大学Class Partial Reconstruction code coding and node failure restorative procedure in distributed memory system
CN109062724A (en)*2018-07-212018-12-21湖北大学A kind of correcting and eleting codes conversion method and terminal
CN109189773A (en)*2018-08-212019-01-11北京睦合达信息技术股份有限公司A kind of data recovery method and device
US10210044B2 (en)2016-12-242019-02-19Huawei Technologies Co., LtdStorage controller, data processing chip, and data processing method
CN109491968A (en)*2018-11-132019-03-19浙江鲸腾网络科技有限公司A kind of document handling method, device, equipment and computer readable storage medium
CN110190926A (en)*2019-04-262019-08-30华中科技大学 Erasure code repair method, erasure code update method and system based on network computing
CN111541512A (en)*2020-03-132020-08-14中国科学院深圳先进技术研究院Data processing method, terminal device and readable storage medium
CN111697976A (en)*2020-05-282020-09-22苏州浪潮智能科技有限公司RS erasure correcting quick decoding method and system based on distributed storage
CN112799875A (en)*2020-12-182021-05-14苏州浪潮智能科技有限公司 Method, system, device and medium for verification recovery based on Gaussian elimination
CN113258938A (en)*2021-06-032021-08-13成都信息工程大学Construction method for rapidly repairing erasure codes in single-node fault
CN113326711A (en)*2021-05-272021-08-31中国工商银行股份有限公司Data transmission method, device and equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20010003510A1 (en)*1999-12-092001-06-14Kabushiki Kaisha ToshibaError correcting circuit for making efficient error correction, and involatile semiconductor memory device incorporating the same error correcting circuit
CN101576833A (en)*2009-06-262009-11-11杭州华三通信技术有限公司Data reconstruction method for Redundant Array of Independent Disks (RAID) and appliance thereof
CN102207895A (en)*2011-05-272011-10-05杭州华三通信技术有限公司Data reconstruction method and device of redundant array of independent disk (RAID)
CN102523072A (en)*2011-12-202012-06-27清华大学LT code coding and decoding method having error detection and error correction functions
CN104111880A (en)*2013-04-162014-10-22华中科技大学Quick single-disk failure recovery method for triple-erasure-correcting codes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20010003510A1 (en)*1999-12-092001-06-14Kabushiki Kaisha ToshibaError correcting circuit for making efficient error correction, and involatile semiconductor memory device incorporating the same error correcting circuit
CN101576833A (en)*2009-06-262009-11-11杭州华三通信技术有限公司Data reconstruction method for Redundant Array of Independent Disks (RAID) and appliance thereof
CN102207895A (en)*2011-05-272011-10-05杭州华三通信技术有限公司Data reconstruction method and device of redundant array of independent disk (RAID)
CN102523072A (en)*2011-12-202012-06-27清华大学LT code coding and decoding method having error detection and error correction functions
CN104111880A (en)*2013-04-162014-10-22华中科技大学Quick single-disk failure recovery method for triple-erasure-correcting codes

Cited By (35)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN106302573A (en)*2015-05-142017-01-04杭州海康威视系统技术有限公司A kind of method, system and device using erasure codes to process data
WO2016201639A1 (en)*2015-06-172016-12-22华为技术有限公司Distributed data storage method, control device and system
WO2017041233A1 (en)*2015-09-082017-03-16广东超算数据安全技术有限公司Encoding and storage node repairing method for functional-repair regenerating code
CN105353974B (en)*2015-10-082018-02-02华东交通大学A kind of two fault-tolerant coding methods for being applied to disk array and distributed memory system
CN105353974A (en)*2015-10-082016-02-24华东交通大学Dual fault-tolerant encoding method applicable to disk array and distributed storage system
US10698765B2 (en)2015-12-232020-06-30Intel CorporationTechniques to recover data in a network storage system
WO2017107107A1 (en)*2015-12-232017-06-29Intel CorporationTechniques to recover data in a network storage system
CN105808170B (en)*2016-03-222018-06-26华东交通大学A kind of RAID6 coding methods that can repair single disk error
CN105808170A (en)*2016-03-222016-07-27华东交通大学RAID6 (Redundant Array of Independent Disks 6) encoding method capable of repairing single-disk error by minimum disk accessing
CN105893169A (en)*2016-03-312016-08-24乐视控股(北京)有限公司File storage method and system based on erasure codes
CN105930232A (en)*2016-05-122016-09-07南京大学Simple regenerating code reparation method by using network topology information
CN105930232B (en)*2016-05-122018-11-30南京大学A kind of simple regeneration code restorative procedure using network topological information
WO2018000788A1 (en)*2016-06-292018-01-04北京三快在线科技有限公司Data-storage method and apparatus, and data-recovery method and apparatus
US10754727B2 (en)2016-06-292020-08-25Beijing Sankuai Online Technology Co., LtdMethod and apparatus for storing data and method and apparatus for recovering data
CN106201764A (en)*2016-06-292016-12-07北京三快在线科技有限公司A kind of date storage method and device, a kind of data reconstruction method and device
CN106201764B (en)*2016-06-292019-03-12北京三快在线科技有限公司A kind of date storage method and device, a kind of data reconstruction method and device
US10210044B2 (en)2016-12-242019-02-19Huawei Technologies Co., LtdStorage controller, data processing chip, and data processing method
CN106686095A (en)*2016-12-302017-05-17郑州云海信息技术有限公司 A data storage method and device based on erasure code technology
CN107656832A (en)*2017-09-182018-02-02华中科技大学A kind of correcting and eleting codes method of low data reconstruction expense
CN108347306A (en)*2018-03-162018-07-31长安大学Class Partial Reconstruction code coding and node failure restorative procedure in distributed memory system
CN108347306B (en)*2018-03-162020-09-11长安大学 Quasi-local reconstruction code coding and node fault repair method in distributed storage system
CN109062724A (en)*2018-07-212018-12-21湖北大学A kind of correcting and eleting codes conversion method and terminal
CN109189773B (en)*2018-08-212020-10-20北京睦合达信息技术股份有限公司Data restoration method and device
CN109189773A (en)*2018-08-212019-01-11北京睦合达信息技术股份有限公司A kind of data recovery method and device
CN109491968A (en)*2018-11-132019-03-19浙江鲸腾网络科技有限公司A kind of document handling method, device, equipment and computer readable storage medium
CN110190926A (en)*2019-04-262019-08-30华中科技大学 Erasure code repair method, erasure code update method and system based on network computing
CN111541512A (en)*2020-03-132020-08-14中国科学院深圳先进技术研究院Data processing method, terminal device and readable storage medium
CN111697976A (en)*2020-05-282020-09-22苏州浪潮智能科技有限公司RS erasure correcting quick decoding method and system based on distributed storage
CN111697976B (en)*2020-05-282023-01-06苏州浪潮智能科技有限公司RS erasure correcting quick decoding method and system based on distributed storage
CN112799875A (en)*2020-12-182021-05-14苏州浪潮智能科技有限公司 Method, system, device and medium for verification recovery based on Gaussian elimination
CN112799875B (en)*2020-12-182023-01-06苏州浪潮智能科技有限公司 Method, system, equipment and medium for verification restoration based on Gaussian elimination
US12117905B2 (en)2020-12-182024-10-15Inspur Suzhou Intelligent Technology Co., Ltd.Method and system for performing check recovery based on Gaussian elimination, device, and medium
CN113326711A (en)*2021-05-272021-08-31中国工商银行股份有限公司Data transmission method, device and equipment
CN113326711B (en)*2021-05-272025-04-29中国工商银行股份有限公司 Data transmission method, device and equipment
CN113258938A (en)*2021-06-032021-08-13成都信息工程大学Construction method for rapidly repairing erasure codes in single-node fault

Also Published As

Publication numberPublication date
CN104461781B (en)2017-10-31

Similar Documents

PublicationPublication DateTitle
CN104461781B (en)A kind of data block method for reconstructing based on correcting and eleting codes
US10146618B2 (en)Distributed data storage with reduced storage overhead using reduced-dependency erasure codes
US9356626B2 (en)Data encoding for data storage system based on generalized concatenated codes
US8631269B2 (en)Methods and system for replacing a failed node in a distributed storage network
CN103336785B (en)A kind of distributed storage method based on network code and device thereof
CN102624866B (en)Data storage method, data storage device and distributed network storage system
CN104052576B (en)Data recovery method based on error correcting codes in cloud storage
CN100570573C (en) Disk Fault Tolerance Method for Large-Scale Disk Array Storage System
CN105518996B (en)A kind of data decoding method based on binary field reed-solomon code
CN103703446B (en)Data reconstruction that network storage Zhong Kang Byzantium lost efficacy, failure-data recovery method and device
WO2016100767A2 (en)Method for file updating and version control for linear erasure coded and network coded storage
CN106100801A (en)A kind of non-homogeneous erasure code method of cloud storage system
CN113391946B (en) A method for encoding and decoding erasure codes in distributed storage
CN105353974B (en)A kind of two fault-tolerant coding methods for being applied to disk array and distributed memory system
CN104156283A (en)Data recovery method and device and storage system
CN103746774A (en)Error resilient coding method for high-efficiency data reading
CN105808170B (en)A kind of RAID6 coding methods that can repair single disk error
CN102843212A (en)Coding and decoding method and device
EP3054602A1 (en)Product-matrix regenerating codes
CN116312726B (en)Data storage method and device, electronic equipment and storage medium
WO2014005279A1 (en)Method and device for constructing distributed storage code capable of accurate regeneration
CN103117749B (en)Check matrix construction and encoding and decoding method and device for low-density parity check code
CN105786656B (en)Redundant array of independent disks disaster tolerance storage method based on random matrix
CN106383669A (en)Distributed storage method and system based on (n,k,m) coding
US20190020359A1 (en)Systematic coding technique for erasure correction

Legal Events

DateCodeTitleDescription
C06Publication
PB01Publication
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp