WO2020029423A1 - 一种修复二进制阵列码校验矩阵的构造方法及修复方法 - Google Patents

一种修复二进制阵列码校验矩阵的构造方法及修复方法 Download PDF

Info

Publication number
WO2020029423A1
WO2020029423A1 PCT/CN2018/110471 CN2018110471W WO2020029423A1 WO 2020029423 A1 WO2020029423 A1 WO 2020029423A1 CN 2018110471 W CN2018110471 W CN 2018110471W WO 2020029423 A1 WO2020029423 A1 WO 2020029423A1
Authority
WO
WIPO (PCT)
Prior art keywords
bits
matrix
check
polynomials
repair
Prior art date
Application number
PCT/CN2018/110471
Other languages
English (en)
French (fr)
Inventor
侯韩旭
韩永祥
李挥
周清峰
李勇
周丰丰
范立生
Original Assignee
东莞理工学院
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 东莞理工学院 filed Critical 东莞理工学院
Publication of WO2020029423A1 publication Critical patent/WO2020029423A1/zh

Links

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/154Error and erasure correction, e.g. by using the error and erasure locator or Forney polynomial

Definitions

  • the invention belongs to the field of data processing technology improvement, and particularly relates to a construction method and a repair method for repairing a binary array code check matrix.
  • Binary maximum distance separable (MDS) array coding is a special erasure code, which can achieve minimum memory redundancy and low computational complexity.
  • the binary array code consists of k + r columns, each of which has L bits.
  • the k information column stores information bits and the parity column stores redundant bits.
  • the L bits in each column are stored in the same storage node. We treat the disk as a column or a storage node, and an entry in the array as a bit. When a node fails, the corresponding column of the array code is considered an erase.
  • MDS code k-code [2]
  • RDP codes [3] and EVENODD codes [4] triple fault-tolerant codes
  • TIP code STAR codes [5], generalized RDP code [6], and TIP code [7].
  • the minimum repair bandwidth of the minimum storage redundancy is stated in [8], also known as the minimum storage regeneration (MSR) point, which is expressed by the following formula: Although the minimum repair bandwidth is achievable on a sufficiently large finite field, how to construct a binary MDS array code to achieve the minimum repair bandwidth is still a challenge.
  • this paper proposes a new method for designing binary MDS array coding by selecting a suitable check matrix. This method can tolerate r> 3 disk failures. We show that when d is large enough, the minimum repair bandwidth (1) of the binary array code for any single information column failure can be achieved gradually. By using the quotient loop of the loop structure and selecting a well-designed check matrix, our structure minimizes the repair bandwidth, so that the bits accessed during the repair operation will cross as much as possible.
  • the repair bandwidth of most existing binary MDS array codes [2], [3], [5], [6] is suboptimal.
  • the proposed code is the first binary MDS array code, which has a progressive optimal repair bandwidth and has a fault tolerance capability greater than 2.
  • the key differences between the proposed code and existing binary MDS array codes are as follows. First of all, with the existing structure, such as [2], [3], [5], [6], the redundant bits in the check column (except the first check column) are specific to the array Polygonal lines are generated. Second, in the proposed code, the number of rows in the array is an exponential function of k.
  • the purpose of the present invention is to provide a construction method for repairing a binary array code check matrix, which aims to solve the above technical problems.
  • the present invention is implemented in this way, a method for constructing a repair matrix of a binary array code check matrix, the method includes: constructing a matrix when the construction code is C 2 (k, r, d, p)
  • a further technical solution of the present invention is: calculating the coding polynomial requires the coding coefficients of the linear equations to be a sub-matrix of a construction matrix.
  • a further technical solution of the present invention is that the encoding polynomials in the construction of the check matrix are all in the ring C p ⁇ .
  • a further technical solution of the present invention is: for lmod (r / 2) f ⁇ ⁇ 0,1,2, ..., (r / 2) f-1 -1 ⁇ and l ⁇ (p-1) (r / 2) d-2, bits s l, 1 can be set parity P l, 1 repair; column i need to download (p-1) ⁇ k- 3 bits, where i ⁇ ⁇ 1,2, ..., f-1, f + 1, ..., d + 1 ⁇ and lmod (r / 2) f ⁇ ⁇ 0,1,2, ..., (r / 2) f-1 -1 ⁇ .
  • the beneficial effect of the invention is that the product matrix structure of the regenerative code still works under the quotient ring, the calculation complexity is low, and the greatest repair bandwidth is achieved with a greater fault tolerance.
  • s l (x) s 0, l + s 1, l x + s 2, l x 2 + ... + s p ⁇ -1, l x p ⁇ -1 (3)
  • k information polynomials and r coded polynomials as row vectors as follows
  • the proposed coding can be described as a check matrix H (k + r) ⁇ r .
  • R p ⁇ represent the ring
  • An element a (x) in R p ⁇ can be expressed as
  • a (x) a p ⁇ -1 x p ⁇ -1 + ... + a 1 x + a 0 whose coefficient is a finite field Element.
  • Addition is the usual item-by-item addition, and multiplication is performed by the module x p ⁇ +1.
  • R p ⁇ multiplying by x can be interpreted as a cyclic shift. This is critical to reducing the repair bandwidth of a column failure. Please note that we do not need to store extra bits on disk, they are only used for convenience of marking.
  • h (x) is called a check polynomial in C p ⁇ .
  • Theorem 1 satisfies (2) if and only if the coefficient si (x) of the polynomial is in C p ⁇ .
  • Lemma 2 Rings R p ⁇ and Are isomorphic.
  • Lemma 3 Ring C p ⁇ and Are isomorphic.
  • the encoding process can be described by the following polynomial operation. Given k (p-1) ⁇ information bits, through (3), add ⁇ extra bits for each (p-1) ⁇ information bits, and form belonging to C p ⁇ K data polynomials. After obtaining a vector (4) by selecting a specific encoding matrix or check matrix, store the coefficients in the polynomial from 0 to (p-1) ⁇ -1 and store the rest The target coefficients are discarded.
  • the proposed array code can be regarded as a systematic linear code on C p ⁇ .
  • the construction code is represented by C 2 (k, r, d, p).
  • k k + r / 2
  • (r / 2 ) d-2 .
  • we should solve a system of linear equations whose coding coefficients are the sub-matrix of (13). Below, we first give the structure of r 4. The case where r is greater than 4 will be given later.
  • f (x) ⁇ C p ⁇ , gcd (b, ⁇ ) ⁇ . Since f (x) ⁇ C p ⁇ , the polynomial g (x) in (15) is also in the ring C p ⁇ , so the coding polynomials s 1 (x) and s 2 (x) are in the ring C p ⁇ . The other two coding polynomials sk + 3 (x) and sk + 4 (x) are also in the ring C p ⁇ and can be calculated by similar methods.
  • Example 2 The first 4 columns of Example 2 in Table 1. Columns 3 and 4 are information columns, and columns 1 and 2 are check columns.
  • xs 2 (x) can be calculated from (16), (17): Shift xs 2 (x) one bit to the left to get s 2 (x).
  • s 1 (x) can be obtained from s 2 (x) + p 1 (x).
  • Columns 5 and 6 can be calculated in the same way.
  • the encoding process for r> 4 is as follows. Since we will prove that C 2 (k, r, d, p) meets the MDS condition in Theorem 6 (in Part 3), the encoding process can be used as a special decoding process. Implementation. There are k + r polynomials s 1 (x), s 2 (x), ..., sk + r (x), assuming k data polynomials are s r / 2 + 1 (x), s r / 2 +2 (x), ..., sk + r / 2 (x).
  • column f is erased, where 1 ⁇ f ⁇ r + k.
  • We hope to recover the bits s 0, f , s 1, f , ..., s (p-1) ⁇ -1, f by obtaining bits from d k + r / 2 surviving columns.
  • the recovery of bits s l, f can be obtained by obtaining k + r / 2-1 bits s l, 1 , sl, 2 , s2 , l , ..., s l, f + 1 , ..., s l, k + r / 2 (27) or get k + r / 2-1 bits,
  • the parity check set reveals the relationship between the bits determined by the check matrix (13) column i.
  • a bit is repaired by a check vector, it means that we access all the bits in the parity bit except the erased bit, which is determined by the column vector of the check matrix (13).
  • s 0,1 (s 18,3 + s 19,3 + s 0,3 + s 1,4 ) + s 0,3 + s 0,4
  • s 2,1 (s 0,3 + s 1,3 + s 2,3 + s 3,4 ) + s 2,3 + s 2,4
  • s 4,1 (s 2,3 + s 3,3 + s 4,3 + s 5,4 ) + s 4,3 + s 4,4
  • s 6,1 (s 4,3 + s 5,3 + s 6,3 + s 7,4 ) + s 6,3 + s 6,4
  • s 8,1 (s 6,3 + s 7,3 + s 8,3 + s 9,4 ) + s 8,3 + s 8,4
  • s 10,1 (s 8,3 + s 9,3 + s 10,3 + s 11,4) + s 10,3 + s 10,4
  • s 12,1 (s 10,3 + s 11,3 + s 12,3 + s 13,4 ) + s 12,3 + s 12,4
  • s 6,1 (s 12,3 + s 13,3 + s 14,3 + s 15,4) + s 14,3 + s 14,4
  • s 1,1 (s 18,3 + s 19,3 + s 0,3 + s 1,4 ) + s 18,3 + s 2,4
  • s 3,1 (s 0,3 + s 1,3 + s 2,3 + s 3,4 ) + s 0,3 + s 4,4
  • s 5,1 (s 2,3 + s 3,3 + s 4,3 + s 5,4 ) + s 2,3 + s 6,4
  • s 7, 1 (s 4, 3 + s 5, 3 + s 6, 3 + s 7, 4 ) + s 4, 3 + s 8, 4
  • s 9,1 (s 6,3 + s 7,3 + s 8,3 + s 9,4 ) + s 6,3 + s 10,4
  • s 11,1 (s 8,3 + s 9,3 + s 10,3 + s 11,4) + s 8,3 + s 12,4
  • s 13,1 (s 10,3 + s 11,3 + s 12,3 + s 13,4 ) + s 10,3 + s 14,4
  • s 15,1 (s 12,3 + s 13,3 + s 14,3 + s 15,4) + s 12,3 + s 16,4
  • bits s l, f can be repaired by the r / 2-t + 1th check vector.
  • the repair bandwidth of column n + 1-f is the same as that of column f.
  • the repair bandwidth is d (p-1) (r / 2) d-3 , which reaches the optimal value of (1).
  • the repair bandwidth is It is strictly smaller than the value (d + 1) / d times in (1). Therefore, the repair bandwidth of any information fault can approach the optimal repair in (1), as long as d is large enough.

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

