CN104932836B - 一种提高单写性能的三盘容错编码和解码方法 - Google Patents

一种提高单写性能的三盘容错编码和解码方法 Download PDF

Info

Publication number
CN104932836B
CN104932836B CN201510298870.6A CN201510298870A CN104932836B CN 104932836 B CN104932836 B CN 104932836B CN 201510298870 A CN201510298870 A CN 201510298870A CN 104932836 B CN104932836 B CN 104932836B
Authority
CN
China
Prior art keywords
row
verification
tiltedly
chain
coding
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
CN201510298870.6A
Other languages
English (en)
Other versions
CN104932836A (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.)
Shanghai Jiaotong University
Original Assignee
Shanghai 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 Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201510298870.6A priority Critical patent/CN104932836B/zh
Publication of CN104932836A publication Critical patent/CN104932836A/zh
Application granted granted Critical
Publication of CN104932836B publication Critical patent/CN104932836B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

本发明提供了一种提高单写性能的三盘容错编码和解码方法,本发明编码方法使用原始数据和校验公式生成三种冗余校验元素,分别为行校验、斜校验和反向斜校验元素,使得编码后的磁盘上存在着四种类型的元素:数据元素,行校验元素,斜校验元素,反向斜校验元素,本发明的解码方法是指当磁盘阵列中出现任意三块磁盘同时失效时,可以通过恢复算法和冗余校验元素,将失效磁盘上的数据进行解码恢复,解码方法基于前者的编码结构来实施,本发明能够在保证数据可靠性的基础上,克服现有编码在单写性能上的不足,是一种新型MDS三盘容错编码和解码方法,可以恢复存储系统中任意三块失效磁盘上的数据,在保证数据可靠性的同时,显著提升存储系统的单写性能。

Description

