CN109496298A - 一种evenodd码的构造方法 - Google Patents

一种evenodd码的构造方法 Download PDF

Info

Publication number
CN109496298A
CN109496298A CN201880000729.5A CN201880000729A CN109496298A CN 109496298 A CN109496298 A CN 109496298A CN 201880000729 A CN201880000729 A CN 201880000729A CN 109496298 A CN109496298 A CN 109496298A
Authority
CN
China
Prior art keywords
evenodd
code
column
check
information
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.)
Pending
Application number
CN201880000729.5A
Other languages
English (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.)
Dongguan University of Technology
Original Assignee
Dongguan University of 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 Dongguan University of Technology filed Critical Dongguan University of Technology
Publication of CN109496298A publication Critical patent/CN109496298A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明适用于编解码算法技术改进领域,提供了一种EVENODD码的构造方法,EVENODD码是用于纠正RAID‑6中的两磁盘故障情况的二进制阵列码,具有渐近最优化的编、解码复杂度。然而,EVENODD码的更新复杂性是次优的。我们提出了一种新的二进制MDS阵列码构造,即EVENODD+码,使得EVENODD+码的编码、解码和更新复杂度低于EVENODD。而且EVENODD+码更新复杂度能达到渐近最优化。

Description

一种EVENODD码的构造方法
技术领域
本发明属于编解码算法技术改进领域,尤其涉及一种EVENODD码的构造方法。
背景技术
阵列码已经广泛应用于存储系统中,如使用廉价磁盘冗余阵列(RAID)[1]以提高数据可靠性。其中,RAID-6阵列码使用独立两个磁盘存储奇偶校验码,并且能容纳任意两个磁盘故障。
假设一个大小为r×n的二进制阵列码,其中数组中的每个条目存储一个比特数据。阵列码的n列中,前k列称为信息列,对应为k个信息比特,剩余的n-k列称为校验列,对应为n-k个校验比特。实际上阵列码是最大距离可分码(MDS)。即取任意k列就能解码出原始信息比特;也就是说,可以容纳任意n-k列失效。(注意这里的MDS属性是通过列权来衡量的,而不是汉明重量)其中行数r取决于阵列码的结构。除了MDS属性以外,其他一些重要的性能指标,如编码复杂度(即构造校验比特所需的XOR次数),解码复杂度(即从存活的编码比特中恢复失效信息比特所需的XOR次数)和更新复杂度(即受单个信息比特变化影响的校验比特更新的平均个数)。其中,更新复杂度影响小写更新的性能,并且是具有密集型更新工作负载的存储应用程序(如数据库)的关键指标。所以设计出尽可能低更新复杂度的阵列码具有重大意义。
以往文献中有许多二进制MDS阵列码的构造方法。EVENODD码[2]和RDP码[3]是能纠正两磁盘失效的阵列码的代表。其他二进制MDS阵列码有如X-code[4],Liberation code[5],H-code[6],C-code[7],HV code[8]和Short code[9]。EVENODD码在[10]中被设计出良好的能扩展出更多校验列的代数结构。因此,在这项研究中,我们专注于扩展EVENODD码以提高其性能。
发明内容
本发明的目的在于提供一种EVENODD码的构造方法,旨在解决编解码复杂、更新复杂度高的技术问题。
本发明是这样实现的,一种EVENODD码的构造方法,所述EVENODD码的构造方法包括以下步骤:
S1、在(m-1)×(k+2)的EVENODD+码的中,第j个信息列的第i个信息比特为bi,j,其中i=0,1,…,m-2,j=0,1,…,k-1。令bm-1,j=0,其中j=0,1,…,k-1,第k列即第一个校验列由以下公式计算为:取0≤i≤m-2,第k+1列即第二个校验列由以下公式计算为:
将上述方程的矩阵表示为EVENODD+(m,k);m≥k;m表示每列存储比特个数减一;k表示信息列个数;j表示列的标号;i表示行的标号。
本发明的进一步技术方案是:所述EVENODD+(m,k)中具有两个校验列,在(m-1)×(k+2)的阵列码中令j=0,1,…,k-1,前j列称为信息列,存储信息比特,令j=k,k+1,后j列称为校验列,存储校验比特。
本发明的进一步技术方案是:其特征在于,所述EVENODD+(m,k)在m是一个奇整数且m除1之外的所有因子均与k互素时是MDS阵列码。
本发明的进一步技术方案是:所述EVENODD+(m,k)码的编、解码和更新复杂度分别为
本发明的有益效果是:新的EVENODD+码结构有效的降低了更新复杂度和编解码的难度;能容纳更多校验列的扩展构造和针对列失效情况的有效的修复算法的设计。
附图说明
图1是本发明实施例提供的EVENODD码的构造方法流程图。
具体实施方式
如图1所示,本发明提供的EVENODD码的构造方法,所述EVENODD码的构造方法包括以下步骤:
S1、在(m-1)×(k+2)的EVENODD+码的中,第j个信息列的第i个信息比特为bi,j,其中i=0,1,…,m-2,j=0,1,…,k-1。令bm-1,j=0,其中j=0,1,…,k-1,第k列即第一个校验列由以下公式计算为:取0≤i≤m-2,第k+1列即第二个校验列由以下公式计算为:
将上述方程的矩阵表示为EVENODD+(m,k);m≥k;m表示每列存储比特个数减一;k表示信息列个数;j表示列的标号;i表示行的标号。
EVENODD码通过构建一个(p-1)×(k+2)的矩阵来存储原始信息比特和校验比特,其中p为素数且p≥k。阵列码的前k列为信息列,最后两列为校验列1。令i=0,1,…,p-2,j=0,1,…,k+1,bi,j表示为矩阵中第j信息列的第i个比特。第k列中的校验比特bi,k通过以下公式计算:
第k+1列中的校验比特bi,k+1通过以下公式计算:
当j=0,1,…,k-1时,bp-1,j=0,同时注意:上述的下标是以模p为单位。计算得到EVENODD码的编码复杂度为(p-1)(2k-1)-1,这是最优的情况[2]。但是,EVENODD码的更新复杂度为这是次优的情况。(注意:具有2个校验比特的二进制MDS阵列码的最优更新复杂度为
现在,我们设计出EVENODD+码,它是EVENODD码的扩展结构。EVENODD+码属于MDS码且拥有与EVENODD码相同的容错率为2的能力。在特殊情况下,它也可化简为EVENODD码。经过实验证明EVENODD+码相比于EVENODD码具有更低的编解码、更新复杂度,而且EVENODD+码的更新复杂度是渐进最优化的。EVENODD+码的设计原理如下。在原始的EVENODD码中,bp-1,k+1被添加到第k+1列中的每个校验比特,从而使得更新复杂度为次优化。因此,EVENODD+码的主要思路是保留MDS属性,但避免在第k+1列中的每个校验比特中加入一个特殊比特。这有助于EVENODD+码降低了更新复杂度。
注意,这里EVENODD码的定义是指[2]中原始EVENODD码的简化版代码,我们通过从原始(p-1)×(p+2)的EVENODD码中删除p-k个信息列获得这个码。原始的EVENODD代码可以看作是当k=p的简化版EVENODD码的特例。
表格I:EVENODD+(9,3)(注:b8,4=b7,1+b6,2)
b<sub>0,0</sub> b<sub>0,1</sub> b<sub>0,2</sub> b<sub>0,0</sub>+b<sub>0,1</sub>+b<sub>0,2</sub> b<sub>0,0</sub>+b<sub>7,2</sub>+b<sub>8,4</sub>
b<sub>1,0</sub> b<sub>1,1</sub> b<sub>1,2</sub> b<sub>1,0</sub>+b<sub>1,1+</sub>b<sub>1,2</sub> b<sub>1,0</sub>+b<sub>0,1+</sub>b<sub>8,4</sub>
b<sub>2,0</sub> b<sub>2,1</sub> b<sub>2,2</sub> b<sub>2,0</sub>+b<sub>2,1</sub>+b<sub>2,2</sub> b<sub>2,0</sub>+b<sub>1,1</sub>+b<sub>0,2</sub>
b<sub>3,0</sub> b<sub>3,1</sub> b<sub>3,2</sub> b<sub>3,0</sub>+b<sub>3,1</sub>+b<sub>3,2</sub> b<sub>3,0</sub>+b<sub>2,1</sub>+b<sub>1,2</sub>
b<sub>4,0</sub> b<sub>4,1</sub> b<sub>4,2</sub> b<sub>4,0</sub>+b<sub>4,1+</sub>b<sub>4,2</sub> b<sub>4,0</sub>+b<sub>3,1+</sub>b<sub>2,2</sub>
b<sub>5,0</sub> b<sub>5,1</sub> b<sub>5,2</sub> b<sub>5,0</sub>+b<sub>5,1+</sub>b<sub>5,2</sub> b<sub>5,0</sub>+b<sub>4,1+</sub>b<sub>3,2</sub>
b<sub>6,0</sub> b<sub>6,1</sub> b<sub>6,2</sub> b<sub>6,0</sub>+b<sub>6,1</sub>+b<sub>6,2</sub> b<sub>6,0</sub>+b<sub>5,1+</sub>b<sub>4,2</sub>
b<sub>7,0</sub> b<sub>7,1</sub> b<sub>7,2</sub> b<sub>7,0</sub>+b<sub>7,1</sub>+b<sub>7,2</sub> b<sub>7,0</sub>+b<sub>6,1</sub>+b<sub>5,2</sub>
EVENODD+的新结构
我们现在提出EVENODD+码(具有两个校验列)。给定一个奇整数m≥k,接下来我们定义一个大小为(m-1)×(k+2)的阵列码。令j=0,1,...,k-1,前j列称为信息列,存储信息比特,即b0,j,b1,j,...,bm-2,j。令j=k,k+1,后j列称为校验列,存储校验比特,即b0,j,b1,j,…,bm-2,j
注:下标除非另有说明,否则在整篇论文中均为取模m为单位。
给定大小为(m-1)×k的信息阵列bi,j,其中i=0,1,…,m-2和j=0,1,…,k-1。我们假设bm-1,j=0,令j=0,1,…,k-1。第k列由以下公式计算:取0≤i≤m-2(1)
第k+1列由以下公式计算:
注:我们将上述方程中定义的矩阵表示为EVENODD+(m,k)。EVENODD+(m,k)码和原始的EVENODD码的主要区别有两点。第一,在EVENODD+(m,k)码中每一列的比特数更加灵活,即m是一个满足定理1(见第三节)的奇整数,而p是EVENODD中的素数。第二,两个码中的第k+1列上的校验比特是不同的。在EVENODD+(m,k)中,我们只将bm-1,k+1添加到第k+1列上的前个校验比特上面,而在EVENODD码中bp-1,k+1将会被添加到第k+1列上所有的校验比特。以上两个差异使EVENODD+(m,k)码比EVENODD码能达到渐进最佳更新复杂度和更低的编、解码复杂度。当m=p=k时,EVENODD+(m,k)码可以简化为EVENODD码。表格I表明了:EVENODD+(9,3)码的一个例子,其中b8,4被添加到第4列中的头两个校验比特中。
MDS属性
将证明定理1中EVENODD+(m,k)码的MDS属性,同时也给出了能纠正任意两列失效情况的解码方法。
定理1.EVENODD+(m,k)码“当且仅当”m是一个奇整数(除了1之外的所有除数都大于k-1)时是MDS阵列码。
证明:“当”。我们注意到当m是一个奇整数时(除了1之外的所有除数都大于k-1),EVENODD+(m,k)码是MDS阵列码。换句话说即任意两列失效后可以都重建出k(m-1)个信息比特。重建可分为3种情况:(i)从所有的信息列中解码(ii)从任意k-1个信息列和一个校验列中解码(iii)从任意k-2个信息列和两个校验列中解码。
首先讨论(i),我们可以直接从k个信息列中获得k(m-1)个信息比特。其次讨论(ii),首先我们假设第f列和第k+1列失效,其中0≤f≤k-1。我们可以通过以下公式(1)恢复第f列的信息比特:
bi,k+(bi,0+bi,1+…+bi,f-1+bi,f+1+…+bi,k-1)=bi,f取i=0,1,…,m-2。然后,我们假设第f列和第k列失效,其中0≤f≤k-1.取时,bi-f,f可以通过以下公式恢复:
上面的第一个等式来自公式(2)。如果f=0,其他的信息比特bi,0可以通过以下公式修复:
上面第一个等式来自公式(2),取除此以外,如果f≥1,我们可以设则bm-f-1,f可以通过以下公式恢复:
上面的第一个等式来自公式(2),最后一个等式来自bm-1,f=0。现在,bm-f-1,f已经计算出来,我们可以修复bi-f,f如下:
因此我们可以通过第二种方式恢复第f列。
最后,讨论(iii)。在不失一般性的前提下,我们假设两个失效的信息列分别是f和g,其中0≤f≤g≤k-1。当我们想解码出第f、g列时,我们首先通过将第k和k+1列的所有校验比特相加得到bm-1,k+1。方法如下:
m-1,k+1 (5)
在上面的等式中,(3)来自(1)和(2);(4)来自bm-1,j=0,取j=0,1,…,k-1;(5)来自{-j,1-j,…,m-1-j}={0,1,…,m-1}mod m,当 我们让bi,k+1-bm-1,k+1同时让b′i,k+1=bi,k+1,而取
最后我们通过公式(2)可以得到:
取i=0,1,…,m-1。接着,我们取i=0,1,…,m-1,从b′i,k+1和bi,k中减去存活的k-2个信息列的(k-2)(m-1)个信息比特,然后得到如下2m个比特:
bi,f+bi,g和bg-f+i,f+bi,g取i=0,1,…,m-1 (6)
回顾之前,bm-1,f=bm-1,g=0,我们可推导出:
然后我们计算b2(g-f)+m-1,f和b2(g-f)+m-1,g如下:
当i=0,1,…,m-1,信息比特bi(g-f)+m-1,f和bi(g-f)+m-1,g可以通过下列情况迭代解码:
{m-1+i(g-f)mod m|1≤i≤m-1}
={0,…,m-2} (7)
其中,1≤g-f≤k-1而且m的所有除数除了1都大于k-1,这时我们可以得到gcd(g-f,m)=1。首先我们证明当i≠j时,(m-1+i(g-f))mod m≠(m-1+j(g-f))mod m。如果当1≤i≤j≤m-1时(m-1+i(g-f))mod m=(m-1+j(g-f))mod m,则存在整数l使得(m-1)+j(g-f)=lm+m-1+i(g-f)
上述等式可以化简为:
(j-i)(g-f)=lm
由于gcd(g-f,m)=1,所以我们得到(j-i)|m。但是,这是不可能的,因为1≤i≤j≤m-2。同样,我们可以证明,对于1≤i≤m-1,
m-1+i(g-f)mod m≠m-1
因此,等式(7)成立。所以,当m是奇数时(m的所有除数除了1都大于k-1),我们可以对第f和g列解码出所有的信息比特。
“当且仅当”。如果EVENODD+(m,k)码是MDS码,那么我们可以从任意k列中恢复所有的信息比特。考虑到我们希望从其他k-2个信息列和2个校验列中恢复第f和g列信息列的情况。通过上述(iii)的相同程序,如果等式(7)成立,我们恢复第f和g列信息列的所有信息比特。由于只有gcd(g-f,m)=1时公式(7)才成立,m的所有除数除了1都大于k-1。这就完成了证明。
我们通过表格I中m=9,k=3的例子在展示(iii)的重建方法。假设第f和g信息列失效,其中1≤f≤g≤2。我们可以将第3、4列的所有校验比特求和来计算b8,4
在b0,4和b1,4中减去b8,4后我们可以得到18个下列比特:bi,3=bi,0+bi,1+bi,2和b′i,4=bi,0+b(i-1)mod 9,1+b(i-2)mod 9,2,其中i=0,1,…,8。然后从bi,3和b′i,4中减去bi,l,其中i=0,1,…,8。当l={0,1,2}\{g,f}时得到18个下列比特:
bi,f+bi,g和b(g-f+i)mod 9,f+bi,g i=0,1,…,8.
当b8,f=b8,g=0时,我们可以得到b(g-f+i)mod 9,f=b(g-f+i)mod 9,f+b8,g,和b(g-f+i)mod 9,g=b(g-f+i)mod 9,f+(b(g-f+i)mod 9,f+b(g-f+i)mod 9,g)其他信息比特可以迭代地恢复。
我们注意到定理1中证明的第三种情况,通过公式(3)将所有2(m-1)个校验比特求和得到bm-1,k+1的计算过程是关键点。根据公式(3),如果在第k+1列(包含bm-1,k+1)中有偶数个校验比特,则我们总能计算得到bm-1,k+1。这也是我们为啥把bm-1,k+1添加到第k+1列前个校验比特的原因之一。但是为了确保任意k-1个信息列和第k+1列能恢复出所有的信息比特,第k+1列(包含bm-1,k+1)中校验比特的数量不应少于个。
复杂度分析
下面的定理给出了EVENODD+(m,k)码的编、解码和更新复杂度。注意:我们只考虑当2个数据块失效时的解码复杂度。
定理2.EVENODD+(m,k)码的编、解码和更新复杂度分别为
证明:首先,考虑编码复杂度。根据公式(1),计算第k列需要进行(k-1)(m-1)次异或运算。根据公式(2),计算第k+1列需要进行(k-1)(m-1)+k-2次异或运算。因此,编码复杂度为2km-2m-k。
然后考虑两数据块失效的解码复杂度。解码过程在定理1的证明中已经给出。首先,我们通过公式(5)计算bm-1,k+1需要2m-3次异或运算。然后通过公式(6)计算需要次异或运算。最后我们恢复失效的2(m-1)个信息比特需要2m-3次异或运算。因此,解码复杂度为
最后,考虑更新复杂度。如果一个信息比特发生改变,我们平均需要更新第k列的一个校验比特和第k+1列的个校验比特。因此,更新复杂度为
将归一化的编码复杂度定义为编码复杂度与信息比特数的比率,而归一化解码复杂度则定义为解码复杂度与信息比特数量的比率。通过定理2,可以得到EVENODD+(m,k)码的归一化编码复杂度为
而EVENODD码的归一化编码复杂度为因此,当m=p>k时,EVENODD+(m,k)码的归一化编码复杂度略小于EVENODD码。
根据定理2,EVENODD+(m,k)码的归一化解码复杂度为而EVENODD码的则为因此,当m=p>k时,EVENODD+(m,k)码的归一化解码复杂度略小于EVENODD码。
根据定理2,EVENODD+(m,k)码的更新复杂度为 如果m>>k,那么更新复杂度接近最优值为因此当m远大于k时,更新复杂度渐进最优化。EVENODD码的更新复杂度为当m=p>k时EVENODD码的更新复杂度要严格大于EVENODD+(m,k)码。表格II给出了EVENODD码和EVENODD+(m,k)码的更新复杂度和文献[11]中的例子(k=7,m=p(取值范围为7~53))。我们发现当m>7时,EVENODD+(m,k)码的更新复杂度比EVENODD码更低,而且这个优势随m的增大变得更加明显。由于m=49时不是素数,我们没有在表格II中的EVENODD码和文献[11]给出结果。
表格II:EVENODD码、EVENODD+(m,k7)码和文献[11]中的例子的更新复杂度
m EVENODD EVENODD+(m,k) [11]例子
7 2.7143 2.7143 2.1429
11 2.7714 2.4286 2.0857
13 2.7857 2.3571 2.0714
17 2.8035 2.2689 2.0536
19 2.8095 2.2381 2.0476
23 2.8182 2.1948 2.0390
29 2.8265 2.1531 2.0306
31 2.8229 2.1429 2.0286
37 2.8333 2.1190 2.0238
41 2.8357 2.1071 2.0214
43 2.8367 2.1020 2.0204
47 2.8385 2.0932 2.0186
49 n/a 2.0893 n/a
53 2.8407 2.0824 2.0165
尽管[11]中的例子具有最佳的更新复杂度,但是没有给出当两个编码列失效时怎样解码出信息比特的方法.同时,[11]中的例子中具有更多校验列的一般化也不一定是MDS码。
我们提出了EVENODD+(m,k)码,这是EVENODD码的新构造,具有渐进最优的更新复杂度,而编、解码复杂度也略低EVENODD码.在降低复杂度的方向上我们的主要思路是只在第二个校验列中将bm-1,k+1添加到前个检验比特,而在传统的EVENODD码中则是将bp-1,k+1添加到第二个校验列的所有校验比特中.至此,我们也将研究能容纳更多校验列的扩展构造和针对列失效情况的有效的修复算法的设计。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (4)

1.一种EVENODD+码的构造方法,其特征在于,所述EVENODD+码的构造方法包括以下步骤:
S1、在(m-1)×(k+2)的EVENODD+码的中,第j个信息列的第i个信息比特为bi,j,其中i=0,1,…,m-2,j=0,1,…,k-1。令bm-1,j=0,其中j=0,1,…,k-1,第k列即第一个校验列由以下公式计算为:取0≤i≤m-2,第k+1列即第二个校验列由以下公式计算为:
将上述方程的矩阵表示为EVENODD+(m,k);m≥k;m表示每列存储比特个数减一;k表示信息列个数;j表示列的标号;i表示行的标号。
2.根据权利要求1所述的EVENODD+码的构造方法,其特征在于,所述EVENODD+(m,k)中具有两个校验列,在(m-1)×(k+2)的阵列码中令j=0,1,…,k-1,前j列称为信息列,存储信息比特,令j=k,k+1,后j列称为校验列,存储校验比特。
3.根据权利要求2所述的EVENODD+码的构造方法,其特征在于,所述EVENODD+(m,k)在m是一个奇整数且m除1之外的所有因子均与k互素时是MDS阵列码。
4.根据权利要求3所述的EVENODD+码的构造方法,其特征在于,所述EVENODD+(m,k)码的编、解码和更新复杂度分别为
CN201880000729.5A 2018-06-01 2018-06-01 一种evenodd码的构造方法 Pending CN109496298A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/089493 WO2019227456A1 (zh) 2018-06-01 2018-06-01 一种evenodd码的构造方法

Publications (1)

Publication Number Publication Date
CN109496298A true CN109496298A (zh) 2019-03-19

Family

ID=65713812

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880000729.5A Pending CN109496298A (zh) 2018-06-01 2018-06-01 一种evenodd码的构造方法

Country Status (2)

Country Link
CN (1) CN109496298A (zh)
WO (1) WO2019227456A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110289864A (zh) * 2019-08-01 2019-09-27 东莞理工学院 二进制mds阵列码的最优修复访问变换方法及装置
CN113452479A (zh) * 2021-06-08 2021-09-28 东莞理工学院 Evenodd码的编码方法及其解码方法
CN113641531A (zh) * 2021-07-27 2021-11-12 东莞理工学院 Star码的编码方法及其解码方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050015700A1 (en) * 2003-07-14 2005-01-20 International Business Machines Corporation Raid 3 + 3
CN107086870A (zh) * 2017-03-16 2017-08-22 东莞理工学院 修复多节点失效的mds阵列码编码以及解码方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7945729B2 (en) * 2004-11-24 2011-05-17 International Business Machines Corporation System and method for tolerating multiple storage device failures in a storage system using horizontal and vertical parity layouts
CN104850468B (zh) * 2015-05-31 2018-04-27 上海交通大学 基于校验矩阵的纠删码解码方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050015700A1 (en) * 2003-07-14 2005-01-20 International Business Machines Corporation Raid 3 + 3
CN107086870A (zh) * 2017-03-16 2017-08-22 东莞理工学院 修复多节点失效的mds阵列码编码以及解码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HANXU HOU等: "A New Construction of EVENODD Codes With Lower Computational Complexity", 《IEEE》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110289864A (zh) * 2019-08-01 2019-09-27 东莞理工学院 二进制mds阵列码的最优修复访问变换方法及装置
CN113452479A (zh) * 2021-06-08 2021-09-28 东莞理工学院 Evenodd码的编码方法及其解码方法
CN113641531A (zh) * 2021-07-27 2021-11-12 东莞理工学院 Star码的编码方法及其解码方法

Also Published As

Publication number Publication date
WO2019227456A1 (zh) 2019-12-05

Similar Documents

Publication Publication Date Title
Blaum et al. EVENODD: An efficient scheme for tolerating double disk failures in RAID architectures
Huang et al. Binary linear locally repairable codes
Greenan et al. Flat XOR-based erasure codes in storage systems: Constructions, efficient recovery, and tradeoffs
CN103392172B (zh) 纠正存储阵列中的擦除
US8856619B1 (en) Storing data across groups of storage nodes
US8683294B1 (en) Efficient encoding of homed data
US8359524B2 (en) Parallel reed-solomon RAID (RS-RAID) architecture, device, and method
US8522122B2 (en) Correcting memory device and memory channel failures in the presence of known memory device failures
US8489916B2 (en) Multi-disk fault-tolerant system, method for generating a check block, and method for recovering a data block
WO2016058289A1 (zh) 一种能修复多个节点失效的mds纠删码
EP1828899B1 (en) Method and system for syndrome generation and data recovery
CN103971751B (zh) 以选择性二进制及非二进制解码在闪存中进行检测和解码
CN109496298A (zh) 一种evenodd码的构造方法
WO2018072294A1 (zh) 一种校验矩阵的构造方法及水平阵列纠删码的构造方法
Blaum A family of MDS array codes with minimal number of encoding operations
CN101946230B (zh) 用于检测和校正所接收的符号串中的定相突发差错、删除、符号差错和位差错的方法和系统
CN105356892B (zh) 网络编码的方法及系统
Hu et al. New constructions of SD and MR codes over small finite fields
CN101779379B (zh) 使用通用级联码(gcc)进行编码和解码
CN105808170A (zh) 一种能够以最小磁盘读写修复单磁盘错误的raid6编码方法
CN109086000A (zh) 一种raid存储系统中的三容错数据布局方法
CN109358980A (zh) 一种对数据更新和单磁盘错误修复友好的raid6编码方法
WO2017041232A1 (zh) 一种二进制循环码的编解码框架
CN115993941B (zh) 分布式数据存储纠错方法及系统
US20070006019A1 (en) Data storage system

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190319