CN109358980B - 一种对数据更新和单磁盘错误修复友好的raid6编码方法 - Google Patents

一种对数据更新和单磁盘错误修复友好的raid6编码方法 Download PDF

Info

Publication number
CN109358980B
CN109358980B CN201811113323.6A CN201811113323A CN109358980B CN 109358980 B CN109358980 B CN 109358980B CN 201811113323 A CN201811113323 A CN 201811113323A CN 109358980 B CN109358980 B CN 109358980B
Authority
CN
China
Prior art keywords
disk
data
encoding
matrix
subscript
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.)
Active
Application number
CN201811113323.6A
Other languages
English (en)
Other versions
CN109358980A (zh
Inventor
王艳
陈宇斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
East China Jiaotong University
Original Assignee
East China Jiaotong University
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 East China Jiaotong University filed Critical East China Jiaotong University
Priority to CN201811113323.6A priority Critical patent/CN109358980B/zh
Publication of CN109358980A publication Critical patent/CN109358980A/zh
Application granted granted Critical
Publication of CN109358980B publication Critical patent/CN109358980B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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)
  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

一种对数据更新和单磁盘错误修复友好的RAID6编码方法,包括编码方案和单个磁盘错误修复方案。在单个磁盘错误修复方案中,除最后一个冗余节点失效的情况外,修复单个数据节点过程中每一个正常工作的数据节点仅需读取所存储数据块的一半,并且在传输前无需对读取的内容进行编码运算。在编码方案中,编码更新一个数据块所需要的平均XOR次数为(k+5)/4+2/k次,其中k为编码系统中的系统盘个数。本编码方案中,编码生成最后一个校验盘(即非行校验盘)所需要的平均XOR次数为k次。当单个系统盘或行校验盘失效时,本发明在未失效盘中读取的数据量总计为M(k+1)/2;当k较大时,本发明对磁盘读写的占用减少了约50%,可以较快的重构出失效磁盘上所存储的数据。

Description

