一种n路奇偶校验保护技术实现存储阵列的奇偶校验组中的上至n个存储设备(例如盘)失效的恢复,存储阵列被编码成防范n路盘失效。通过先配置具有m个数据盘的阵列来创建存储阵列,其中m=p-1并且p为质数,并且然后向阵列添加行奇偶校验盘,n-1个对角线奇偶校验盘。每个对角线奇偶校验集合(将对角线)与斜率关联,该斜率定义阵列的在对角线中包括的数据和行奇偶校验块。将奇偶校验组内的具有共同斜率的所有对角线组织为对角线奇偶校验类。对于每个对角线奇偶校验类,提供对角线奇偶校验存储盘用于存储对角线奇偶校验。
【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及存储系统并且更具体地涉及一种用于对奇偶校验数据编码以实现从存储阵列的多个失效存储设备恢复的技术。
技术介绍
存储系统通常包括按照需要可以向其中录入数据并且可以从其获得数据的一个或者多个存储设备。可以根据多种存储架构(包括但不限于网络附着存储环境、存储区域网络和直接附着到客户端或者主机计算机的盘组件)实施存储系统。存储设备通常为盘驱动器,其中术语“盘”通常描述自足式(self-contained)旋转磁介质存储设备。术语“盘”在本上下文中与硬盘驱动器(HDD)或者直接存取存储设备(DASD)同义。存储系统内的盘通常组织为一组或者多组,其中每组作为冗余独立(或者蘑#)盘阵列(RAID)来操作。多数RAID实施通过跨RAID组中给定数量的物理盘的数据条的冗余写入和适当存储关于条式数据的冗余信息来增强数据存储的可靠性/完整性。冗余信息实现在存储设备失效时丢失数据的恢复。在盘阵列的操作中,预期盘可能失效。高性能存储系统的目的是使平均数据丢失时间(MTTDL)尽可能长,优选地比系统的预计使用寿命长得多。当一个或者多个盘失效时可能丢失数据,从而使得不可能从设备恢复数据。避免数据丢失的典型方案包括镜像、备份和奇偶校验保护。镜像在存储资源(诸如盘)的消耗方面为一种昂贵的解决方案。备份未保护从创建备份起修改的数据。奇偶校验方案为常用,因为它们提供数据的冗余编码,这允许单次擦除(一个盘的丢失)而向系统添加仅一个盘驱动器。奇偶校验在计算机系统中用来防范丢失存储设备(诸如盘)上的数据。可以通过跨越保持不同数据的多个相似盘对特定字大小(通常为一位)的数据求和(通常以2为模)并且然后在附加相似盘上存储结果来计算奇偶校验值。也就是说,可以对由每个盘上的对应位置的位组成的I位宽的矢量计算奇偶校验。当对I位宽的矢量计算时,奇偶校验可以是计算的和或者它的补码;这些分别称为偶奇偶校验和奇奇偶校验。对I位矢量的加法和减法均等同于异或(XOR)逻辑运算。然后保护数据以免丢失任何一个盘或者任何一个盘上的数据的任何部分。如果存储奇偶校验的盘丢失,则可以根据数据再生奇偶校验。如果数据盘之一丢失,则可以通过将幸存数据盘的内容相加到一起并且然后从存储的奇偶校验减去结果来再生数据。通常,盘划分成奇偶校验组,每组包括一个或者多个数据盘和奇偶校验盘。奇偶校验集合是包括若干数据块和一个奇偶校验块的集合,其中奇偶校验块为所有数据块的X0R。奇偶校验组是从其选择一个或者多个奇偶校验集合的盘集合。盘空间划分成条而每条包含来自每个盘的一个块。条的块通常在奇偶校验组中的每个盘上的相同位置。在条内,除了一个块之外的所有块是包含数据的块(“数据块”),并且一个块是包含通过所有数据的XOR而计算的奇偶校验的块(“奇偶校验块”)。如果奇偶校验块都存储于一个盘上、由此提供包含所有(并且仅有)奇偶校验信息的单个盘,则提供RAID-4实施。如果奇偶校验块通常以旋转模式被包含于每个条中的不同盘内,则实施为RAID-5。术语“RAID”及其各种实施是公知的并且公开于 D. A. Patterson、G. A. Gibson 和 R. H. Katz 的 1988 年 6 月的 Proceedingsof the International Conference on Management of Data (SIGMOD)的J Case forRedundant Arrays of Inexpensive Disks (RAID)中,通过引用将其内容结合于此。如这里所用,术语“编码”意味着在数据块的预定子集上计算冗余值,而术语“解码”意味着通过使用数据块子集和冗余值来重建数据或者奇偶校验块。如果一个盘在奇偶校验组中失效,则该的内容可以在一个或者多个备用盘上通过将剩余数据块的内容相加并且从奇偶校验块减去结果来解码(重建)。由于对I位字段的二的补码加法和减法均等同于XOR运算,所以这一重建由所有幸存数据和奇偶校验块的XOR构成。类似地,如果奇偶校验盘丢失,则可以用相同方式根据幸存数据重新计算它。奇偶校验方案一般提供保护以防奇偶校验组内的单个盘失效。这些方案也可以防范多个盘失效,只要每个失效出现于不同奇偶校验组内。然而如果两个盘在奇偶校验组内同时失效,则遭受不可恢复的数据损失。两个盘在奇偶校验组内的同时失效是相当普遍的事件,特别是因为盘“磨损”以及由于与盘的操作有关的环境因素。在本上下文中,两个盘在奇偶校验组内同时失效称为“双失效”。通常由于一个盘失效并且在尝试从第一失效恢复之时另一个盘随后失效而出现双失效。恢复或者重建时间依赖于存储系统的活动水平。也就是说,在重建失效盘期间,有可能的是存储系统保持“在线”并且继续服务于访问(即读取和/或写入)数据的请求(来自客户端或者用户)。如果存储系统忙于服务于请求,则用于重建的流逝时间增加。重建过程时间也随着存储系统中的盘大小和数量增加而增加,因为必须读取所有幸存盘以重建丢失的数据。另外,双盘失效率与奇偶校验组中的盘数量的平方成比例。然而具有小奇偶校验组是昂贵的,因为每个奇偶校验组需要专用于冗余数据的整个盘。盘的另一失效模式是介质读取错误,其中不能读取单个盘或者盘的扇区。如果在存储阵列中维持奇偶校验,则可以重建不可读数据。然而如果一个盘已经失效,则在阵列中的另一个盘上的介质读取错误将造成丢失数据。这是第二双失效形式。 在某些存储环境中,普遍利用大量更低质量的盘驱动器(如例如用于在向带或者其他长期归档系统备份数据之前用作短期存储的近线(near storage)存储系统)。然而随着阵列中盘的数量增加,多个失效将出现的概率也增加。更廉价存储设备的更低平均失效时间(MTTF)加重该概率。因此有可能让存储系统经历三重或者更大失效,也就是说,存储阵列中的三个或者更多设备的同时失效。另外,诸如串行附着SCSI (SAS)、光纤信道(FC)等诸多存储协议已经造成用于盘架的越来越复杂的架构,这已经造成这样的架经历的失效数量随之增加并且又造成丢失对连接到失效盘架的每个盘的访问。更一般而言,需要一种高效并且可以用于奇偶校验组中的n路失效(S卩,阵列中多达n个存储设备的失效)的广义擦除代码。针对n路失效的此类附加保护可能是保证服从受管制的产业、长期归档存储、灾难恢复等所需要的
技术实现思路
本专利技术通过提供一种n路奇偶校验保护技术来克服现有技术的缺点,该技术实现存储阵列的奇偶校验组中多达n个存储设备(例如盘)失效的恢复,该奇偶校验组被编码成防范n路盘失效。配置阵列使得在阵列的存储设备失效的情况下可以使用用于求解线性方程组的任何技术(例如使用矩阵数学等)来重建阵列的内容。通过首先用m个数据盘配置阵列来创建存储阵列,其中m=p-l并且p为质数(即仅可由I和其本身除尽的数)。行奇偶校验可以例如以与RAID 4相似的方式存储于专用行奇偶校验盘上或者可以例如以与RAID 5相似的方式在数据盘之中存储和旋转。然后向阵列添加/7-2个对角线奇偶校验盘以提供共计n个奇偶校验位(S卩I个行奇偶校验位和n-1个对角线奇偶校验位)。每个对角线奇偶校验集合(即对角线)与斜率关联,该斜率定义在对角线中包括的阵列的数据和行奇偶校验块。也就是说,整个阵列内的落在相同斜率上的所有数据和行奇本文档来自技高网...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】...
【专利技术属性】
技术研发人员:A格尔,PF科尔贝特,
申请(专利权)人:网络存储技术公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。