一种修复二进制阵列码校验矩阵的构造方法,该方法找到二元MDS阵列编码的结构,通过选择设计良好的生成矩阵或奇偶矩阵来构造一个渐进的最优修复带宽,从而可以得到最优的修复。

Description

一种修复二进制阵列码校验矩阵的构造方法及修复方法 技术领域
本发明属于数据处理技术改进领域,尤其涉及一种修复二进制阵列码校验矩阵的构造方法及修复方法。
背景技术
现代分布式存储系统部署擦除代码来维护数据可用性,以防止存储节点的故障。二进制最大距离可分(MDS)阵列编码是一种特殊的擦除码,它可以实现最小存储冗余和低计算复杂度的容错。特别地,二进制数组代码由k+r列组成,每个列中都有L位。在k+r列中,k信息列存储信息位r奇偶列存储冗余位.每个列中的L位都存储在相同的存储节点中。我们将磁盘作为一个列或一个存储节点,并将数组中的一个条目作为一个比特。当一个节点发生故障时,数组代码的相应列被认为是一个擦除。如果k+r列中的任何k都可以重构所有k信息列(即:它可以容忍任何r失败的列),这样的编码称作MDS码。二进制MDS阵列码的示例包括双容错代码(即r=2)如x-code[2],RDP码[3]和EVENODD码[4],以及三重容错码(即r=3)如:STAR码[5],广义RDP码[6],和TIP码[7]。
当一个节点在分布式存储系统中出现故障时,应该通过从d健康节点中下载片段来修复故障节点,其中k≤d≤k+r-1。最小化修复带宽,定义为在修复过程中下载的比特数量,对于加快修复操作和最小化漏洞的窗口是至关重要的,特别是在分布式存储中,网络传输是瓶颈。修复问题是由Dimakis等人[8]基于信息流动图的概念制定的。最小存储冗余的最小修复带宽在[8]中进行了陈述,也称为最小存储再生(MSR)点,是由下式表示:
Figure PCTCN2018110471-appb-000001
虽然最小的修复带宽是可以达到的,在一个足够大的有限域上,但是如何构造二进制的MDS阵列码来实现最小的修复带宽仍然是一个挑战。
一种传统的方法是从任何k幸存的列中下载所有的位元来重新生成故障列中的位元。因此,用于修复故障列的比特数的总数是故障位的k倍。在二进制MDS阵列代码中,有研究减少了单个失败列的修复带宽。一些方法最小化了RDP代码[10]的磁盘读取和d=k+1的x-code[11],但是它们的修复带宽是次优的,比d=k+1时(1)的最小值大50%。MDR码[12],[13]和ButterFly码[14],[15]是二进制的MDS阵列编码,达到最优修复;然而,它们只提供了双重容错(即r=2)。如何用最优修复和更好的容错(即r>2)来构造二进制MDS阵列码仍然是一个开放的问题。这样的结构将有利于在故障易发的分布式存储系统中维护数据可用性。
基于专利【二进制阵列码编码框架】,本文通过选取合适的校验矩阵,提出了一种新的设计二进制MDS阵列编码的方法,该方法可以容忍r>3个磁盘故障。我们表明,当 d足够大时,对于任何单个信息列故障的二进制阵列码的最小修复带宽(1)都可以渐进地实现。通过利用循环结构的商环和选择精心设计的校验矩阵,我们的结构最小化了修复带宽,这样在修复操作中访问的位元就会尽可能多地交叉。
大多数现有的二进制MDS阵列编码[2]、[3]、[5]、[6]的修复带宽是次优的。一些构造[12-15]的二进制MDS阵列码,具有最佳的修复带宽,只关注双容错(即r=2)。据我们所知,所提出的代码是第一个二进制的MDS阵列码,它具有渐进的最优修复带宽,并且具有大于2的容错能力。所提议的代码和现有的二进制MDS阵列码之间的关键区别如下。首先,与现有的结构,如[2]、[3]、[5]、[6],在校验列中(除了第一个校验列)的冗余位是通过对数组中特定的多边形线的对应来生成的。其次,在提议的代码中,数组的行数是k的指数函数。这两个属性对于减少修复带宽是非常重要的。双容错最优修复结构的[12-15]与建议结构之间的区别在于,采用了循环结构的商环,而[12-15]则没有采用。通过利用商环,我们可以选择设计良好的校验矩阵,并以更大的容错度来达到最优的修复带宽。
之前的研究[16]、[17]也利用类似的技术来减少再生码的计算复杂度。在本研究中,我们证明当τ(稍后介绍的一个参数)足够大且满足某些条件时,我们可以找到一些二元MDS阵列编码的结构,从而可以得到最优的修复。[16]、[17]的环可以看作是所提出的环在τ=1时的特殊情况。此外,[16]、[17]和这篇论文的主要结果是不同的。结果表明,在商环内,功能修复再生码的存储与修复带宽之间的基本权衡曲线在商环中也可以实现,而现有的再生码的产品矩阵结构仍在商环下工作,计算复杂度较低。在本文中,我们使用一个更一般的环来构造一个新的二进制MDS阵列码,通过选择设计良好的生成器矩阵或奇偶矩阵来构造一个渐进的最优修复带宽。虽然提出了二进制数组MDS码和结构的高数据率MSR编码[9],[18]-[24]都是基于矩阵构建生成器或校验矩阵,提出的编码在二进制中构建,校验矩阵在具有循环结构的环中选择。
发明内容
本发明的目的在于提供一种修复二进制阵列码校验矩阵的构造方法,旨在解决上述的技术问题。
本发明是这样实现的,一种修复二进制阵列码校验矩阵的构造方法,所述构造方法包括:在构造码为C 2(k,r,d,p),构造矩阵
Figure PCTCN2018110471-appb-000002
,其中k≥2,r≥4是一个偶数,d=k+r/2和τ=(r/2) d-2;在行向量[s 1(x),s 2(x),…,s k+r(x)]中选择任何k个多项式作为数据多项式,其他的r个多项式作为编码多项式;假设给出r=4的构造,C 2(k,4,d,p)包含k+4个多项式s 1(x),s 2(x),…,s k+4(x),其中s 3(x),s 4(x),…,s k+2(x)是数据多项式,s 1(x),s 2(x),s k+3(x),s k+4(x)是编码多项式,校验矩阵H (k+4)×4
Figure PCTCN2018110471-appb-000003
本发明的进一步技术方案是:计算编码多项式需使线性方程组的编码系数是构造矩阵的子矩阵。
本发明的进一步技术方案是:在校验矩阵的构造中的编码多项式都在环C 中。
本发明的另一目的在于提供一种修复二进制阵列码校验矩阵的修复方法,所述修复二进制阵列码校验矩阵的修复方法包括:对于0≤l≤pτ-1,i=1,2,…,r,第i列的第l个校验集合分别定义,其中,P l,1={s l,1,s l,2,...,s l,k+r/2},i=1;
Figure PCTCN2018110471-appb-000004
其中2≤i≤r/2;
Figure PCTCN2018110471-appb-000005
其中r/2+1≤i≤r-1;
Figure PCTCN2018110471-appb-000006
i=r;假设第f个信息列失效,如果
Figure PCTCN2018110471-appb-000007
Figure PCTCN2018110471-appb-000008
比特s l,f用第一个校验向量修复;有因t=1,2,…,r/2-1,其lmod(r/2) f∈{t(r/2) f-1,t(r/2) f-1+1,...,(t+1)(r/2) f-1-1},比特s l,f用第r/2-t+1个校验向量修复;如果
Figure PCTCN2018110471-appb-000009
因lmod(r/2) n+1-f∈{0,1,2,...,(r/2) n-f-1},比特s l,f用第r个校验向量修复,有因t=1,2,…,r/2-1,其lmod(r/2) n+1-f∈{t(r/2) n-f,t(r/2) n-f+1,...,(t+1)(r/2) n-f-1},比特s l,f用第r/2+t个校验向量修复。
本发明的进一步技术方案是:对lmod(r/2) f∈{0,1,2,...,(r/2) f-1-1}且l<(p-1)(r/2) d-2,比特s l,1可被校验集合P l,1修复;需要列i下载(p-1)η k-3个比特,其中i∈{1,2,...,f-1,f+1,...,d+1}且lmod(r/2) f∈{0,1,2,...,(r/2) f-1-1}。
本发明的进一步技术方案是:
本发明的有益效果是:再生码的产品矩阵结构仍在商环下工作,计算复杂度较低,以更大的容错度来达到最有的修复带宽。
具体实施方式
考虑一个具有k≥2个信息列和r≥3个校验列的二进制MDS阵列码。该阵列码的每一列都存储L=(p-1)τ位元,其中p是一个素数,这样2是有限域
Figure PCTCN2018110471-appb-000010
中的一个原始元素,τ的值稍后将指定。考虑一个大小为k(p-1)τ的文件,用信息 比特
Figure PCTCN2018110471-appb-000011
来表示。这些信息比特可以用来生成r(p-1)τ个校验比特
Figure PCTCN2018110471-appb-000012
位元s 0,i,s 1,i,...,s (p-1)τ-1,i(i=1,2,...,k)存储在第i个信息列中,(p-1)τ个位元s 0,j,s 1,j,...,s (p-1)τ-1,j(j=k+1,k+2,…,k+r)存储在第j-k个校验列中。
对i=1,2,...,k和μ=0,1,...,τ-1,我们定义下面的简短表示法:
Figure PCTCN2018110471-appb-000013
我们把s (p-1)τ+μ,i称为s μ,i,s τ+μ,i,...,s (p-2)τ+μ,i的额外比特。例如,当p=3,k=4,和τ=4,时,s 0+μ,i,s 4+μ,i的额外比特是s 8+μ,i=s 0+μ,i+s 4+μ,i。对于j=k+1,k+2,…,k+r,τ个额外比特s (p-1)τ,j,s (p-1)τ+1,j,...,s pτ-1,j将加在第j-k个校验列后。后面将会很明显,第j-k个校验列的冗余位元s (p-1)τ+μ,j将满足(2)对j=k+1,k+2,…,k+r和μ=0,1,...,τ-1。
对于l=1,2,...k+r,我们用一个在环
Figure PCTCN2018110471-appb-000014
上的多项式s l(x)来表示第l列中的比特s 0,l,s 1,l,...,s (p-1)τ-1,l和τ个额外比特s (p-1)τ,l,s (p-1)τ+1,l,...,s pτ-1,l。例如
s l(x)=s 0,l+s 1,lx+s 2,lx 2+...+s pτ-1,lx pτ-1  (3)
把对应于第i(i=1,2,...,k)个信息列的多项式s i(x)叫做信息多项式;把对应于第j-k个校验列的多项式s j(x)(j=k+1,k+2,…,k+r)叫做编码 多项式。我们把k个信息多项式和r个编码多项式写成如下的行向量
[s 1(x),s 2(x),…,s k+r(x)]  (4)
该向量可以通过在环
Figure PCTCN2018110471-appb-000015
上的运算得到,计算公式如下:
[s 1(x),s 2(x),…,s k+r(x)]=[s 1(x),s 2(x),…,s k(x)]·G k×(k+r)   (5)
其中k×(k+r)的生成矩阵G由k×k的单位矩阵I和k×r的编码矩阵P构成,计算如下:G k×(k+r)=[I k×k P k×r]    (6)
所提出的编码可以描述为一个校验矩阵H (k+r)×r。考虑(4),我们有
[s 1(x),s 2(x),…,s k(x)]·H (k+r)×r=0   (7)
用R 表示环
Figure PCTCN2018110471-appb-000016
R 中的一个元素a(x)可以表示成
a(x)=a pτ-1x pτ-1+…+a 1x+a 0其系数是有限域
Figure PCTCN2018110471-appb-000017
中的元素。加法是通常的逐项加法,乘法是用通过模x +1来执行的。在R 中,乘以x可以被解释为循环移位.这对于减少一个列故障的修复带宽是至关重要的。请注意,我们不需要将额外的位存储在磁盘上,它们只用于标记的方便性。
考虑由R 中具有因子x τ+1的多项式构成的R 的子环C ,
C ={a(x)(1+x τ)mod(1+x (pτ)|a(x)∈R }  (8)
事实上,C 是理想的,因为
Figure PCTCN2018110471-appb-000018
我们可以验证h(x)=x (p-1)τ+x (p-2)τ+…+x τ+1和C 中任意多项式的乘积为0。h(x)被成为C 中的校验多项式。C 中的乘法性质是e(x)=1+h(x)=x (p-1)τ+x (p-2)τ+…+x τ=(1+x τ)(x (p-2)τ+…+x +x τ),
由于
Figure PCTCN2018110471-appb-000019
e(x)b(x)=(1+h(x))b(x)=b(x)mod(1+x )  (9)
定理1当且仅当多项式的系数s i(x)在C 中时才满足(2)。
证明:假设多项式的系数s i(x)满足(2),通过调整s i(x)得,
Figure PCTCN2018110471-appb-000020
这种化简是为了证明对于i=0,1,…,p-2和j=0,1,…,τ-1,x iτ+j+x (p-1)τ+j是x τ+1的倍数。这是由于x iτ+j+x (p-1)τ+j=x iτ+j(1+x (p-i-1)τ)=x iτ+j(1+x τ)(1+x τ+x +…+x (p-i-2)τ)这便证明了多项式系数s i(x)是在环C 中的。
相反,假设
Figure PCTCN2018110471-appb-000021
在环C 中。根据(8),s i(x)可以被写成s i(x)=a(x)(1+x τ)mod(1+x τp)=(a 0+a (p-1)τ)+(a 1+a (p-1)τ+1)x+…+(a pτ-1+a (p-1)τ-1)x pτ-1
因此,对于μ=0,1,…,τ-1,可以得到s μ,i=α μ(p-1)τ+μ,s τ+μ,i=α τ+μμ,…,s (p-1)τ+μ,i=α (p-1)τ+μ(p-2)τ+μ,我们可以验证
s μ,i+s τ+μ,i+…+s (p-2)τ+μ,i=(α μ(p-1)τ+μ)+(α τ+μμ)+…+(α (p-2)τ+μ(P-3)τ+μ)=α (p-1)τ+μ(p-2)τ+μ=s (p-1)τ+u,i
因此,多项式的系数s i(x)满足(2)。
由于存在两个多项式1和x τ+x +…+x (p-2)τ,因此等式
(1+x τ)(x τ+x +…+x (p-2)τ)+1·h(x)=1
在限域
Figure PCTCN2018110471-appb-000022
中是成立的,1+x 可被分解成两个互素因子1+x τ和h(x)的乘积。在下一个引理中将说明环R
Figure PCTCN2018110471-appb-000023
是同构的。
引理2:环R
Figure PCTCN2018110471-appb-000024
是同构的。
证明我们需要在R
Figure PCTCN2018110471-appb-000025
中找到一种同构。甚至,我们可以通过定义θ(f(x)):=(f(x)modx τ+1,f(x)modh(x))设置一种同构:
Figure PCTCN2018110471-appb-000026
映射θ是一个环同态和双射,因为它有一个逆函数φ(a(x),b(x)),其中φ(a(x),b(x))=[a(x)h(x)+b(x)e(x)]mod x +1。
下面将说明
Figure PCTCN2018110471-appb-000027
是环R 的恒等映射。
对于任意多项式f(x)∈R ,存在两个多项式g 1(x),g 2(x)∈R ,因此
f(x)=g 1(x)(1+x τ)+f(x)mod(1+x τ),f(x)=g 2(x)h(x)+f(x)modh(x).
那么我们可以有
φ(θ(f(x)))=[h(x)(f(x)mod(1+x τ))+e(x)(f(x)modh(x))]mod x +1
=[h(x)(f(x)-g 1(x)(1+x τ))+(1+h(x))(f(x)-g 2(x)h(x))]mod x +1
=h(x)(f(x)-h(x)g 1(x)(1+x τ))+f(x)+f(x)h(x)-e(x)g 2(x)h(x)]mod x +1
=[f(x)-h(x)g 1(x)(1+x τ)-e(x)g 2(x)h(x)]mod x +1
=[f(x)-(1+x τ)(x τ+x +…+x (p-2)τ)g 2(x)h(x)]mod x +1
=f(x).
这样
Figure PCTCN2018110471-appb-000028
便是环R 的恒等映射,并且引理证明完毕。
通过引理2,我们有环C
Figure PCTCN2018110471-appb-000029
是同构的,这将在下一个引理中给出。
引理3:环C
Figure PCTCN2018110471-appb-000030
是同构的。
例如,当p=5和τ=2时,C 10
Figure PCTCN2018110471-appb-000031
是同构的,并且1+x 8在环C 10中可以映射为:
1+x 8mod(1+x 2+x 4+x 6+x 8)=x 2+x 4+x 6
如果我们将函数φ应用在x 2+x 4+x 6上,我们可以恢复;
φ(0,x 2+x 4+x 6)=(x 2+x 4+x 6)(x 2+x 4+x 6+x 8)=1+x 8 mod(1+x 10)。
当τ=1时,C p在[16][17]中进行了讨论,并应用到一种具有低复杂度的再生码中。注意,当且仅当2是
Figure PCTCN2018110471-appb-000032
中的素元及τ=p i(i为非负整数)时[25],C 和有限域
Figure PCTCN2018110471-appb-000033
同构。
在引入所提出的阵列码的显式构造结构前,我们需要对e(x)-逆进行定义。
定义1:如果多项式f(x)∈R 有一个多项式
Figure PCTCN2018110471-appb-000034
使得
Figure PCTCN2018110471-appb-000035
那么多项式
Figure PCTCN2018110471-appb-000036
便称为多项式f(x)的e(x)-逆.在下一个引理中我们将说明1+x b在环R 中是可以e(x)-逆的。
引理4:让b(1≤b≤pτ)为一个整数,b和p的最大公约数为gcd(b,p)=1,gcd(b,τ)=α。1+x b在环R 中的e(x)-逆是
Figure PCTCN2018110471-appb-000037
证明:在环R 中,我们可以验证
Figure PCTCN2018110471-appb-000038
它被简化是为了证明上面的方程等于e(x),例如,
Figure PCTCN2018110471-appb-000039
考虑一种整数模pτ的环,将其表示为
Figure PCTCN2018110471-appb-000040
Figure PCTCN2018110471-appb-000041
中,有一个集合
Figure PCTCN2018110471-appb-000042
现在对于i∈{1,2,…,p-1},我们考虑
Figure PCTCN2018110471-appb-000043
因此,
Figure PCTCN2018110471-appb-000044
接下来对于i≠j∈{1,2,…,p-1},我们想要证明τib/a≠jτb/a modpτ.
假设iτb/a modpτ=jτb/a modpτ,这样便存在一个整数l使得τib/a=lpτ+jτb/a.
上面的式子可以进一步被化简为
(i-j)b/a=lp.
因为gcd(b,p)=1,gcd(b/a,p)=1,因此我们有p|(i-j)。然而由于1≤j≤i≤p-1,这是不可能的。同样,我们证明当1≤i≤p-1时iτb/a modpτ≠0.
因此,我们可以得到
(τb/a,2τb/a,…,(p-1)τb/a)≡(τ,2τ,…,(p-1)τ)modpτ.所以(11)成立。
通过引理1,对于i=1,2,…k,我们有s i(x)∈C 。用f(x)表示生成矩阵或校验矩阵中的任何一项。如果
Figure PCTCN2018110471-appb-000045
便可以用(f(x)e(x)mod(1+x ))∈C 来替代f(x)而不会改变结果。这是由于1≤i≤k时,s i(x)e(x)=s i(x)mod(1+x )。因此,在用 (f(x)e(x)mod(1+x ))∈C 替代了生成矩阵或校验矩阵中的所有f(x)后,我们有了等效的生成矩阵或校验矩阵,这样(4)中的编码多项式可以通过(5)或(7)在环C 上计算得到.
编码过程可以用如下多项式操作来描述.给定k(p-1)τ个信息位,通过(3),为每(p-1)τ个信息位附加τ个额外位,并形成属于C 的k个数据多项式.在通过选择某种特定的编码矩阵或检查矩阵得到向量(4)后,将多项式中下标在0到(p-1)τ-1的系数存储起来,并将其余下标的系数丢掉。提出的阵列码可以被看作C 上的一种系统线性码。
本文的目的是寻找合适的检验矩阵H (k+r)×r,使之对应的编码是MDS编码,而单次故障的修复带宽是渐近最优的。在本节的其余部分,我们将给出二进制MDS阵列码的显式结构方法,该构造是由一个校验矩阵构成的。提出的二进制阵列码的修复带宽对于任何单个信息列或校验列故障都是渐进最优的。
A校验矩阵构造方法
Figure PCTCN2018110471-appb-000046
构造码用C 2(k,r,d,p)来表示,构造矩阵如(13),其中k≥2,r≥4是一个偶数,d=k+r/2和τ=(r/2) d-2。我们可以在(4)中选择任何k个多项式作为数据多项式,而其他的r个多项式作为编码多项式。为了计算编码多项式,我们应该解决一个线性方程组,它的编码系数是(13)的子矩阵。下面,我们首先给出r=4的 构造。以后将会给出r大于4的情况.C 2(k,4,d,p)包含k+4个多项式s 1(x),s 2(x),…,s k+4(x),其中s 3(x),s 4(x),…,s k+2(x)是数据多项式,s 1(x),s 2(x),s k+3(x),s k+4(x)是编码多项式,校验矩阵H (k+4)×4如下:
Figure PCTCN2018110471-appb-000047
根据H (k+4)×4的前两列,我们有:s 1(x)+s 2(x)+…+s k+1(x)+s k+2(x)=0,
Figure PCTCN2018110471-appb-000048
首先,我们可以计算出数据多项式的周期移位后的总和,形式如下:
p 1(x)=s 3(x)+s 4(x)+…+s k+1(x)+s k+2(x),
Figure PCTCN2018110471-appb-000049
然后,我们可以把xs 2(x)向左循环移位来解出s 2(x),其中
Figure PCTCN2018110471-appb-000050
很明显,p 1(x),p 2(x)∈C ,因此xp 1(x)+p 2(x)∈C .通过引理4,1+x b是可以e(x)-逆的,然后可以由(1+x b)g(x)=f(x)计算出g(x):
Figure PCTCN2018110471-appb-000051
其中f(x)∈C ,gcd(b,τ)=α。由于f(x)∈C ,(15)中的多项式g(x)也在环C 中,因此编码多项式s 1(x),s 2(x)都在环C 中。另外两个编码多项式s k+3(x),s k+4(x)同样也在环C 中,并可以通过类似的方法计算出来。
尤其是,对于j=0,1,…,α-1,可以计算出系数g j
Figure PCTCN2018110471-appb-000052
表1例2的前4列.列3和4是信息列,列1和2是校验列
Figure PCTCN2018110471-appb-000053
因此对于(1+x b)g(x)=f(x),一旦计算出g 0,g 1,…,g (α-1),g(x)的其他系数可以通过(17)迭代地计算出来,其计算式:g bl+j=f bl+j+g b(l-1)+j(17)。其中l=1,2,…,pτ/α-1,j=0,1,…,α-1。可以表明,对于l 1≠l 2∈{1,2,…,pτ/α-1},bl 1+j modpτ≠bl 2+j modpτ。因此,我们可以通过(17)来计算g(x)的所有其他系数.从(1+x b)g(x)=f(x)计算g(x)总共有:
Figure PCTCN2018110471-appb-000054
个异或操作.因此我们可以通过上面的方法计算xs 2(x)(然后是s 2(x))。一旦s 2(x)计算出,便可以通过s 2(x)+p 1(x)计算出s 1(x)。另外两个编码多项式s k+3(x),s k+4(x)同样可以通过类似的方法得到。
例1:考虑一个k=2,p=5,r=4。因此d=2+2=4,τ=4的构造,每列存储(p-1)(r/2) (d-2)=16个比特位,共有k+r=6列。可以得 到6个多项式
Figure PCTCN2018110471-appb-000055
i=1,2,…,6。假设s 3(x),s 4(x)是两个数据多项式.首先,我们可以计算出p 1(x),p 2(x):
p 1(x)=s 3(x)+s 4(x),p 2(x)=x 4s 3(x)+s 4(x).
然后,可以由(16)、(17)计算xs 2(x):
Figure PCTCN2018110471-appb-000056
再把xs 2(x)左移一位得到s 2(x)。s 1(x)可以由s 2(x)+p 1(x)得到。列5、6可以用同样的方式计算。
例1的前4列的计算详细情况见表1,其中加粗的是附加位.由于空间有限,最后两列未列出。
r>4的编码过程如下所述.由于我们将证明C 2(k,r,d,p)满足了定理6中的MDS条件(在第3部分),编码过程可以作为一个特殊的解码过程来实现.共有k+r个多项式s 1(x),s 2(x),…,s k+r(x),假设k个数据多项式是s r/2+1(x),s r/2+2(x),…,s k+r/2(x)。首先用f(x)e(x)mod(1+x )替代H (k+r)×r中的所有元素f(x),然后根据在环C 上修改后的校验矩阵解出r个多项式对应的r个线性方程.由于满足MDS特性,我们总可以计算出r个编码多项式。
4高效修复单列故障
在本节中,我们将展示如何在本文提出的二进制阵列码中恢复存储在任何列中的位,并具有渐进最优的修复带宽。
假设列f被擦除,其中1≤f≤r+k。我们希望通过从d=k+r/2个存活列获取位元来恢复位元s 0,f,s 1,f,...,s (p-1)τ-1,f。我们将列i中的pτ位看作s 0,i,s 1,i,...,s pτ-1,i,就像第一个结构中的修复一样。
在检查矩阵的第一列(13)中,我们有s l,1+s l,2+,...,+s l,k+r/2=0,其中l=0,1,2,...,pτ-1。对于i=2,…,r/2,从校验矩阵(13)中的第i列,我们有
Figure PCTCN2018110471-appb-000057
其中l=0,1,2,...,pτ-1。注意,这一节和整个论文的所有索引都采用了模 p。对于f≤k+r/2,位元s l,f的恢复可以通过获取k+r/2-1个位元s l,1,s l,2,s 2,l,...,s l,f+1,...,s l,k+r/2 (27)或获取k+r/2-1个位元,
Figure PCTCN2018110471-appb-000058
其中i∈{2,3,...,r/2}。为了方便地描述修复算法,我们定义了如下的奇偶校验集。
定义3:对于0≤l≤pτ-1,i=1,2,…,r,第i列的第l个校验集合分别定义如下:
P l,1={s l,1,s l,2,...,s l,k+r/2},i=1;
Figure PCTCN2018110471-appb-000059
其中2≤i≤r/2;
Figure PCTCN2018110471-appb-000060
其中r/2+1≤i≤r-1;
Figure PCTCN2018110471-appb-000061
Figure PCTCN2018110471-appb-000062
Figure PCTCN2018110471-appb-000063
P l,1={s l,1,s l,2,...,s l,k+r/2},
Figure PCTCN2018110471-appb-000064
其中2≤j≤r/2,
Figure PCTCN2018110471-appb-000065
其中r/2+1≤i≤r-1,
Figure PCTCN2018110471-appb-000066
从定义3中,奇偶校验集揭示了由检查矩阵(13)列i所确定的位元之间的关系。当我们说一个位元被一个校验向量修复时,它意味着我们访问奇偶校验位中除了擦除的位的所有位元,这是由检查矩阵(13)的列向量决定的。
算法2中规定了修复算法.让我们考虑一下表1中给出的示例,以详细说明修复算法。在这个例子中,k=2,d=4,r=4。假设第一个列被擦除,即f=1。在算法2中的步骤3和步骤4中,我们可以通过第一个检查向量来修复位元s 0,1,s 2,1,s 4,1,s 6,1,s 8,1,s 10,1,s 12,1,s 14,1,即,
s 0,1=(s 18,3+s 19,3+s 0,3+s 1,4)+s 0,3+s 0,4
s 2,1=(s 0,3+s 1,3+s 2,3+s 3,4)+s 2,3+s 2,4
s 4,1=(s 2,3+s 3,3+s 4,3+s 5,4)+s 4,3+s 4,4
s 6,1=(s 4,3+s 5,3+s 6,3+s 7,4)+s 6,3+s 6,4
s 8,1=(s 6,3+s 7,3+s 8,3+s 9,4)+s 8,3+s 8,4
s 10,1=(s 8,3+s 9,3+s 10,3+s 11,4)+s 10,3+s 10,4
s 12,1=(s 10,3+s 11,3+s 12,3+s 13,4)+s 12,3+s 12,4
s 6,1=(s 12,3+s 13,3+s 14,3+s 15,4)+s 14,3+s 14,4
其他位元s 1,1,s 3,1,s 5,1,s 7,1,s 9,1,s 11,1,s 13,1,s 15,1由第二个校验向量修复,即,
s 1,1=(s 18,3+s 19,3+s 0,3+s 1,4)+s 18,3+s 2,4
s 3,1=(s 0,3+s 1,3+s 2,3+s 3,4)+s 0,3+s 4,4
s 5,1=(s 2,3+s 3,3+s 4,3+s 5,4)+s 2,3+s 6,4
s 7,1=(s 4,3+s 5,3+s 6,3+s 7,4)+s 4,3+s 8,4
s 9,1=(s 6,3+s 7,3+s 8,3+s 9,4)+s 6,3+s 10,4
s 11,1=(s 8,3+s 9,3+s 10,3+s 11,4)+s 8,3+s 12,4
s 13,1=(s 10,3+s 11,3+s 12,3+s 13,4)+s 10,3+s 14,4
s 15,1=(s 12,3+s 13,3+s 14,3+s 15,4)+s 12,3+s 16,4
因为我们可以用s 6,3+s 2,3+s 10,3+s 14,3和s 4,4+s 0,4+s 8,4+s 12,4来分别计算s 18,3、s 16,4,所以我们不需要下载这两个比特。因此,我们只需要从三列中下载总共24个比特来修复第一列。也就是说,第一列的修复带宽是最优的。在下一个定理中,我们证明了一个故障列的修复带宽是一般参数的渐近最优。
定理12当f≤n/2时,由算法2知,第f列的修复带宽是
Figure PCTCN2018110471-appb-000067
证明:对lmod(r/2) f∈{0,1,2,...,(r/2) f-1-1}且l<(p-1)(r/2) d-2,比特s l,1可被校验集合P l,1修复。因此,我们需要列i下载(p-1)η k-3个比特s l,f,其中i∈{1,2,...,f-1,f+1,...,d+1}且lmod(r/2) f∈{0,1,2,...,(r/2) f-1-1}。
对于t=1,2,…,r/2-1,lmod(r/2) f∈{t(r/2) f-1,t(r/2) f-1+1,...,(t+1)(r/2) f-1-1},比特s l,f可被第r/2-t+1个校验向量修复。所以对于列i∈{1,2,…,f-1},及对于lmod(r/2) f在集合{0,1,…,(r/2) f-1-(r/2-t)(r/2) i-1-1,(r/2) f-(r/2-t)(r/2) i-1,(r/2) f-(r/2-t)(r/2) i-1+1,…,(r/2) f-1}中的所有值,需要(p-1)(r/2) d-3个比特s l,i.而对于列i∈{f+1,f+2,…,d+1},及对于lmod(r/2) f在集合{0,1,2,...,(r/2) f-1-1中的所有值,需要(p-1)(r/2) d-3个比特s l,i
注意,对于lmod(r/2) f∈{0,1,2,...,(r/2) f-1-1}和l<(p-1)(r/2) d-2的比特s l,i在修复中已经被第一个校验向量下载了,因此只需要从列i(i=1,2,…,f-1)下载(r/2-1)(p-1)(r/2) d+i-f-3个比特位。为了修复列f,从d=k+r/2个列中下载的比特总数是
Figure PCTCN2018110471-appb-000068
注意,当
Figure PCTCN2018110471-appb-000069
根据(13)中的编码矩阵和算法2,列n+1-f的修复带宽与列f相同。当f=1时,修复带宽是 d(p-1)(r/2) d-3,它达到了(1)的最佳值。即使在
Figure PCTCN2018110471-appb-000070
最坏的情况下,修复带宽是
Figure PCTCN2018110471-appb-000071
它严格小于(1)中的值(d+1)/d倍。因此,任何一个信息故障的修复带宽都可以渐近达到(1)中的最优修复,只要d足够大。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (5)

  1. 一种修复二进制阵列码校验矩阵的构造方法,其特征在于,所述构造方法包括:在构造码为C 2(k,r,d,p),构造矩阵
    Figure PCTCN2018110471-appb-100001
    其中k≥2,r≥4是一个偶数,d=k+r/2和τ=(r/2) d-2;在行向量[s 1(x),s 2(x),…,s k+r(x)]中选择任何k个多项式作为数据多项式,其他的r个多项式作为编码多项式;假设给出r=4的构造,C 2(k,4,d,p)包含k+4个多项式s 1(x),s 2(x),…,s k+4(x),其中s 3(x),s 4(x),…,s k+2(x)是数据多项式,s 1(x),s 2(x),s k+3(x),s k+4(x)是编码多项式,校验矩阵H (k+4)×4
    Figure PCTCN2018110471-appb-100002
  2. 根据权利要求1所述的修复二进制阵列码校验矩阵的构造方法,其特征在于,计算编码多项式需使线性方程组的编码系数是构造矩阵的子矩阵。
  3. 根据权利要求2所述的修复二进制阵列码校验矩阵的构造方法,其特征在于,在校验矩阵的构造中的编码多项式都在环C 中。
  4. 一种修复二进制阵列码校验矩阵的修复方法,其特征在于,所述修复二进制阵列码校验矩阵的修复方法包括:对于0≤l≤pτ-1, i=1,2,…,r,第i列的第l个校验集合分别定义,其中,P l,1={s l,1,s l,2,...,s l,k+r/2},i=1;
    Figure PCTCN2018110471-appb-100003
    其中2≤i≤r/2;
    Figure PCTCN2018110471-appb-100004
    其中r/2+1≤i≤r-1;
    Figure PCTCN2018110471-appb-100005
    i=r;
    假设第f个信息列失效,如果
    Figure PCTCN2018110471-appb-100006
    Figure PCTCN2018110471-appb-100007
    比特s l,f用第一个校验向量修复;有因t=1,2,…,r/2-1,其lmod(r/2) f∈{t(r/2) f-1,t(r/2) f-1+1,...,(t+1)(r/2) f-1-1},比特s l,f用第r/2-t+1个校验向量修复;如果
    Figure PCTCN2018110471-appb-100008
    因lmod)r/2) n+1-f∈{0,1,2,...,(r/2) n-f-1},比特s l,f用第r个校验向量修复,有因t=1,2,…,r/2-1,其lmod(r/2) n+1-f∈{t(r/2) n-f,t(r/2) n-f+1,...,(t+1)(r/2) n-f-1},比特s l,f用第r/2+t个校验向量修复。
  5. 根据权利要求4所述的修复二进制阵列码校验矩阵的修复方法,其特征在于,对lmod(r/2) f∈{0,1,2,...,(r/2) f-1-1}且l<(p-1)(r/2) d-2,比特s l,1可被校验集合P l,1修复;需要列i下载(p-1)η k-3个比特,其中i∈{1,2,...,f-1,f+1,...,d+1}且lmod(r/2) f∈{0,1,2,...,(r/2) f-1-1}。