一种对数据更新和单磁盘错误修复友好的RAID6编码方法
技术领域
本发明涉及一种对数据更新和单磁盘错误修复友好的RAID6编码方法,属于编码论中的纠删码技术领域。
背景技术
信息社会中数据量的爆炸式增长对大容量可靠存储提出了更高的要求。为此,存储系统一方面不断提高单个磁盘的容量,一方面通过磁盘阵列或者分布式存储的形式将多个磁盘整合起来提供大容量的可靠存储服务。由于应用了大量的廉价磁盘,磁盘失效的情况经常发生。为保障数据可靠性,系统需要存储一定的冗余数据,以便能够在某些磁盘失效的情况下仍然可以恢复出所存储的信息。每当有磁盘失效时,系统需要在一个替代磁盘上重构失效磁盘上存储的数据。这一过程称为数据修复过程。本发明设计一类新的编码来优化数据修复过程的性能。
公告号CN105808170公开了一种能够以最小磁盘读写修复单磁盘错误的RAID6编码方法,该专利的编码方案指的是冗余节点所存储的校验数据生成方法,由构造编码矩阵获得。
本发明涉及二元有限域上的阵列码。这类编码将存储的数据抽象为一个m行n列的阵列,阵列中的每个元素为一个比特,即二元有限域上的一个元素。实际应用中阵列的元素可以为等长的比特序列(通常称为一个数据块)。每个存储节点存储阵列中的一列,因而n即存储节点的个数。对于能够容忍两个磁盘失效的二容错阵列码,阵列中的前k=n-2列存储未编码的原始数据,第k+1列和k+2列存储冗余数据。存储原始数据的列(节点)通常称为系统盘,冗余数据的列(节点)通常称为校验盘,校验盘中的每个元素都由系统盘中若干个原始数据元素经过异或运算所得,即奇偶校验和。RAID-6系统是这类编码的一个典型应用场景。通常RAID-6编码中第k+1列中的每个元素由系统盘中(即前k列中)位于同一行的元素经过异或运算所得,因而又称为行校验。RAID-6系统规范并未限定第k+2列冗余数据的生成方法。
当有单个存储节点失效时,传统阵列码的修复方法是:如果失效的节点为校验盘,则根据编码的定义再次通过系统盘上的数据生成冗余数据;如果失效的节点为系统盘,则利用剩余的k-1个系统盘与一个校验盘恢复失效节点上存储的数据。这两种情况都需要从k个盘中总共读取m*k个元素来进行数据修复,消耗了大量的磁盘读写(I/O)资源。近年来有学者针对已有的RAID-6编码设计了特别的修复算法,允许从剩余的k+1个可用磁盘中读取数据,充分利用两个校验盘中的校验数据,使得修复单个磁盘时平均所需读取的数据量降低了约25%。
发明内容
本发明的目的是,为了在单个磁盘失效时,能够及时高效地恢复损坏磁盘上所存储的数据,本发明提出一种对数据更新和单磁盘错误修复友好的RAID6编码方法。
实现本发明的技术方案如下:一种对数据更新和单磁盘错误修复友好的RAID6编码方法,所述方法包括编码方案和单个磁盘错误修复方案;所述编码方案是两个冗余磁盘所存储的校验数据生成方法;在单个磁盘错误修复方案中,除最后一个冗余节点失效的情况外,修复单个数据节点过程中每一个正常工作的数据节点仅需读取所存储数据块的一半,并且在传输前无需对读取的内容进行编码运算。
所述编码方案为:
设系统中共有n(n>4)个磁盘,其中有k=n-2个系统盘,令m=2k-1,将待存储的原始数据划分为等长的mk个数据块,每个系统盘中存储m个数据块的原始数据;令ai,j表示第i个盘中存储的第j个数据块。
将每个盘中存储的数据看作长度为m的列向量并记为ai=(ai,1,ai,2,...,ai,m)T
其中,上标T表示矩阵转置。
第一个校验盘采用行校验编码,即ak+1=a1+a2+…+ak;这里加法为异或运算;
第二个校验盘的数据可以表示为ak+2=A1a1+A2a2+…+Akak,其中A1,A2,…,Ak为m行m列的矩阵,其中的元素都取自二元有限域;通过给出矩阵A1,A2,…,Ak的构造方法来给出第二个校验盘的编码方案;
对于任意给定的参数k>2,采用以下算法步骤构造编码矩阵:
第1步:令
Figure BDA0001809819980000031
Figure BDA0001809819980000032
i←3;
第2步:若i=k,则输出矩阵A1,A2,…,Ak,其中Aj=Bj+Bk+1,j=1,2,…,k;否则进行下一步;
第3步:对于j=1,2,令
Figure BDA0001809819980000041
令对于j=3,4,…,i,令
Figure BDA0001809819980000042
然后令
Figure BDA0001809819980000043
其中0,I分别为2i-1行2i-1列的0矩阵和单位矩阵;
第4步:令i←i+1,转到第2步。
所述编码方案中,编码更新一个数据块所需要的平均XOR次数为(k+5)/4+2/k次,其中k为编码系统中的系统盘个数。
所述编码方案中,编码生成最后一个校验盘所需要的平均XOR次数为k次。
所述单个磁盘失效的修复方案如下:
当第k+2个盘(即第二个校验盘)失效时,读取前k个盘存储的数据并按照编码方案重新生成第二个校验盘存储的数据;
当需要修复的是第i(i<k+2)个盘时,要读取的数据量比传统编码减少约50%,按以下步骤进行修复:
第1步:通过以下步骤构造下标集合Ri
第1.1步:令R1={1,2},R2={3,4},R3={1,4},R4={2,3},j←3;
第1.2步:若j=k,输出Ri,否则转第1.3步;
第1.3步:令Rj+2={2j-1+1,2j-1+2,2j-1+3,…,2j-1+2j-1};对于q=1,2,…,j+1,令
Figure BDA0001809819980000044
第1.4步:令j←j+1;转第1.2步;
第2步:读取未失效盘中由下标集合Ri指定的数据块,例如若Ri={1,2,5,6},则对于每一个未失效盘aj,读取其中第1、2、5、6个数据块aj,1,aj,2,aj,5,aj,6;将第j个盘中由下标集Ri指定的若干数据块看作一个列向量,并记为aj|Ri;利用行校验修复失效盘中由下标集Ri指定的数据块,即ai|Ri=a1|Ri+a2|Ri+…+ai-1|Ri+ai+1|Ri+…+ak+1|Ri
第3步:构造矩阵
Figure BDA0001809819980000051
其中0,I分别为2k-2行2k-2列的0矩阵和单位矩阵;对于下标i<k+1,构造矩阵Bi=Ai+Bk+1
第4步:将失效盘中下标不在Ri中的数据块
Figure BDA0001809819980000052
看作一个列向量并记为x;对于任意下标构成的集合P、Q,令Bj|P,Q表示矩阵Bj中行下标属于P,列下标属于Q的元素构成的子矩阵;令D表示矩阵Bi中行下标属于Ri且列下标不属于Ri的元素构成的子矩阵,根据本编码的构造方法,失效盘中下标不在Ri中的全部数据块x可以通过求解以下方程得出:
Figure BDA0001809819980000053
本发明的有益效果是,当单个系统盘或行校验盘失效时,本发明在未失效盘中读取的数据量总计为M(k+1)/2,而传统的编码及修复方案所需读取的数据量为Mk,这里M为单个磁盘的容量。本发明使修复单个磁盘时所需读取的数据量降低约50%。同现有的一类同样能够以最小磁盘读写修复单个失效磁盘的RAID6编码(称为MDR编码)相比,本发明所提出的编码在同等参数k的情况下,阵列行数m减小了一半,从而可以较快的重构出失效磁盘上所存储的数据,并且在热修复时,对系统中其他应用的不利影响降到最低。
附图说明
图1是校验数据计算方法的示意图,以k=3为例;
图2是修复单个失效磁盘方法的示意图,以k=3为例;
图2(a)为修复磁盘D1所需读取的数据块;
图2(b)为修复磁盘D2所需读取的数据块;
图2(c)为修复磁盘D3所需读取的数据块;
图2(d)为修复磁盘D4所需读取的数据块;
图中图号:D1~D3为数据盘,D4、D5为校验盘。D4为行校验,其数据块由D1、D2、D3中位于同一行的数据块进行异或运算生成。图1中数据块上的标号给出了D5中数据块的计算方式:D5中的数据块由1~4编号,编号为i的数据块由D1~D4中含有编号i的数据块进行异或运算生成,即含有同一编号的数据块全体构成一个校验集,同一校验集中的数据块异或运算之和为0。从而校验集中的任一数据块可由此校验集中的其他数据块进行异或运算求得。例如D5中的第一个数据块由D1中的第1个数据块和第4个数据块、D2中的第1个数据块和D3中的第2个数据块进行异或运算所得。图中所标示的D5中数据的计算方法利用了行校验盘中的数据块。
具体实施方式
本发明所述单个磁盘失效时的修复方案具体实施如下:
图1为校验数据计算方法的示意图,D1~D3为数据盘,D4、D5为校验盘。D4为行校验,其数据块由D1、D2、D3中位于同一行的数据块进行异或运算生成。图1中数据块上的标号给出了D5中数据块的计算方式。
当需要修复的是第k+2个盘(即第二个校验盘)时,需要读取所有的原始数据块,即读取前k个盘存储的数据并按照编码方案重新生成第二个校验盘存储的数据。
当需要修复的是第i(i<k+2)个盘时,要读取的数据量比传统编码减少约50%。
第1步:通过以下步骤构造下标集合Ri
第1.1步:令R1={1,2},R2={3,4},R3={1,4},R4={2,3},j←3;
第1.2步:若j=k,输出Ri,否则转第1.3步;
第1.3步:令Rj+2={2j-1+1,2j-1+2,2j-1+3,…,2j-1+2j-1};对于q=1,2,…,j+1,令
Figure BDA0001809819980000071
第1.4步:令j←j+1;转第1.2步。
第2步:读取未失效盘中由下标集Ri指定的数据块,例如若Ri={1,2,5,6},则对于每一个未失效盘aj,读取其中第1、2、5、6个数据块aj,1,aj,2,aj,5,aj,6。将第j个盘中由下标集Ri指定的若干数据块看作一个列向量,并记为aj|Ri。利用行校验修复失效盘中由下标集Ri指定的数据块,即ai|Ri=a1|Ri+a2|Ri+…+ai-1|Ri+ai+1|Ri+…+ak+1|Ri
第3步:构造矩阵
Figure BDA0001809819980000072
其中0,I分别为2k-2行2k-2列的0矩阵和单位矩阵;对于下标i<k+1,构造矩阵Bi=Ai+Bk+1
第4步:将失效盘中下标不在Ri中的数据块
Figure BDA0001809819980000073
看作一个列向量并记为x。对于任意下标构成的集合P、Q,令Bj|P,Q表示矩阵Bj中行下标属于P,列下标属于Q的元素构成的子矩阵。令D表示矩阵Bi中行下标属于Ri且列下标不属于Ri的元素构成的子矩阵,根据本编码的构造方法,失效盘中下标不在Ri中的全部数据块x可以通过求解以下方程得出:
Figure BDA0001809819980000082
以k=3情况下,第一个磁盘失效的情况为例:计算出R1={1,2},因此读取数据块{aj,1,aj,2|j=2,3,4,5},利用行校验修复数据块a1,1,a1,2,(例如a1,2=a2,2+a3,2+a4,2),对于数据块a1,3,a1,4,根据构造方法有以下方程成立:
Figure BDA0001809819980000081
从而可以按如下方式修复数据块a1,3,a1,4
a1,3=a5,2+a1,2+a2,2+a4,1
a1,4=a5,1+a1,1+a2,1+a3,2
图2是修复单个失效磁盘方法的示意图。
修复磁盘D1所需读取的数据块如图2(a)所示。D1中的第1、2个数据块通过行校验修复,D1中的第3个数据块利用标号2的校验集进行修复,D1中的第4个数据块利用标号1的校验集进行修复。
修复磁盘D2所需读取的数据块如图2(b)所示。D2中的第3、4个数据块通过行校验修复,D2中的第1个数据块利用标号4的校验集进行修复,D2中的第2个数据块利用标号3的校验集进行修复。
修复磁盘D3所需读取的数据块如图2(c)所示。D3中的第1、4个数据块通过行校验修复,D3中的第2个数据块利用标号1的校验集进行修复,D3中的第3个数据块利用标号4的校验集进行修复。
修复磁盘D4所需读取的数据块如图2(d)所示。D4中的第2、3个数据块通过行校验修复,D4中的第1个数据块利用标号2的校验集进行修复,D4中的第4个数据块利用标号3的校验集进行修复。
本实施例方法的实现对硬件环境的要求为可以并行读写的多磁盘存储系统,如磁盘阵列或分布式存储系统。
本实施例的实现需要与文件系统及磁盘驱动紧密结合:向下需要磁盘驱动提供读写接口,向上为文件系统提供可靠存储服务。
本实施例能够以硬RAID卡或软RAID卡的形式实现。本实施例对语言工具没有特别要求,C语言、C++语言、Java语言等都能实现。对操作系统平台也没有特别要求,MicrosoftWindows系统、各种Linux系统、Mac系统等都可以作为操作系统运行平台。
在实现时,本实施例中涉及的一个数据块通常可设定为一次磁盘读写的最小单元,如一个4KB大小的page。为了平衡多个磁盘间的负载,通常需要与传统的RAID轮转技术相结合。将一个磁盘阵列划分为多个条带(stripe),每个条带由各个磁盘中一块相同大小的存储空间组成,每个磁盘在不同条带中的身份(校验盘/系统盘)进行轮转循环。
在实现中,不需要每次编码操作或修复操作都按照说明中给出的算法进行矩阵的乘法、求逆等运算操作。可以通过预先计算得出每个校验数据块所涉及的原始数据块,以及每个磁盘失效时的具体修复方案,然后以硬编码的形式写入代码。