一种提高单写性能的三盘容错编码和解码方法
技术领域
本发明属于大数据与云存储领域,涉及一种提高单写性能的三盘容错编码和解码方法。
背景技术
在大型分布式存储系统中,海量数据被存储在大量冗余磁盘中,使得用户能够并行地获取数据。这些冗余磁盘被称为是独立(廉价)磁盘冗余阵列(RAID)。近来,三盘容错阵列成为大型数据中心的首选,主要有以下两个原因。一方面,磁盘失效比预期的更加频繁。有数据表明,磁盘年失效率(AFR)大于3%,而用户能接受的AFR只有0.8%。另一方面,随着云存储的发展,一个能够容许任意三块磁盘同时失效的阵列是必需的,因为它可以为存储系统提供高可靠性和低成本。
在最近二十年中,不断有新的三盘容错编码被提出,并用于磁盘阵列。这些编码可以被分成两类:MDS编码,和Non-MDS编码。MDS编码可以在给定冗余数量的基础上提供最大的数据保护,因此使用MDS编码的阵列有着最优的存储效率。Non-MDS编码由于牺牲了存储效率,而得到了更高的性能或可靠性。
单写性能是存储系统中一个重要的方面。近年来,由于以下原因,单写性能得到了许多关注:
1、单写请求在写密集型负载中频繁出现。大多数写请求小于8KB,因此可以被看作是单写请求。
2、单写性能影响了磁盘阵列的整体性能。在多数情况下,条带写性能是由单写性能决定的。高效的单写操作可以减少总体I/O数量以及异或操作数量,使得I/O吞吐量得以提高,并降低应用的I/O延迟。
然而,由于以下原因,现有基于MDS编码的磁盘阵列的单写性能不足。
1、一些如RS编码的MDS编码,生成校验值时需要伽罗瓦域上的复杂数学计算,这使得计算开销比异或计算的开销更高,从而减慢存储系统中单写请求的进程速度,导致单写性能很低。
2、一些如STAR编码,Triple-star编码和Cauchy-RS编码的MDS编码,由于某一校验需要参与其它校验的计算,导致单写的I/O开销增大,编码性能降低。
因此,现有MDS编码方法存在着计算开销高和编码性能低等问题,导致了单写性能低,并影响存储系统的性能。
发明内容
本发明的目的在于提供一种提高单写性能的三盘容错编码和解码方法,能够在磁盘阵列中出现任意三块磁盘同时失效时,可以通过恢复算法和冗余校验块,将失效磁盘上的数据进行解码恢复。
为解决上述问题,本发明提供一种提高单写性能的三盘容错编码方法,包括:
根据行校验,斜校验和反向斜校验公式将原始数据填入p-1行p+2列的编码矩阵的数据元素的对应位置中,其中,编码矩阵中的元素包括数据元素,行校验元素,斜校验元素,反向斜校验元素,p为质数;
根据行校验,斜校验和反向斜校验公式,在编码矩阵的第p列和第p+1列分别填入行校验元素和斜校验元素,除去编码矩阵中第0列、第p列和第p+1列,剩下的矩阵是一个p-1行p-1列的方阵,在所述方阵的反斜向部分填入反向斜校验元素。
进一步的,在上述方法中,所述行校验公式为其中,Ci,p表示编码矩阵中的第i行第p列的行校验元素,Ci,j表示编码矩阵中的第i行第j列的元素。
进一步的,在上述方法中,所述斜校验公式为Ci,i+1表示编码矩阵中的第i行第i+1列的斜校验元素,表示编码矩阵中的第<p-2-i+j>p行第j列的元素,<p-2-i+j>p表示以<p-2-i+j>的值对p取模。
根据本发明的另一面,本发明还提供一种提高单写性能的三盘容错解码方法,用于对上述编码方法进行解码,包括:
若磁盘阵列中的失效列分别为f1,f2和f3(0≤f1<f2<f3≤p+1),其中一列是第p+1列,即f3=p+1,0≤f1<f2≤p,使用H-Code的恢复算法来恢复f1和f2两列;
使用斜校验公式恢复f3列。
根据本发明的另一面,本发明还提供一种提高单写性能的三盘容错解码方法,用于对上述编码方法进行解码,包括:
若磁盘阵列中的失效列分别为f1,f2和f3,其中一列是行校验列p,另外两列位于前p列中,则假设编码矩阵的下方有一行虚拟行,其中,虚拟行中的第一个元素被设为0,第2个到第p-1个元素被设为和同一列上反向斜校验元素相同的值后,所述同一列上反向斜校验元素被设为0;
恢复f1和f2两列;
使用行校验公式恢复第f3列。
进一步的,在上述方法中,恢复f1和f2两列包括:
从元素开始重建过程,循环步骤一与步骤二,直至终点为其中,
步骤一为:如果第f1列上的元素被恢复,同一条斜校验链上的随后被恢复;
步骤二为:如果第f2列上的元素被恢复,同一条斜校验链上的随后被恢复。
根据本发明的另一面,本发明还提供一种提高单写性能的三盘容错解码方法,用于对上述编码方法进行解码,包括:
若磁盘阵列中的失效列分别为f1,f2和f3,f1,f2和f3不是第p列和第p+1列,0≤f1<f2<f3≤p-1,将编码矩阵中所有校验链补充完整,并计算校验子,其中,校验子是特定校验方向上未失效校验元素和其相应数据元素的异或和,其值等于该校验方向上所有失效元素的异或和;
通过所述校验子得到4-元组,其中,n-元组表示一个元组内有n个数据元素,这些数据元素可进行异或操作,n为正整数;
根据STAR编码中的引理3,通过起始点恢复第f2列;
根据H-Code的恢复算法,恢复第f1和f3列。
进一步的,在上述方法中,将编码矩阵中所有校验链补充完整,并计算校验子包括:
使用Sr,0,Sr,1和Sr,2来分别表示行校验链,根据行校验,斜校验和反向斜校验公式得到的斜校验链,反向斜校验链上的校验子公式如下;
其中0≤r≤p-1,且j≠f1,f2,f3。例如,对应于数据元素C0,0,行、斜、反向斜校验链上的r值分别是0,0,0。
进一步的,在上述方法中,通过所述校验子得到4-元组包括:
定义一个X-模型,该X-模型包含4条线段,在X-模型中,4条线段表示依次首尾相连的2条行链、1条斜向链和1条反斜向链,相对应的4个校验子表示每条校验链上失效元素的异或和,当磁盘阵列的三列失效,每条校验链上包含了三个失效元素,一共12个失效元素,根据X-模型,其中4个失效元素由于出现两次被抵消,剩下的4个失效元素出现一次,且都出现在第f2列上,把剩下的4个失效元素称为4-元组;
用来表剩下的示4个失效元素的异或和,用以下公式计算
与现有技术相比,本发明与现有技术相比的优点在于:
(1)该编码有最优的存储效率和最优的编码计算复杂度。
(2)相较于现有MDS三盘容错编码,该编码有着很好的单写性能。
(3)相较于现有的Non-MDS三盘容错编码,该编码有着最优的存储效率和最小的存储代价。
附图说明
图1为本发明的生成行校验元素的示意图;
图2为本发明的生成反向斜校验元素的示意图;
图3为本发明的生成斜校验元素的示意图;
图4为本发明的X-模型示意图;
图5为本发明的生成2-元组实例的示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明中的字符含义如下:
n:一个磁盘阵列中的磁盘数量;
p:一个质数,和磁盘阵列中磁盘数量有关;
i:行号;
j:列号;
r:一条校验链的标识
Ci,j:一个第i行第j列上的元素;
f1,f2.f3:三列失效的磁盘标识;
h1,h2:两列失效列的距离(h1=f2-f1,h2=f3-f2);
Sr,0:Cr,p所在行校验链的校验子;
Sr,1:Cr,p+1所在行校验链的校验子;
Sr,2:Cr,0所在行校验链的校验子;
X-模型中失效元素异或和,X-模型的左上角元素是
本发明提供一种提高单写性能的三盘容错编码方法,包括:
步骤S11,根据行校验,斜校验和反向斜校验公式将原始数据填入p-1行p+2列的编码矩阵的数据元素的对应位置中,其中,编码矩阵中的元素包括数据元素,行校验元素,斜校验元素,反向斜校验元素,p为质数,
步骤S12,根据行校验,斜校验和反向斜校验公式,在编码矩阵的第p列和第p+1列分别填入行校验元素和斜校验元素,除去编码矩阵中第0列、第p列和第p+1列,剩下的矩阵是一个p-1行p-1列的方阵,在所述方阵的反斜向部分填入反向斜校验元素;在此,编码矩阵的数据与校验的布局方式如图1-3所示,编码矩阵可以用一个p-1行p+2列的矩阵表示,该编码矩阵是H-Code的扩展,由此,该编码矩阵中有四种类型的元素:数据元素,行校验元素,斜校验元素,反向斜校验元素,在这个矩阵中,第p列和第p+1列分别用来存储行校验元素和斜校验元素。除去第0列和最后两列(第p列和第p+1列),剩下的矩阵是一个p-1行p-1列的方阵,这个方阵的反斜向部分存储了反向斜校验元素,具体操作时,将根据行校验,反向斜校验和斜校验公式所有原始填入编码矩阵的数据元素的对应位置中,按照编码矩阵中数据块与校验块的布局方式标号,Ci,j(0≤i≤p-2,0≤j≤p+1)表示矩阵中第i行第j列的元素,例如,可用C0,0,C0,2,C0,3,C0,4,C1,0,C1,1,C1,3,C1,4等来表示数据元素。
本发明提高单写性能的三盘容错编码方法的一优选的实施例中,所述行校验公式为其中,Ci,p表示编码矩阵中的第i行第p列的行校验元素,Ci,j表示编码矩阵中的第i行第j列的元素。
本发明提高单写性能的三盘容错编码方法的一优选的实施例中,所述斜校验公式为Ci,i+1表示编码矩阵中的第i行第i+1列的斜校验元素,表示编码矩阵中的第<p-2-i+j>p行第j列的元素,〈p-2-i+j〉p表示以〈p-2-i+j〉的值对p取模。
根据本发明的另一面,本发明还提供一种提高单写性能的三盘容错解码方法,用于对采用上述编码方法进行解码,包括:
步骤S21,若磁盘阵列中的失效列(三块磁盘)分别为f1,f2和f3(0≤f1<f2<f3≤p+1),其中一列是第p+1列,即f3=p+1,0≤f1<f2≤p,这种情况和RAID-6阵列下H-Code的数据恢复过程是相似的,使用H-Code的恢复算法来恢复f1和f2两列,H-Code的恢复算法详见[WuC,Wan S,He X,et al.H-Code:A hybrid MDS array code to optimize partial stripewrites in RAID-6[C]//Parallel & Distributed Processing Symposium(IPDPS),2011IEEE International.IEEE,2011:782-793.];
步骤S22,使用斜校验公式恢复f3列。
根据本发明的另一面,本发明还提供一种提高单写性能的三盘容错解码方法,用于对采用上述编码方法进行解码,包括:
步骤S31,若磁盘阵列中的失效列(三块磁盘)分别为f1,f2和f3,其中一列是行校验列p,另外两列位于前p列中,f3=p,0≤f1<f2≤p-1,则假设编码矩阵的下方有一行虚拟行,如图5所示,其中虚拟行中的第一个元素被设为0,第2个到第p-1个元素被设为和同一列上反向斜校验元素相同的值后,所述同一列上反向斜校验元素被设为0,例如,C4,1和C4,2分别被设为和C0,1,C1,2相同的值,接着C0,1,C1,2被设为0,;
步骤S32,恢复f1和f2两列,具体的当虚拟行的元素值准备好后,编码矩阵中每条完整的斜校验链和反向斜校验链丢失了当且仅当两个元素(校验链:一个校验元素和它相应的数据元素组成了一条校验链),如果其中一个丢失的元素被恢复,则同一条斜校验链或反向斜校验链上的另一个丢失元素可以被恢复。举个例子,同理,如果得知了也知道了,一条恢复链上包含了第f1,f2列上的所有元素,且每个元素仅出现一次,第f1列中的元素值等于0,它可以作为数据恢复链上的起始点恢复数据;
步骤S33,使用行校验公式恢复第f3列。
本发明的提高单写性能的三盘容错解码方法的一优选的实施例中,步骤S32,恢复f1和f2两列包括:
从元素开始重建过程,循环步骤一和步骤二,直至终止点为其中,
步骤一为:如果第f1列上的元素被恢复,同一条斜校验链上的随后被恢复;
步骤二为:如果第f2列上的元素被恢复,同一条斜校验链上的随后被恢复。
根据本发明的另一面,本发明还提供一种提高单写性能的三盘容错解码方法,用于对采用上述编码方法进行解码,包括:
步骤S41,若磁盘阵列中的失效列(三块磁盘)分别为f1,f2和f3,三块失效磁盘中没有行校验列和斜校验列,即f1,f2和f3不是第p列和第p+1列,0≤f1<f2<f3≤p-1,将编码矩阵中所有校验链补充完整,并计算校验子,其中,校验子是特定校验方向上未失效校验元素和其相应数据元素的异或和,其值等于该校验方向上所有失效元素的异或和;
步骤S42,通过所述校验子得到4-元组,其中,n-元组表示一个元组内有n个数据元素,这些数据元素可进行异或操作,n为正整数;
步骤S43,根据如下k须满足的条件,将4-元组简化为2-元组,其中,k表示简化成1个2-元组所需要的4-元组的个数,
当〈k·h2-h1p=0时,2-元组元素间距离为d=〈k·h2+h1p,计算相应2-元组异或和的公式为在此,即根据下表进行简化,选择最小的k,并代入相应公式计算,得p组2-元组,最小的k意味着最少的异或操作次数,
步骤S44,根据STAR编码中的引理3,通过起始点恢复第f2列,其中,STAR编码为参考Huang C,Xu L.STAR:An efficient coding scheme for correc ting triplestorage node failures[J].Computers,IEEE Transac tions on,2008,57(7):889-901;
步骤S45,根据H-Code的恢复算法,恢复第f1和f3列。
本发明提高单写性能的三盘容错解码方法的一优选的实施例中,步骤S41,将编码矩阵中所有校验链补充完整,并计算校验子包括:
使用Sr,0,Sr,1和Sr,2来分别表示行校验链,根据行校验,斜校验和反向斜校验公式得到的斜校验链,反向斜校验链上的校验子公式如下;
本发明提高单写性能的三盘容错解码方法的一优选的实施例中,步骤S42,通过所述校验子得到4-元组包括:
首先,为了清楚描述恢复过程,定义一个X-模型,该X-模型包含4条线段,如图4显示,在X-模型中,4条线段表示依次首尾相连的2条行链、1条斜向链和1条反斜向链,相对应的4个校验子可表示每条校验链上失效元素的异或和,也可用未失效元素的异或和来表示,当磁盘阵列的三列(三个磁盘)失效,每条校验链上包含了三个失效元素,一共12个失效元素,根据X-模型,其中4个失效元素由于出现两次被抵消,剩下的4个失效元素出现一次,且都出现在第f2列上,把剩下的4个失效元素称为4-元组;
用来表示剩下的4个失效元素的异或和,用以下公式计算
上述三种不同的相互独立,分别针对不同磁盘失效情况。
本发明编码方法使用原始数据和校验公式生成三种冗余校验元素,分别为行校验、斜校验和反向斜校验元素,使得编码后的磁盘上存在着四种类型的元素:数据元素,行校验元素,斜校验元素,反向斜校验元素,本发明的解码方法是指当磁盘阵列中出现任意三块磁盘同时失效时,可以通过恢复算法和冗余校验块,将失效磁盘上的数据进行解码恢复,解码方法基于前者的编码结构来实施,本发明能够在保证数据可靠性的基础上,克服现有编码在单写性能上的不足,是一种新型MDS三盘容错编码和解码方法,该编码和解码方法可以恢复存储系统中任意三块失效磁盘上的数据,在保证数据可靠性的同时,显著提升存储系统的单写性能。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

Claims (9)

1.一种提高单写性能的三盘容错编码方法,其特征在于,包括:
根据行校验,斜校验和反向斜校验公式将原始数据填入p-1行p+2列的编码矩阵的数据元素的对应位置中,其中,编码矩阵中的元素包括数据元素,行校验元素,斜校验元素,反向斜校验元素,p为质数;
根据行校验,斜校验和反向斜校验公式,在编码矩阵的第p列和第p+1列分别填入行校验元素和斜校验元素,除去编码矩阵中第0列、第p列和第p+1列,剩下的矩阵是一个p-1行p-1列的方阵,在所述方阵的反斜向部分填入反向斜校验元素;
用于对所述编码方法进行解码的方法,包括:
若磁盘阵列中的失效列分别为f1,f2和f3,f1,f2和f3不是第p列和第p+1列,0≤f1<f2<f3≤p-1,将编码矩阵中所有校验链补充完整,并计算校验子,其中,校验子是特定校验方向上未失效校验元素和其相应数据元素的异或和,其值等于该校验方向上所有失效元素的异或和;
通过所述校验子得到4-元组,其中,n-元组表示一个元组内有n个数据元素,这些数据元素可进行异或操作,n为正整数;
根据如下k须满足的条件,将4-元组简化为2-元组,其中,k表示简化成1个2-元组所需要的4-元组的个数,当<k·h1+h2>p=0时,2-元组元素间距离为d=<k·h1-h2>p,计算相应2-元组异或和的公式为当<k·h1-h2>p=0时,2-元组元素间距离为d=<k·h1+h2>p,计算相应2-元组异或和的公式为当<k·h2+h1>p=0时,2-元组元素间距离为d=<k·h2-h1>p,计算相应2-元组异或和的公式为当<k·h2-h1>p=0时,2-元组元素间距离为d=<k·h2+h1>p,计算相应2-元组异或和的公式为
根据STAR编码中的引理3,通过起始点恢复第f2列;
根据H-Code的恢复算法,恢复第f1和f3列。
2.如权利要求1所述的提高单写性能的三盘容错编码方法,其特征在于,所述行校验公式为其中,Ci,p表示编码矩阵中的第i行第p列的行校验元素,Ci,j表示编码矩阵中的第i行第j列的元素。
3.如权利要求2所述的提高单写性能的三盘容错编码方法,其特征在于,所述斜校验公式为Ci,i+1表示编码矩阵中的第i行第i+1列的斜校验元素,表示编码矩阵中的第<p-2-i+j>p行第j列的元素,<p-2-i+j>p表示以<p-2-i+j>的值对p取模。
4.如权利要求3所述的提高单写性能的三盘容错编码方法,其特征在于,所述反向斜校验公式为Ci,p+1表示编码矩阵中的第i行第p+1列的反向斜校验元素,表示编码矩阵中的第<p+i-j>p行第j列的元素,<p+i-j>p表示以p+i-j的值对p取模。
5.如权利要求1所述的提高单写性能的三盘容错编码方法,其特征在于,将编码矩阵中所有校验链补充完整,并计算校验子包括:
假设编码矩阵的下方有一行虚拟行,添加了虚拟行的编码矩阵是一个p行p列的矩阵,通过公式来计算虚拟行中最后两个校验元素,其中,校验子表示未失效元素的异或和,包括校验元素,等价于同一校验链上所有失效元素的异或和;
用r表示一条校验链的标识,根据一个随机的数据元素Ci,j,使用公式计算其所在校验链上相应的r值,其中,r=i对应行校验链,r=<i+j>p对应斜校验链,r=<i-j>p对应反向斜校验链;
使用Sr,0,Sr,1和Sr,2来分别表示行校验链,根据行校验,斜校验和反向斜校验公式得到的斜校验链,反向斜校验链上的校验子公式如下;
其中0≤r≤p-1,且j≠f1,f2,f3,对应于数据元素C0,0,行、斜、反向斜校验链上的r值分别是0,0,0。
6.如权利要求5所述的提高单写性能的三盘容错编码方法,其特征在于,通过所述校验子得到4-元组包括:
定义一个X-模型,该X-模型包含4条线段,在X-模型中,4条线段表示依次首尾相连的2条行链、1条斜向链和1条反斜向链,相对应的4个校验子表示每条校验链上失效元素的异或和,当磁盘阵列的三列失效,每条校验链上包含了三个失效元素,一共12个失效元素,根据X-模型,其中4个失效元素由于出现两次被抵消,剩下的4个失效元素出现一次,且都出现在第f2列上,把剩下的4个失效元素称为4-元组;
用来表剩下的示4个失效元素的异或和,用以下公式计算
7.一种提高单写性能的三盘容错解码方法,其特征在于,用于对上述权利要求1至6任一项编码方法进行解码,包括:
若磁盘阵列中的失效列分别为f1,f2和f3,0≤f1<f2<f3≤p+1,其中一列是第p+1列,即f3=p+1,0≤f1<f2≤p,使用H-Code的恢复算法来恢复f1和f2两列;
使用斜校验公式恢复f3列。
8.一种提高单写性能的三盘容错解码方法,其特征在于,用于对上述权利要求1至6任一项编码方法进行解码,包括:
若磁盘阵列中的失效列分别为f1,f2和f3,其中一列是行校验列p,另外两列位于前p列中,则假设编码矩阵的下方有一行虚拟行,其中,虚拟行中的第一个元素被设为0,第2个到第p-1个元素被设为和同一列上反向斜校验元素相同的值后,所述同一列上反向斜校验元素被设为0;
恢复f1和f2两列;
使用行校验公式恢复第f3列。
9.如权利要求8所述的提高单写性能的三盘容错解码方法,其特征在于,恢复f1和f2两列包括:
从元素开始重建过程,循环步骤一与步骤二,直至终点为其中,
步骤一为:如果第f1列上的元素被恢复,同一条斜校验链上的随后被恢复;
步骤二为:如果第f2列上的元素被恢复,同一条斜校验链上的随后被恢复。
CN201510298870.6A 2015-05-31 2015-05-31 一种提高单写性能的三盘容错编码和解码方法 Active CN104932836B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510298870.6A CN104932836B (zh) 2015-05-31 2015-05-31 一种提高单写性能的三盘容错编码和解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510298870.6A CN104932836B (zh) 2015-05-31 2015-05-31 一种提高单写性能的三盘容错编码和解码方法

Publications (2)

Publication Number Publication Date
CN104932836A CN104932836A (zh) 2015-09-23
CN104932836B true CN104932836B (zh) 2018-06-26

Family

ID=54120017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510298870.6A Active CN104932836B (zh) 2015-05-31 2015-05-31 一种提高单写性能的三盘容错编码和解码方法

Country Status (1)

Country Link
CN (1) CN104932836B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109086000B (zh) * 2018-06-22 2021-08-03 浙江工业大学 一种raid存储系统中的三容错数据布局方法
CN111679793B (zh) * 2020-06-16 2023-03-14 成都信息工程大学 一种基于star码的单盘故障快速恢复方法
CN114415983B (zh) * 2022-03-30 2022-06-07 苏州浪潮智能科技有限公司 一种raid编解码方法、装置、设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101512492A (zh) * 2005-12-15 2009-08-19 网络装置公司 用于实现从存储阵列中的三重故障中高效恢复的三重奇偶校验技术
CN102521067A (zh) * 2011-12-01 2012-06-27 华中科技大学 优化部分条带写性能的raid-6编码和重构方法
CN103809919A (zh) * 2013-12-16 2014-05-21 华中科技大学 高效容多错的快速恢复编码方法及其验证矩阵生成方法
CN104111880A (zh) * 2013-04-16 2014-10-22 华中科技大学 一种容三盘失效纠删码的单数据盘失效快速重建方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101512492A (zh) * 2005-12-15 2009-08-19 网络装置公司 用于实现从存储阵列中的三重故障中高效恢复的三重奇偶校验技术
CN102521067A (zh) * 2011-12-01 2012-06-27 华中科技大学 优化部分条带写性能的raid-6编码和重构方法
CN104111880A (zh) * 2013-04-16 2014-10-22 华中科技大学 一种容三盘失效纠删码的单数据盘失效快速重建方法
CN103809919A (zh) * 2013-12-16 2014-05-21 华中科技大学 高效容多错的快速恢复编码方法及其验证矩阵生成方法

Also Published As

Publication number Publication date
CN104932836A (zh) 2015-09-23

Similar Documents

Publication Publication Date Title
Jin et al. P-Code: A new RAID-6 code with optimal properties
US9600365B2 (en) Local erasure codes for data storage
US9760439B2 (en) Using parity data for concurrent data authentication, correction, compression, and encryption
US8874995B2 (en) Partial-maximum distance separable (PMDS) erasure correcting codes for storage arrays
Xiang et al. Optimal recovery of single disk failure in RDP code storage systems
US8601339B1 (en) Layered coding techniques for data storage
CN103392172B (zh) 纠正存储阵列中的擦除
US8595606B1 (en) Extended row diagonal parity with optimal decoding procedure
US8522125B1 (en) System and method for efficient horizontal maximum distance separable raid
Zhang et al. Tip-code: A three independent parity code to tolerate triple disk failures with optimal update complextiy
CN103577274A (zh) 管理存储器阵列的方法和装置
CN104115126A (zh) 使用代数码的多阶段ecc编码
CN104111880A (zh) 一种容三盘失效纠删码的单数据盘失效快速重建方法
CN104932836B (zh) 一种提高单写性能的三盘容错编码和解码方法
JPS6349245B2 (zh)
CN105353974A (zh) 一种适用于磁盘阵列及分布式存储系统的二容错编码方法
CN101901115B (zh) 一种磁盘阵列raid6级别的构建方法
CN104658609A (zh) 用于存储器系统的纠错码分布的方法和系统
CN103809919B (zh) 高效容多错的快速恢复编码方法及其验证矩阵生成方法
US7971092B2 (en) Methods and devices for high performance consistency check
CN104866386B (zh) 具有最优更新代价的编码及解码方法
CN103678029A (zh) 一种容多个设备和扇区错的编码的优化方法
CN111585581B (zh) 一种基于二元域运算且支持任意码距的编码方法
Wu et al. An Efficient RAID6 System Based on XOR Accelerator
CN111585582B (zh) 一种基于阵列运算且码距自由确定的编码方法

Legal Events

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