PCT/CN2018/110471 2018-08-09 2018-10-16 一种修复二进制阵列码校验矩阵的构造方法及修复方法 WO2020029423A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810905963.4A CN109257049B (zh) 2018-08-09 2018-08-09 一种修复二进制阵列码校验矩阵的构造方法及修复方法
CN201810905963.4 2018-08-09

Publications (1)

Publication Number Publication Date
WO2020029423A1 true WO2020029423A1 (zh) 2020-02-13

Family

ID=65050130

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/110471 WO2020029423A1 (zh) 2018-08-09 2018-10-16 一种修复二进制阵列码校验矩阵的构造方法及修复方法

Country Status (2)

Country Link
CN (1) CN109257049B (zh)
WO (1) WO2020029423A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110750382B (zh) * 2019-09-18 2020-10-30 华中科技大学 用于提高数据修复性能的最小存储再生码编码方法及系统
CN111585581B (zh) * 2020-05-14 2023-04-07 成都信息工程大学 一种基于二元域运算且支持任意码距的编码方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060218470A1 (en) * 2005-03-15 2006-09-28 Inostor Corporation Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same
CN108352845A (zh) * 2015-11-10 2018-07-31 华为技术有限公司 用于对存储数据进行编码的方法以及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9112916B2 (en) * 2011-08-26 2015-08-18 Texas Instruments Incorporated Systems and methods for construction of and network coding using near-maximum distance separable (MDS) linear network codes
US9113470B2 (en) * 2011-08-26 2015-08-18 Texas Instruments Incorporated Systems and methods for network coding using maximum distance separable (MDS) linear network codes
WO2015180038A1 (zh) * 2014-05-27 2015-12-03 北京大学深圳研究生院 部分复制码的构建方法、装置及其数据修复的方法
CN105915317B (zh) * 2016-06-15 2019-01-29 浙江大学 可Zigzag解码的前向纠删码编码系数矩阵构造方法
CN106788454B (zh) * 2016-11-29 2020-04-24 陕西尚品信息科技有限公司 一种局部性不相等码的构造方法
CN107086870B (zh) * 2017-03-16 2019-10-22 东莞理工学院 修复多节点失效的mds阵列码编码以及解码方法
CN107395207B (zh) * 2017-07-12 2019-11-22 紫晟科技(深圳)有限公司 多容错性的mds阵列码编码以及修复方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060218470A1 (en) * 2005-03-15 2006-09-28 Inostor Corporation Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same
CN108352845A (zh) * 2015-11-10 2018-07-31 华为技术有限公司 用于对存储数据进行编码的方法以及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HOU, HANXU ET AL.: "Triple-Fault-Tolerant Binary MDS Array Codes with Asymptotically Optimal Repair", 2017 IEEE INTERNATIONAL SYMPOSIUM ON INFORMATION THEORY, 31 December 2017 (2017-12-31), XP033140160 *
HUANG ZHIJIE: "Research on MDS Aray Codes in Fault-Tolerant Storage Systems", CHINESES DOCTORAL DISSERTATION FULL DATABASE INFORMATIONSCIENCE AND TECHNOLOGY, 15 August 2017 (2017-08-15), pages 6 - 8 *