Claims (4)

1.一种对数据更新和单磁盘错误修复友好的RAID6编码方法,其特征在于:所述方法包括编码方案和单个磁盘错误修复方案;所述编码方案是两个冗余磁盘所存储的校验数据生成方法;在单个磁盘错误修复方案中,除最后一个冗余节点失效的情况外,修复单个数据节点过程中每一个正常工作的数据节点仅需读取所存储数据块的一半,并且在传输前无需对读取的内容进行编码运算;
所述编码方案为:
设系统中共有n个磁盘,n>4,其中有k=n-2个系统盘,令m=2k-1,将待存储的原始数据划分为等长的mk个数据块,每个系统盘中存储m个数据块的原始数据;令ai,j表示第i个盘中存储的第j个数据块;
将每个盘中存储的数据看作长度为m的列向量并记为ai=(ai,1,ai,2,...,ai,m)T
其中,上标T表示矩阵转置;
第一个校验盘采用行校验编码,即ak+1=a1+a2+...+ak;这里加法为异或运算;
第二个校验盘的数据可以表示为ak+2=A1a1+A2a2+...+Akak,其中A1,A2,...,Ak为m行m列的矩阵,其中的元素都取自二元有限域;通过给出矩阵A1,A2,...,Ak的构造方法来给出第二个校验盘的编码方案;
对于任意给定的参数k>2,采用以下算法构造编码矩阵:
第1步:令
Figure FDA0003479277940000011
Figure FDA0003479277940000021
第2步:若i=k,则输出矩阵A1,A2,...,Ak,其中Aj=Bj+Bk+1,j=1,2,...,k;否则进行下一步;
第3步:对于j=1,2,令
Figure FDA0003479277940000022
令对于j=3,4,...,i,令
Figure FDA0003479277940000023
然后令
Figure FDA0003479277940000024
其中0,I分别为2i-1行2i-1列的0矩阵和单位矩阵;
第4步:令i←i+1,转到第2步。
2.根据权利要求1所述一种对数据更新和单磁盘错误修复友好的RAID6编码方法,其特征在于,所述单个磁盘失效的修复方案为:
当第k+2个盘,即第二个校验盘失效时,读取前k个盘存储的数据并按照编码方案重新生成第二个校验盘存储的数据;
当需要修复的是第i个盘时,其中i<k+2,要读取的数据量比传统编码减少约50%,按以下步骤进行修复:
第1步:通过以下步骤构造下标集合Ri
第1.1步:令R1={1,2},R2={3,4},R3={1,4},R4={2,3},j←3;
第1.2步:若j=k,输出Ri,否则转第1.3步;
第1.3步:令Rj+2={2j-1+1,2j-1+2,2j-1+3,...,2j-1+2j-1};对于q=1,2,...,j+1,令Rq←RqU{x+2j-1|x∈Rq};
第1.4步:令j←j+1;转第1.2步;
第2步:读取未失效盘中由下标集Ri指定的数据块,若Ri={1,2,5,6},则对于每一个未失效盘aj,读取其中第1、2、5、6个数据块aj,1,aj,2,aj,5,aj,6;将第j个盘中由下标集Ri指定的若干数据块看作一个列向量,并记为aj|Ri;利用行校验修复失效盘中由下标集Ri指定的数据块,即ai|Ri=a1|Ri+a2|Ri+...+ai-1|Ri+ai+1|Ri+...+ak+1|Ri
第3步:构造矩阵
Figure FDA0003479277940000031
其中0,I分别为2k-2行2k-2列的0矩阵和单位矩阵;对于下标i<k+1,构造矩阵Bi=Ai+Bk+1
第4步:将失效盘中下标不在Ri中的数据块{ai,q|q∈Ri}看作一个列向量并记为x;对于任意下标构成的集合P、Q,令Bj|P,Q表示矩阵Bj中行下标属于P,列下标属于Q的元素构成的子矩阵;令D表示矩阵Bi中行下标属于Ri且列下标不属于Ri的元素构成的子矩阵,根据本编码的构造方法,失效盘中下标不在Ri中的全部数据块x可以通过求解以下方程得出:
Figure FDA0003479277940000032
3.根据权利要求1所述一种对数据更新和单磁盘错误修复友好的RAID6编码方法,其特征在于,所述编码方案中,编码更新一个数据块所需要的平均XOR次数为(k+5)/4+2/k次,其中k为编码系统中的系统盘个数。
4.根据权利要求1所述一种对数据更新和单磁盘错误修复友好的RAID6编码方法,其特征在于,所述编码方案中,编码生成最后一个校验盘所需要的平均XOR次数为k次。
CN201811113323.6A 2018-09-25 2018-09-25 一种对数据更新和单磁盘错误修复友好的raid6编码方法 Active CN109358980B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811113323.6A CN109358980B (zh) 2018-09-25 2018-09-25 一种对数据更新和单磁盘错误修复友好的raid6编码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811113323.6A CN109358980B (zh) 2018-09-25 2018-09-25 一种对数据更新和单磁盘错误修复友好的raid6编码方法

