用于盘存储介质的纠错.pdf

上传人:a**** 文档编号:972432 上传时间:2018-03-22 格式:PDF 页数:27 大小:1.20MB
返回 下载 相关 举报
摘要
申请专利号:

CN200780034491.X

申请日:

2007.08.09

公开号:

CN101517543A

公开日:

2009.08.26

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效|||公开

IPC分类号:

G06F11/00; H03M13/00

主分类号:

G06F11/00

申请人:

鲍尔法尔有限公司

发明人:

S·帕申科夫; C·卡彭特; A·迈罗施尼切科

地址:

美国加利福尼亚州

优先权:

2006.8.10 US 60/822,024; 2007.8.8 US 11/835,971

专利代理机构:

北京市金杜律师事务所

代理人:

王茂华;李峥宇

PDF下载: PDF下载
内容摘要

本发明的实施方式提供用于改进盘介质上存储的数据的可靠性的方法和系统。将逻辑冗余(101)引入到数据中,并且将一个逻辑存储单元内的数据划分到如下扇区,通过将这些扇区与其他逻辑存储单元的扇区相交替而在空间上将其分离(151)。逻辑冗余和空间分离减少了或者最小化了对存储盘的局部化损坏的影响,比如由刮擦或者指纹造成的损坏。因此,以如下布局在盘上存储数据,该布局提高了尽管存在有碍于正确地读取一个扇区的错误、但是仍然可以恢复数据的可能性。

权利要求书

1.  一种利用逻辑冗余和空间分离在盘存储介质上记录数据以进行错误保护的计算机实施方法,所述方法包括:
将用于存储的数据划分成至少一个逻辑存储单元,各逻辑存储单元包括至少两个扇区;
确定用于各逻辑存储单元的校验和;以及
按照至少十个扇区的间隔,在盘存储介质上记录各所述扇区和用于各逻辑存储单元的所述校验和。

2.
  根据权利要求1所述的方法,其中在所述盘存储介质上的所述记录是UDF兼容的。

3.
  根据权利要求1所述的方法,其中各逻辑存储单元包括至少10个扇区。

4.
  根据权利要求1所述的方法,其中各扇区包括2KB数据。

5.
  根据权利要求1所述的方法,其中所述盘存储介质包括单层盘。

6.
  根据权利要求1所述的方法,其中所述盘存储介质包括双层盘。

7.
  根据权利要求1所述的方法,其中所述逻辑存储单元交替在一起。

8.
  根据权利要求1所述的方法,其中各逻辑存储单元包括多个扇区,所述扇区的数目依赖于所述逻辑存储单元在所述盘存储介质上的径向位置。

9.
  根据权利要求1所述的方法,其中所述扇区和用于各逻辑存储单元的所述校验和按照至少32个扇区的间隔而记录于盘存储介质上。

10.
  一种在盘存储介质上实施数据布局以满足期望的错误率的方法,所述方法包括:
确定标准错误特征;
确定所述盘存储介质的参数,所述参数包括盘容量;
确定期望的错误率;
确定用于错误保护的所述盘存储介质的可接受的容量损失;
基于所述确定的标准错误特征、所述确定的所述盘存储介质的参数、所述确定的期望的错误率和所述确定的所述盘存储介质的可接受的容量损失,计算每逻辑数据存储单元的数据量;以及
根据所述每逻辑存储单元的数据量来实施数据布局。

11.
  根据权利要求10所述的方法,其中所述标准错误特征包括标准错误的尺度和分布。

12.
  根据权利要求11所述的方法,其中所述标准错误包括指纹。

13.
  根据权利要求11所述的方法,其中所述标准错误包括刮擦。

14.
  根据权利要求10所述的方法,其中所述盘存储介质的所述参数包括存储容量。

15.
  根据权利要求10所述的方法,其中所述盘存储介质的所述参数包括所述盘存储介质的物理尺度。

16.
  根据权利要求10所述的方法,其中所述期望的错误率由标准组织规定。

17.
  根据权利要求10所述的方法,其中所述盘存储介质的所述可接受的容量损失约为10%。

18.
  根据权利要求10所述的方法,还包括根据所述实施的数据布局将数据记录到盘上。

19.
  一种用于利用逻辑冗余和空间分离在盘存储介质上记录数据以进行错误保护的计算机程序产品,所述计算机程序产品存储于计算机可读介质上并且适于执行以下操作:
将用于存储的数据划分成至少一个逻辑存储单元,各逻辑存储单元包括至少两个扇区;
确定用于各逻辑存储单元的校验和;以及
按照至少十个扇区的间隔,在盘存储介质上记录各所述扇区和用于各逻辑存储单元的所述校验和。

20.
  一种用于在盘存储介质上实施数据布局以满足期望的错误率的计算机程序产品,所述计算机程序产品存储于计算机可读介质上并且适于执行以下操作:
确定标准错误特征;
确定所述盘存储介质的参数,所述参数包括盘容量;
确定期望的错误率;
确定用于错误保护的所述盘存储介质的可接受的容量损失;
基于所述确定的标准错误特征、所述确定的所述盘存储介质的参数、所述确定的期望的错误率和所述确定的所述盘存储介质的可接受的容量损失,计算每逻辑数据存储单元的数据量;以及
根据所述每逻辑存储单元的数据量来实施数据布局。

说明书

用于盘存储介质的纠错
相关申请的交叉引用
本申请根据35U.S.C.第119(e)条要求以下专利申请的优先权:于2006年8月10提交的美国临时专利申请第60/822,024号、以及于2007年8月8日提交的美国专利申请第11/835,971号,通过引用将其整体结合于此。
技术领域
本发明主要地涉及数据存储,并且具体地涉及用于对光盘或者其他盘存储介质上存储的数据进行纠错的系统和方法。
背景技术
随着数目越来越多的用户使计算机作为他们日常商务和个人活动的一部分,计算机上存储的数据量已经呈指数增加。计算机系统存储海量的音乐和视频库、珍贵的数字照片、有价值的商务联系人、重要的财务数据库和文档以及其他数据的储藏库。常用的存储装置包括光盘或者其他盘存储介质。
遗憾的是,从计算机问世以来,就一直存在丢失计算机可读介质上存储的数据的风险。由于这样的丢失的后果可能是严重的,所以已经开发用于减少不可恢复错误可能性的方法。例如,已经开发冗余独立盘阵列(RAID)技术,以对可能由于盘的故障而出现的数据丢失提供更高级保护(容错)。包括0级至5级RADI的RAID技术使用多个盘以形成一个逻辑存储单元。尽管实施了RAID技术,但是在读取存储介质时仍然存在很高的不可恢复错误率,这在娱乐内容递送以外的背景中特别成问题。
需要一种方法和系统,用于从由于常见错误原因(比如指纹或者刮擦)而已经遭受机械损坏的盘中恢复数据。
发明内容
本发明的实施方式提供用于改进盘介质上存储的数据的可靠性的方法和系统。将逻辑冗余引入到数据中,并且将一个逻辑存储单元内的数据划分到扇区,并通过将这些扇区与其他逻辑存储单元的扇区相交替(interleave)而在空间上将其分离。逻辑冗余和空间分离减少了或者最小化了对存储盘的局部化损坏的影响(比如由指纹或者刮擦造成的损坏)。因此,以如下布局在盘上存储数据,该布局提高了尽管存在有碍于正确地读取一个扇区的错误、但是仍然可以恢复数据的可能性。
在一个实施方式中,提供一种计算每逻辑存储单元的扇区数目以满足特定可靠性能目标的方法。在另一实施方式中,提供一种基于改进可靠性的可接受的盘容量损失来调节存储盘错误率的方法。在又一实施方式中,根据盘介质的区段化布局来实施逻辑和空间分离方案。
在另一实施方式中,由使用在光学媒体库内的一个或者多个盘柜(jukebox)中组织的一个或者多个盘驱动在光盘的汇集上存储数据的持久存储装置实施本发明的方法。可以通过连接附加媒体库来添加附加存储空间或者存储位置。
本发明具有各种实施方式,其中包括作为计算机实施的处理、作为计算机装置和作为在通用或者专用处理器上执行的计算机程序产品。在此发明内容和以下具体实施方式中描述的特征和优点并不全面。鉴于附图、具体实施方式和权利要求书,本领域技术人员将清楚许多附加特征和优点。
附图说明
图1A示出了根据一个实施方式在盘存储介质上所记录数据的逻辑冗余和空间分离。
图1B示出了根据一个实施方式在UDF盘上所记录数据的逻辑冗余和空间分离的例子。
图2示出了在出错概率与盘中受影响的连续扇区的数目之间的关系曲线图。
图3示出了根据一个实施方式在盘上的各种径向带处的每转扇区数目。
图4示出了根据一个实施方式的条内的扇区在盘上的物理分离。
图5示出了根据一个实施方式的一种用于存储数据的系统。
图6是示出了根据一个实施方式的计算每条的扇区数目的方法的流程图。
图7是根据一个实施方式的用于使用数据冗余和空间分离在盘上存储数据的方法的流程图。
附图仅出于说明的目的而描绘本发明的实施方式。本领域技术人员将从以下讨论中容易地认识到:在不脱离这里描述的本发明原理的情况下,可以利用这里说明的结构和方法的可选实施方式。
具体实施方式
图1A示出了根据一个实施方式在盘存储介质上记录的数据的逻辑冗余101和空间分离151。数据布局被设计成减少或者最小化局部损坏的影响。盘存储介质100包括具有受保护数据162的盘区域。受保护数据162可以是一个或多个用户数据163与开销的任何组合或者子部分,所述开销比如这里称为“头部数据”161的在盘的开头处的数据。如本领域普通技术人员将认识到的那样,头部数据161的内容可以依赖于盘存储介质100的类型、格式和组织。在图1A中所示例子中,受保护数据162包括用户数据163和头部数据161。在其他例子中,受保护数据162可以仅包括用户数据,或者可以包括用户数据的一部分(如单个段),或者可以包括用户数据的一部分和开销的一部分或者用户数据和开销的任何其他组合。盘存储介质100也包括开销164、纠错码(ECC)数据120和这里称为“尾部数据”165的处于盘的末尾处的数据。本领域普通技术人员也将认识到:开销164和尾部数据165的内容可以类似地依赖于盘存储介质100的类型、格式和组织。纠错码数据120是利用ECC算法而根据受保护数据162计算的冗余数据。换而言之,如下文将进一步描述的那样,ECC数据是受保护数据162的函数。
图1A示出了可以如何将逻辑冗余101引入到盘存储介质100上的存储数据中的广义例子。将包括用户数据163的受保护数据162划分成这里称为扇区的基本数据块。各扇区大小为S(B),在一个实施方式中大小处于2KB与32KB之间。逻辑存储单元称为条110。一个条110包含大于或者等于一的多个扇区S(1)、S(2)、...S(M)。多个条110可以驻留于受保护数据162内并且可以交替在一起。在一个实施方式中,所有条110包含相同数目的扇区。备选的是,条大小可以随着径向位置而变化。如下文将进一步说明的那样,常见错误的相对大小按照盘存储介质上的径向位置而改变。较大的条大小可以减少为了存储ECC数据而需要的空间,由此增加可用以存储用户数据163的空间并且提高存储介质的效率。
各条110具有ECC数据120中存储的对应冗余数据。ECC数据120是利用ECC算法根据受保护数据162计算的冗余数据。可以使用包括但不限于校验和的在本领域中已知的任何ECC算法。因此,如果ECC数据120或者条110的任何一个或者多个扇区S(1)、S(2)、...、S(M)受到错误影响,则可以使用其他扇区来恢复数据。
图1A还示出了可以如何实施空间分离151的广义例子。如图1A中所示,一个条110的扇区S(1)、S(2)、...、S(M)可以遍布于用户数据163。因此,来自同一条110的扇区不是在彼此紧邻的相邻处出现。来自一个条110的多个扇区的空间分离151之所以有益,是因为它减少了常见错误原因(比如指纹或者刮擦)将有损于一个条110的多个扇区的可能性。一个条110的多个扇区的放置和ECC数据120的放置不限于图1A中所示放置。在其他实施方式中,ECC数据120和条110的扇区在盘上的别处出现,但是一般而言,来自同一条110的多个扇区和对应的ECC数据120在空间上相互分离。
图1B示出了根据本发明一个实施方式在UDF盘180上记录的数据的逻辑冗余101和空间分离151的具体例子。在这一实施方式中,数据的布局是UDF兼容的,并且可以在任何标准系统上被读取。UDF盘180包括由UDF头部181和UDF尾部185所内括的UDF数据分区182。如本领域技术人员将认识到的那样,术语“UDF头部”181和“UDF尾部”185是指UDF盘180的如下段,这些段可以包含用于符合UDF的标准UDF信息和/或其他数据。在图1B中所示例子中,受保护数据182包括UDF头部181和UDF数据分区182中包含用户数据的段。在一种实施中,UDF尾部185没有包括于受保护数据182中,因为它包含UDF头部181中的信息的副本。将受保护数据182划分成条110,并且ECC数据120是利用ECC算法根据受保护数据182计算的冗余数据。在这一例子中,如下文所述使用校验和Csum(S)122。
对于各条110,使用与本领域中已知用于盘RAID子系统的校验和计算相似的Csum(S)=S(1)XOR S(2)...XOR S(M)来计算校验和。将用于各条110的校验和122写入到UDF盘180上的ECC数据120内的扇区。在一个实施方式中,Csum扇区122是与条110中的扇区相同的大小。如果Csum(s)或者条110的任一扇区S(1)、S(2)、...、S(M)受错误影响,则可以使用其他扇区来恢复数据。
在逻辑冗余101的实施中,在数据存储容量与错误率改进之间进行折衷。在一个实施方式中,付出10%的容量代价以获得约106的错误率改进。出于讨论的目的,假设错误率在UDF盘存储介质180的整个记录区域中是统一的。为了计算可靠性的改进,假设一个S(B)大小的块的不可读概率为Ps1。根据由业界规定的DVD不可恢复读取错误率获得的一种估计,Ps1=10-12×N位。对于S(B)=2KB,N位约为2×8×103或者约104。因此,就一个错误而言,Ps1=约10-8。为了使上述错误保护方法失效,必须出现第二错误,该第二错误对出现第一错误的M+1个扇区(条110中的扇区或者关联Csum(S)扇区122)中的一个扇区有影响。假设第一错误和第二错误是独立事件,因此仅第二错误的概率将是Ps2=Ps1×(M+1)。对于M>6,为求简化而假设M+1=10。因此,Ps2为大于Ps1的数量级。错误保护方法失效的总概率于是为Ps1×Ps2=(Ps1)2×10=10-15。可以表明使用同一块大小的带状存储介质的对应值为10-17×104=10-13。因此,使用本发明的实施方式可以获得至少两个数量级的改进。
在上述计算中的最重要假设是对组合的错误概率的估计。假设它是正确的,现在将讨论各种参数的效果。增加M允许减少校验和开销。注意与盘RAID不同,CPU消耗并不同样重要,因为仅在预备光学图像以供烧制时才执行XOR Csum计算。也与RAID不同,缺乏对随着M的增加而增长的对CPU需求的影响的敏感性。无论条110中的扇区数目如何,将仅对受保护数据182的全部内容应用一次XOR函数。然而,条110中的扇区数目越大,则获得的可靠性的改进就越少。因此,为了最大化可靠性的改进,使用S(B)的最小值和M的最小值,这取决于为改进可靠性而牺牲的存储量。例如,如果使用不多于15%的UDF盘存储空间(由于在外边缘的高错误率而损失其中的7%),则约8%可用于ECC数据120,这转换成M=12的条大小。备选的是,如果盘的外边缘用于ECC数据120,则必须针对ECC数据120中与其余受保护数据182相比不同的错误率来调整计算。
如上所述,本发明通过使用逻辑冗余和空间分离以最小化比如由指纹或者刮擦造成的损坏这样的局部化损坏对存储盘的影响,来改进盘介质上存储的数据的可靠性。对照而言,标准DVD错误校正防范表面的制造缺陷。本发明的方法和系统在标准的DVD纠错之外也可以工作,并且防范不同错误源和不同错误模式。两种技术是互补的,并且可以一起用于对存储数据的更大保护。如这里所述,在单个盘上使用逻辑冗余和空间分离技术。然而,如本领域技术人员将理解的那样,如果附加盘或者盘介质可用,则可以将逻辑冗余和空间分离在多个介质之间进行扩展。虽然最优的条长度或者其他因素可以改变以适应于不同错误模式,但是这里公开的系统和方法可以用来以实现在整组盘中的可接受错误率和效率水平为目标。
图2示出了在出错概率与受影响的盘的连续扇区数目之间的关系曲线图。图2示出了在变量之间一般存在逆向关系。虽然存在相对大量错误可以影响少数连续扇区,但是存在相对很少错误可以影响大量连续扇区。基于发明人根据DVD+R DL技术研究的数据,以下两点令人特别关注:在经过十个连续扇区的情况下,概率表现出大的减少;并且在32个扇区以外的情况下,概率没有表现出明显减少。这一关系用来指导一个条的多个扇区的放置,以便减少一个错误将影响一个条的多个扇区的可能性。在一个实施方式中,按照至少10个扇区的间隔放置一个条的多个扇区。在另一实施方式中,按照至少32个扇区的间隔放置一个条的多个扇区。
图3示出了根据一个实施方式在盘340上的各种径向带处的每转扇区数目。如图所示,基于完成盘340的一转的扇区数目将盘340的表面划分成带331、332、333。如图所示,存在三个带331、332、333,各带具有相应的每转扇区数目,但是图3中所示的带仅为例子。每转扇区数目和盘上带的数目依赖于存储介质的表面尺度和扇区的物理长度。随着半径增加,每转扇区数目增加。这一关系也用来指导一个条的多个扇区的放置,以便减少错误影响条的多个扇区的可能性。例如,一种布置是,将扇区放置在与同一条中的先前扇区距离为两转加上三个扇区的位置处,从而扇区沿着两个轴相互偏移。随着每转扇区数目增加,一个条的多个扇区间放置的间隔也增加。
在一个实施方式中,盘340的表面被划分成可以与一个或者多个带对应的区段。例如,三个区段的ECC设计对于三个带331、332、333中的各带可以各包括一个区段,但是在其他实施方式中,区段不必对应于带。区段化的ECC设计利用如下事实:相对于盘表面上的环的周长而言,错误大小(即错误的角范围或者扫程(sweep))按照径向位置的函数而减少。例如,在5.25英寸光盘的存储区的内直径处,指纹覆盖约45度、但是在该盘的外径处,仅覆盖约22度。因此在一种简易实施中,区段中的条长度可以计算成在一转中相配的扇区数目加上ECC数据的一个扇区,其中该转中的扇区充分地间隔开,以避免有损于多个扇区的指纹。在这一实施中,在内径处的区段中的条长度可以计算为360度除以45度加上1即等于9。在外径处的区段中的条长度可以计算为360度除以22度加上1即等于17。在这一例子中,希望错误率在内径和外径处相同,但是在外径处效率更高。这一原理可以适用于在内径处的区段与外径处的区段之间的附加区段。
图4示出了根据一个实施方式的一个条内的多个扇区401-405在盘440上的物理分离。如图所示,该条包括沿着盘440上的可用数据存储空间的螺旋已经向盘440写入的五个扇区401-405。如图4中所示,以螺旋轨道格式写入数据,但是在其他实施方式中,取决于所用盘介质类型,可以按照同心轨道格式写入数据。图4示出了扇区401-405的物理分离概念,但是在其他实施中,在盘440上的数据存储空间螺旋中可以有更多转,并且在条内可以有更多扇区。扇区401-405可以与盘440上的其他数据或者空置空间交替,以便保留扇区401-405的物理空间分离。因此,比如指纹444这样的常见机械性的错误原因不可能影响扇区401-405中的多个扇区。如图4中所示,指纹444已经有损于扇区402、但是并不影响扇区401或者403-405。结果,可以从其他扇区401、403-405恢复向扇区402写入的数据。类似地,类似大小的机械错误在盘440的表面上的其他放置也将类似地影响扇区401-405中的仅一个扇区。
发明人分析的实验数据表明,在一些设计中可以通过排除盘的外部5-7%来实现数据损失概率约有半个数量级那么多的减少。在其他设计中,排除盘的外部5-7%的结果可能不那么明显、但是倘若盘的外缘尤其易受来自标准使用的变形、刮擦等影响则仍然可以是值得的。在盘的外部7%以内,错误率在UDF盘其余的整个记录区域中是近似统一的。
图5示出了根据一个实施方式用于存储数据的系统500。系统500包括经由网络101连接到持久存储装置504的至少一个主储存器102,该持久存储装置504连接到一个或者多个媒体库510。该图没有示出多个常规部件(例如,客户端计算机、防火墙、路由器等)以免使实施方式的相关细节难以理解。
主储存器502可以是任何数据存储设备,比如联网硬盘、软盘、CD-ROM、带驱动或者存储卡。它可以是网络上的客户端计算机内部的储存器或者连接到网络的独立存储设备。如图5中所示,主储存器502例如通过网络连接101来连接到持久存储装置504。网络101可以是任何网络,比如因特网、LAN、MAN、WAN、有线网或者无线网、专用网或者虚拟专用网。
持久存储装置504执行一个或者多个媒体库510的控制和管理,并且允许通过标准网络文件访问协议来访问一个或者多个媒体库510。持久存储装置504包括:接口503、数据高速缓存506和数据迁移单元508。接口503允许通过网络101对来自持久存储装置504的存档文件的访问。在一个实施方式中,使用网络文件系统(NFS)协议来通过网络访问文件。当使用NFS时,持久存储装置504可以实施NFS伺服程序(daemon)。在一种实施中,支持网络文件系统v3和v4。作为备选或者补充,还可以使用共用因特网文件系统(CIFS)或者服务器消息块(SMB)协议通过网络访问文件。在一种实施中,Samba用于支持CIFS协议。作为备选或者补充,如本领域技术人员将认识到的那样,还可以使用其他协议来通过网络访问文件并且可以实现补充接口503。
在一个实施方式中,数据高速缓存506文件系统是XFSTM、即Silicon Graphics公司为UNIX实施而创建的日志文件系统。XFSTM实施数据管理应用程序接口(DMAPI)以支持分级存储管理(HSM)、即一种允许应用在高速存储设备(比如,硬盘驱动到如光盘和带驱动的更低速度设备)之间自动地移动数据的数据存储技术。HSM系统在较慢的设备上存储大量数据,并且在需要时将数据复制到较快的盘驱动。在一个实施方式中,数据高速缓存506支持5级RAID,并且实施这里描述的逻辑冗余和空间分离技术。在其他实施方式中,可以支持其他RAID级别和/或可以在数据高速缓存506内实施数据的其他冗余,以提高向持久存储装置504传送数据的安全性和完整性的可信任度。在一个实施方式中,数据高速缓存506对于最近访问数据的快速访问而言是基于盘的。高速缓存的数据可以按照需要为最近访问数据所取代。
持久存储装置504内的数据迁移单元508用来将数据复制到一个或者多个媒体库510并且从一个或者多个媒体库510读取数据。数据迁移单元508包括分段(staging)区。一旦完全的媒体图像可用,则数据迁移单元508将数据从数据高速缓存506复制到媒体库510。数据迁移单元508使用分段区域509来暂时地存储媒体图像,直至数据迁移单元508已经向媒体库510写入媒体图像。数据迁移单元508也可以从一个或者多个媒体库510读取媒体,并且在经由网络101将其递送至请求客户端递送之前在数据高速缓存506中高速缓存它们。
媒体库510例如可以是在一个或者多个盘柜中组织的光盘和一个或者多个盘驱动的汇集。在另一实施方式中,媒体库510可以包含本领域技术人员已知的任何其他盘存储介质上存储的数据。
可选地,持久存储装置504可以包括图形用户接口(GUI)(未示出)。该GUI允许用户访问持久存储装置504的可选和/或可定制特征,并且可以允许管理员设置持久存储装置504的操作策略。在一个实施方式中,持久存储装置504包括web服务器(比如Apacheweb服务器)的web服务器,与GUI结合的该web服务器允许用户访问持久存储装置504的可选和/或可定制特征。作为GUI的备选或补充,持久存储装置504可以包括命令行接口。
图6是示出了计算用来满足特定性能目标的每条的扇区数目的方法600的流程图。在步骤661中,确定标准错误特征、即标准错误的尺度和分布。例如在一种实施中,可以确定存储介质特别易受到指纹所致错误的影响,因为将手持介质。在这一例子中确定指纹的标准尺度和分布。例如根据一种测量,平均指纹的长度为15mm。在另一例子中,可以确定存储介质由于存储介质的环境条件而特别地易受刮擦影响。因此,在步骤661中确定标准刮擦的尺度和分布。在一些情况下,可以假设错误平均分布。在其他情况下,可以例如朝着盘的外边缘将错误进行分组。标准错误的特征会影响错误率,并且因此影响用来防范错误的每条的扇区数目。
在步骤662中确定盘参数。在一个实施方式中,盘参数由用户输入。在另一实施方式中,用户选择盘类型,并且从存储的数据库中访问与盘类型关联的盘参数。在一种实施中,盘参数包括存储容量的数量以及存储介质的物理尺度和布局。可以确定的其他盘参数包括:盘扇区长度、每英寸的轨道、报告的最小错误长度、盘技术的最小固有ECC错误长度、层数目、总容量、段的大小、作为半径的函数的每转物理扇区和空余区域。
在步骤663中确定所期望的错误率。在一个实施方式中,根据标准组织的要求来输入所期望的错误率。在另一实施方式中,它是用户允许的或者保证方规定的最大错误率。
在步骤664中确定用于改进可靠性的可接受的盘容量损失。在一个实施方式中,仅10%的盘容量可用于ECC数据120。在其他实施中,为改进可靠性而牺牲的盘容量的数量可以大于或者小于10%。如上文已经参照图1B所述,在错误率与存储容量之间进行折衷。一般而言,为了达到更低的错误率,放弃附加存储容量以便为用来在错误情况下恢复数据的冗余数据腾出空间。
在步骤665中,根据标准错误特征、盘参数、所期望的错误率和可接受的盘容量损失来计算每条的扇区数目。如上所述,一个条110中的扇区数目越大,则获得的可靠性的改进就越少。因此,为了最大化可靠性的改进,使用为改进可靠性的可接受的盘容量损失的数量确定的每条的最小扇区值。与5级RAID盘阵列不同,与错误率改进对比的容量代价是可调的。按照需要可以牺牲更高的容量,以求更大的可靠性的改进,或者可以牺牲可靠性以求更高的数据存储容量。
例如,如果确定661标准错误特征为指纹直径15mm,并且确定仅一个指纹可能出现在盘介质上的随机位置,并且确定662盘参数为5.25英寸光盘,并且确定663所期望的错误率为1/1E 15,并且确定664用于改进可靠性的可接受的盘容量损失为15%,则可以根据上述方程方法来计算665每条的扇区数目为8。
图7是根据一个实施方式用于使用数据冗余和空间分离来在盘上存储数据的方法700的流程图。在步骤771中接收用于存储的数据。例如,持久存储装置504通过网络101从主储存器502接收数据。
在步骤772中根据每条的扇区数目将数据划分到条。在一个实施方式中,根据参照图6描述的方法600来计算每条的扇区数目。在另一实施方式中,每条的扇区数目是先前固定的数目,例如15个扇区。
在步骤773中根据每条的扇区数目来创建数据冗余。在一种实施中,使用与现有技术中已知的用于盘RAID子系统的校验和计算相似的Csum(S)=S(1)XOR S(2)...XOR S(M)来计算校验和。将用于各条110的校验和写入到UDF净荷162的校验和数据段164内的扇区120。备选的是,可以使用本领域中已知的任何其他ECC算法来在步骤773中创建数据冗余。
在步骤774中对多个条进行交替以实现将一个条的多个扇区的空间分离。因此,来自同一条110的扇区没有出现在彼此紧邻的相邻处。实际上,一个条的多个扇区是间隔放置的,例如,彼此之间至少间隔10个扇区,而且是来自其他条的其他扇区。来自一个条110的多个扇区的空间分离之所以有益,是因为它减少了影响少数邻近扇区的常见错误原因(比如指纹或者刮擦)将有损于一个条110的多个扇区的可能性。在一种实施中,扇区的长度约为5mm,并且最常见的错误原因是直径约为15mm的指纹。因此在一个实施方式中,通过将一个条中的每个扇区放置在与该条中的先前扇区距离两整转加上三个扇区的位置处,来满足扇区的物理分离,从而指纹将不太可能损坏同一条的两个扇区。
在一个实施方式中,为了提高例如持久存储装置504的数据迁移单元508的访问速度,将同一条的扇区放置于彼此间隔由希望的错误率所要求的最小距离处是有益的。数据迁移单元从一个或者多个媒体库510读取媒体,并且在经由网络101将其递送至请求客户端之前在数据高速缓存506中高速缓存它们。可以从媒体库510中的盘540依次地读取数据以求速度。因此,条的扇区的分组越紧密,则对数据的访问就越快。
在步骤775中,根据确定的交替的条布局向存储盘写入数据。例如,持久存储装置504向媒体库510中的存储盘540写入数据。因此,利用逻辑冗余和空间分离来存储数据,以提高尽管存在有碍于正确地读取一个扇区的错误、但是仍然可以恢复数据的可能性。
包括以上描述以说明实施方式的操作而不是为了限制本发明的范围。根据以上讨论,相关领域的技术人员将清楚,本发明的精神和范围仍然将覆盖许多变化。本领域技术人员也将认识到,可以在其他实施方式中实施本发明。首先,部件特定命名、术语大写、属性、数据结构或者任何其他编程或者结构方面不是必需或者重要的,并且实施本发明或者其特征的机制可以具有不同命名、格式或者协议。另外,可以如描述的那样经由硬件和软件的组合或者完全用硬件单元来实施系统。另外,在这里描述的各种系统部件之间的特定功能划分仅为举例而不是必需的;由单个系统部件执行的功能可以代之以由多个部件执行,并且由多个部件执行的功能可以代之以由单个部件执行。
上文描述的一些部分按照信息操作的方法的符号表示来呈现本发明的特征。这些描述和表示是数据处理领域中的技术人员用来将他们的工作实质最有效地传达给本领域其他技术人员的手段。尽管在功能上或者在逻辑上加以描述,然而,这些操作理解为由计算机程序实施。另外,已经证实在不失一般性的情况下将这些操作布置称为模块或者按照功能名称来指代它们有时是便利的。
除非另有具体指明,与从上文讨论中清楚的那样,应该理解,在说明书中通篇利用诸如“复制”等术语的讨论是指对计算机系统存储器或者寄存器或者其他这样的信息存储、传输或者显示设备内表示为物理(电子)数量的数据进行操纵和变换的计算机系统或者类似电子计算设备的动作和处理。
本发明的某些方面包括这里以方法形式描述的处理步骤和指令。应当注意,本发明的处理步骤和指令可以用软件、固件或者硬件来实施,并且在用软件来实施时可以被下载以驻留于由实时网络操作系统使用的不同平台上,并且从这些不同平台来操作。
本发明也涉及一种用于执行这里的操作的装置。可以出于所需目的而专门构造这一装置,或者它可以包括如下通用计算机,该计算机由计算机可以访问的计算机可读介质上存储的计算机程序选择性激活或者重新配置。这样的计算机程序可以存储于比如是但不限于任一类盘的计算机可读存储介质上,包括软盘、光盘、CD-ROM、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或者光卡、专用集成电路(ASIC)或者适合于存储电子指令并且各自耦合到计算机系统总线的任一类介质。另外,在说明书中提及的计算机可以包括单个处理器或者可以是利用为了增强计算能力而设计的多个处理器的架构。
这里呈现的方法和操作没有与任何特定计算机或者其他装置固有地有关。各种通用系统也可以与根据这里教导的程序一起使用,或者可以证实构造更特殊的装置以执行所需方法步骤是便利的。本领域技术人员将清楚,用于各种这些系统的所需结构以及等效变化。此外,没有参照任何特定编程语言来描述本发明。应该理解,各种编程语言可以用来实施如这里所述本发明的教导,并且为了本发明的实现和最佳实施方式而提供对具体语言的任何引用。
本发明很好地适合于诸多拓扑结构之上的广泛各种计算机网络系统。在这一领域内,大型网络的配置和管理包括通过网络如因特网以通信方式耦合到不同计算机和存储设备的存储设备和计算机。
最后,应当注意在说明书中使用的言语是主要出于可读性和指导性的目的而加以选择,并且不是选择用以叙述或者限制本发明的主题内容。因而,本发明的公开内容旨在于示例说明,而不是限制在所附权利要求书中阐述的本发明范围。

用于盘存储介质的纠错.pdf_第1页
第1页 / 共27页
用于盘存储介质的纠错.pdf_第2页
第2页 / 共27页
用于盘存储介质的纠错.pdf_第3页
第3页 / 共27页
点击查看更多>>
资源描述

《用于盘存储介质的纠错.pdf》由会员分享,可在线阅读,更多相关《用于盘存储介质的纠错.pdf(27页珍藏版)》请在专利查询网上搜索。

本发明的实施方式提供用于改进盘介质上存储的数据的可靠性的方法和系统。将逻辑冗余(101)引入到数据中,并且将一个逻辑存储单元内的数据划分到如下扇区,通过将这些扇区与其他逻辑存储单元的扇区相交替而在空间上将其分离(151)。逻辑冗余和空间分离减少了或者最小化了对存储盘的局部化损坏的影响,比如由刮擦或者指纹造成的损坏。因此,以如下布局在盘上存储数据,该布局提高了尽管存在有碍于正确地读取一个扇区的错误、。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1