Also Published As

Publication number Publication date
CN109257049B (zh) 2020-11-06
CN109257049A (zh) 2019-01-22

Similar Documents

Publication Publication Date Title
Huang et al. Binary linear locally repairable codes
US10146618B2 (en) Distributed data storage with reduced storage overhead using reduced-dependency erasure codes
Tamo et al. Zigzag codes: MDS array codes with optimal rebuilding
WO2018171111A1 (zh) 多容错性的mds阵列码编码以及修复方法
US8928503B2 (en) Data encoding methods, data decoding methods, data reconstruction methods, data encoding devices, data decoding devices, and data reconstruction devices
WO2018072294A1 (zh) 一种校验矩阵的构造方法及水平阵列纠删码的构造方法
WO2018000788A1 (zh) 一种数据存储方法和装置、一种数据恢复方法和装置
US10425106B2 (en) Balanced Reed-Solomon codes
US10090860B2 (en) Memory system using integrated parallel interleaved concatenation
Hou et al. A new design of binary MDS array codes with asymptotically weak-optimal repair
WO2020029418A1 (zh) 一种修复二进制码生成矩阵构造方法及修复方法
Hou et al. A new construction of EVENODD codes with lower computational complexity
CN109358980B (zh) 一种对数据更新和单磁盘错误修复友好的raid6编码方法
WO2019246527A1 (en) Method and apparatus for improved data recovery in data storage systems
WO2020029423A1 (zh) 一种修复二进制阵列码校验矩阵的构造方法及修复方法
Balaji et al. On partial maximally-recoverable and maximally-recoverable codes
WO2020029417A1 (zh) 一种二进制mds阵列编码的编码框架方法
WO2018029212A1 (en) Regenerating locally repairable codes for distributed storage systems
Chen et al. A new Zigzag MDS code with optimal encoding and efficient decoding
Yang et al. Hierarchical coding to enable scalability and flexibility in heterogeneous cloud storage
CN110431531B (zh) 存储控制器、数据处理芯片及数据处理方法
WO2017041231A1 (zh) 一种精确修复的二进制再生码编解码
CN107615248B (zh) 分布式数据存储方法、控制设备和系统
US20190114221A1 (en) Coding technique
Lan et al. Efficient Repair Algorithm for Information Column of EVENODD (p, 4) Codes

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18929404

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18929404

Country of ref document: EP

Kind code of ref document: A1