Publications (2)

Publication Number Publication Date
CN109358980A CN109358980A (zh) 2019-02-19
CN109358980B true CN109358980B (zh) 2022-03-01

Family

ID=65351350

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811113323.6A Active CN109358980B (zh) 2018-09-25 2018-09-25 一种对数据更新和单磁盘错误修复友好的raid6编码方法

Country Status (1)

Country Link
CN (1) CN109358980B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625181B (zh) * 2019-02-28 2022-03-29 华为技术有限公司 数据处理方法、独立硬盘冗余阵列控制器和数据存储系统
CN112256478B (zh) * 2020-10-16 2023-05-26 山东云海国创云计算装备产业创新中心有限公司 一种单磁盘故障的修复方法、系统、设备及存储介质
CN113190377B (zh) * 2021-05-17 2022-03-11 北京中电兴发科技有限公司 一种基于分布式存储系统的可靠冗余方法及设备
CN114064347B (zh) * 2022-01-18 2022-04-26 苏州浪潮智能科技有限公司 一种数据存储方法、装置、设备及计算机可读存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043685A (zh) * 2010-12-31 2011-05-04 成都市华为赛门铁克科技有限公司 独立磁盘冗余阵列系统及其数据恢复方法
CN102129354A (zh) * 2010-12-08 2011-07-20 北京航空航天大学 一种基于2d-raid阵列的自适应重组方法
CN103678048A (zh) * 2013-11-29 2014-03-26 华为技术有限公司 独立磁盘冗余阵列修复方法、装置和存储设备
CN105159618A (zh) * 2015-09-25 2015-12-16 清华大学 用于单盘失效修复的优化方法及优化装置
CN105353974A (zh) * 2015-10-08 2016-02-24 华东交通大学 一种适用于磁盘阵列及分布式存储系统的二容错编码方法
CN105808170A (zh) * 2016-03-22 2016-07-27 华东交通大学 一种能够以最小磁盘读写修复单磁盘错误的raid6编码方法
US9804939B1 (en) * 2015-09-30 2017-10-31 EMC IP Holding Company LLC Sparse raid rebuild based on storage extent allocation

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107656832B (zh) * 2017-09-18 2019-10-25 华中科技大学 一种低数据重建开销的纠删码方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102129354A (zh) * 2010-12-08 2011-07-20 北京航空航天大学 一种基于2d-raid阵列的自适应重组方法
CN102043685A (zh) * 2010-12-31 2011-05-04 成都市华为赛门铁克科技有限公司 独立磁盘冗余阵列系统及其数据恢复方法
CN103678048A (zh) * 2013-11-29 2014-03-26 华为技术有限公司 独立磁盘冗余阵列修复方法、装置和存储设备
CN105159618A (zh) * 2015-09-25 2015-12-16 清华大学 用于单盘失效修复的优化方法及优化装置
US9804939B1 (en) * 2015-09-30 2017-10-31 EMC IP Holding Company LLC Sparse raid rebuild based on storage extent allocation
CN105353974A (zh) * 2015-10-08 2016-02-24 华东交通大学 一种适用于磁盘阵列及分布式存储系统的二容错编码方法
CN105808170A (zh) * 2016-03-22 2016-07-27 华东交通大学 一种能够以最小磁盘读写修复单磁盘错误的raid6编码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于RAID6的冗长度修复数据的设计方法;梁志恒;《信息与电脑(理论版)》;20141030(第20期);全文 *

Also Published As

Publication number Publication date
CN109358980A (zh) 2019-02-19

Similar Documents

Publication Publication Date Title
CN109358980B (zh) 一种对数据更新和单磁盘错误修复友好的raid6编码方法
US10146618B2 (en) Distributed data storage with reduced storage overhead using reduced-dependency erasure codes
US7529970B2 (en) System and method for improving the performance of operations requiring parity reads in a storage array system
JP4668970B2 (ja) フォールトトレラントデータストレージシステムにおけるブロックレベルのデータ破損の検出および訂正
US9552258B2 (en) Method and system for storing data in raid memory devices
US8166370B1 (en) Efficient RAID ECC controller for RAID systems
Greenan et al. Flat XOR-based erasure codes in storage systems: Constructions, efficient recovery, and tradeoffs
EP1828899B1 (en) Method and system for syndrome generation and data recovery
CN109643258B (zh) 使用高速率最小存储再生擦除代码的多节点修复
CN105353974B (zh) 一种适用于磁盘阵列及分布式存储系统的二容错编码方法
US8392805B2 (en) Non-MDS erasure codes for storage systems
CN105808170B (zh) 一种能够修复单磁盘错误的raid6编码方法
JP2009514056A (ja) データ・ストレージ・アレイ
KR20080071907A (ko) Raid 장치 및 갈로아체를 이용한 데이터 복원 장치
US20120198195A1 (en) Data storage system and method
CN112000512B (zh) 一种数据修复方法及相关装置
US7519629B2 (en) System and method for tolerating multiple storage device failures in a storage system with constrained parity in-degree
US20060107091A1 (en) System and method for recovery of data for a lost sector in a storage system
JP6260193B2 (ja) ストレージシステム、及びストレージプログラム
CN112181707B (zh) 分布式存储数据恢复调度方法、系统、设备及存储介质
JP5360666B2 (ja) 複数のディスクアレイのi/o動作を実行する方法及びシステム
WO2017158430A1 (en) Coding technique
US11831333B2 (en) Encoding for data recovery in storage systems
CN116249969A (zh) 具有内置冗余的数据存储系统以及恢复和存储数据的方法
Liu Repairing Triple Data Erasure with Extending Row Diagonal Parity

Legal Events

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