在存在全局热备用磁盘的情况下用于断开的驱动器的优化重建和向回复制的方法

文档序号:6455899阅读:174来源:国知局
专利名称:在存在全局热备用磁盘的情况下用于断开的驱动器的优化重建和向回复制的方法
技术领域
本发明涉及廉价磁盘冗余阵列(RAID)存储系统的领域,更具体地涉及在 RAID系统断开后优化组成驱动器的重建。
背景技术
廉价磁盘冗余阵列(RAID)已经成为在当前计算机系统结构中维护数据的有 效工具。RAID系统使用能够复制或共享各个驱动器中的数据的小的且廉价的硬盘 的阵列。对不同raid级别的具体描述由帕特森(Paterson)等人在1988年6月的 ACM SIGMOD会议上的题为"一种用于廉价磁盘冗余阵列的情形(A Case for Redundant Arrays oflnexpensive Disks (RAID))"的文章中披露。该文章通过引用结 合于此。
存在多个不同级别的RAID实施方式。最简单的阵列,RAID级别1,包括用 于数据存储的一个或多个主磁盘,以及相同数量的用于存储包含在数据磁盘上的 所有信息的拷贝的额外"镜像"磁盘。所有剩下的RAID级别2、 3、 4、 5和6将连 续数据分割成多个段,用于存储在各个磁盘中。
RAID级别2、 3、 4、 5和6系统将数据以块的形式分布在各个磁盘中。块是 由多个连续扇区组成的。扇区是磁盘驱动器的物理区并包括字节的集合。扇区是 磁盘驱动器的数据传输的最小单位。当数据块被写入磁盘时,其被分配磁盘块号 码(DNB)。所有RAID系统磁盘维护相同的DNB系统,使得每个磁盘上的一个 块具有一给定的DBN。具有相同DBN的各个磁盘上的块的集合被统称为分条。
此外,如今许多操作系统通过将大容量存储装置上的空间分成多个巻来管理 该空间的分配。所述术语巻指的是遍布例如RAID系统中的多个磁盘和相关磁盘 驱动器的物理存储空间元件的逻辑分组。与物理看待存储器相比,巻是允许逻辑 看待存储器的部分抽象概念。因而,大多数操作系统对待巻如同它们是独立的磁 盘驱动器。巻由巻管理软件创建并维护。巻组是包含共同驱动器组的不同巻的集
RAID系统的一个主要优点在于其能够从包含在剩余可运行磁盘上的信息来重建故障组成磁盘的数据。在RAID级别3、 4、 5、 6中,通过使用奇偶校验块来 实现冗余。包含在给定分条中的奇偶校验块中的数据是每次对该分条中的数据块 执行写操作时执行的计算的结果。下面的等式通常被用于计算给定奇偶校验块的
下一状态
新奇偶校验块=(旧数据块异或新数据块)异或旧奇偶校验块
在各RAID级别之间,该奇偶校验块的存储位置不同。RAID级别3和4使用专用 于奇偶校验块的存储器的特定磁盘。RAID级别5和6在所有各个磁盘中交插奇偶 校验块。RAID级别6因为其每个分条具有两个奇偶校验块而来区分其本身,这是 两个磁盘同时断开的原因。如果在阵列中的给定磁盘断开,则来自所述剩余磁盘 的用于给定分条的数据块和相关奇偶校验块可被结合来重建所述损失数据。
用于处理RAID系统中的单个磁盘的断开的一种机制是全局热备用磁盘的结 合。全局热备用磁盘是用于代替RAID配置中的断开的主磁盘的磁盘或磁盘组。 该装置被加电或被认为是"热的",但是在系统中并没有实际起作用。当RAID系统 中的一磁盘断开时,所述全局热备用磁盘为所述断开的磁盘而结合,并使用来自 剩余运行磁盘的数据块和奇偶校验块来重建所述损失磁盘的所有巻段。 一旦此数 据被重建,则所述全局热备用磁盘起所述RAID系统的组成磁盘的作用,直到所 述断开的RAID磁盘的重新连接。当所述断开的主磁盘被重新连接时,可能发生 将所述重建的数据从所述全局热备用向回复制到所述重新连接的主磁盘。
通常,当非RAIDO系统中的组成磁盘断开时,所述全局热备用磁盘为所述断 开的磁盘而结合并且重建的来自所述断开的磁盘的所有巻段。这种方法在所述 RAID组成磁盘的断开与其重新连接之间的时间内,不必重建和向回复制属于没被 存取或更改巻(即那些不接收I/0请求的巻)的巻段。
因此,期望提供一种系统和方法,用于在RAID磁盘的断开与重新连接之间
的时间内,只有接收i/o请求部分巻的断开磁盘上的那些巻段重建和向回复制。

发明内容
因此,本发明旨在一种使用全局热备用磁盘优化重建和复制回断开RAID磁 盘的方法和系统。
在本发明的第一方面,披露了一种用于使用全局热备用来重建和复制回故障 RAID磁盘的系统。该系统包括处理单元,需要大容量存储器; 一个或多个磁盘, 配置为RAID系统;相关全局热备用磁盘;以及互连,连接所述处理单元、所述RAID和所述全局热备用磁盘。
在本发明的另一方面,披露了一种用于使用全局热备用来重建和复制回断开 RAID磁盘的方法。该方法包括检测到RAID组成磁盘的断开;将来自所述断开 RAID磁盘的数据重建至一全局热备用磁盘;重新连接所述断开RAID组成磁盘; 及将来自所述全局热备用磁盘的所述重建数据复制回到所述重新连接的RAID组 成磁盘。
应该理解上述的一般描述和下面的具体描述都仅是示例性和解释性的,并不 用于限制所要求保护的本发明。结合于此并构成说明书的一部分的附图示出了本 发明的实施例,并与一般描述一起用来解释本发明的原理。


通过参考附图,本领域的技术人员能够更好地理解本发明的多个优点,附图

图l是n磁盘RAID系统和额外后备全局热备用磁盘的示例性表示。包括所 述n个磁盘的巻组具有m个独立巻,每个巻在该n个磁盘上分成n段。
图2是n磁盘RAID系统和额外后备全局热备用磁盘的示例性表示,其中n 个磁盘中的一个磁盘已经断开。
图3是已经向巻组中的一给定巻发布I/0请求以使所有巻从优化状态转为返 化状态的示例性表示。
图4是利用来自仍连接在RAID中的剩余的n-1个可运行磁盘的巻段的数据 和奇偶校验信息来结合全局热备用磁盘并将来自断开磁盘的退化状态巻的巻段重 建至所述全局热备用磁盘上的示例性表示。
图5是将重建的巻段从全局热备用磁盘复制回故障磁盘的替换磁盘的示例性 表示。
图6是示出了使用全局热备用磁盘重建并复制回RAID系统中的断开磁盘的 方法的流程图。
具体实施方案 下面将具体参考本发明的优选实施例。如果RAID系统的一个组成磁盘意外或为了维护目的而有意断开,则全局热 备用磁盘将为损失的驱动器而结合。为了维持数据的一致性,当处理单元向RAID 中的一个或多个巻发出1/0请求时(即所述巻变成"退化"),所述系统启动包含在 所述断开磁盘上那些巻的段的重建。该重建是通过使用保持在剩余磁盘上的数据 和奇偶校验信息来实现的。在重建任何退化巻之后,对于那些退化的巻,全局热 备用磁盘替换所述断开磁盘作为RAID中的组成驱动器来操作。非退化的巻没有 被重建至所述全局热备用磁盘,其内容没有改变(即,没有发生给那些巻的I/0请 求)。
当原始断开得磁盘被重新插回所述RAID中时,发生数据从所述全局热备用 磁盘的向回复制。那些变成退化并被重建至所述全局热备用磁盘的巻的巻段被向 回复制,代替当前包含在重新连接的磁盘上的先前版本。然而,来自包含在所述 断开磁盘上的任何非退化巻的巻段保持它们断开前的状态不变。
当所述断开磁盘不在时只有那些变成退化的巻重建和向回复制,这总体上縮 短了重建/复制回处理所需的时间量(并因此縮短了整个系统停工时间)。所述非退 化巻的未改变的优化数据保持一致状态,有或无重建和向回复制。这样,非退化 巻的重建和再复制不必延长所述重建/复制回处理。如果在磁盘断开过程中只有十 分之一逻辑巻实际变成退化,则所有巻的重建将导致总的重建/复制回时间比实际 需要维持数据一致性的时间长10倍。
该机制还减少了全局热备用专用于给定巻组的时间量。因为全局热备用一次 只能为一个RAID组成磁盘结合,所以不能处理多个RAID磁盘的同时故障。因此, 期望最小化全局热备用被作为RAID组成磁盘使用的时间量。
根据本发明的系统可以通过结合至需要大容量存储的处理单元的巻管理软件 中作为用于RAID系统的控制器中的固件,或作为与RAID系统接口的备用独立硬 件部件来实现。
本发明的其他细节在附图中示出的示例中提供。
参考图l,示出了包括n磁盘、非RAID0系统110和额外后备全局热备用磁 盘120的大容量系统100的示例性表示。巻组包括m个独立巻130、 140、 150和 160。每个巻130、 140、 150和160由n个独立段构成,每个段对应于n磁盘RAID 系统的n个磁盘之一。能够发送I/O请求的外部装置170的巻管理软件使得该装置 将每个巻作为独立磁盘驱动器来对待。这样,某些巻130、 140、 150或160在n 磁盘110的一个磁盘的断开与其重新连接之间的时间期间内存在可以被存取的可能性。
参考图2,示出了包括具有额外后备全局热备用磁盘220的n磁盘RAID系统 210的大容量系统200的示例性表示,其中n个磁盘之一 230已断开。
参考图3,示出了包括具有额外后备全局热备用磁盘320的n磁盘RAID系统 310的大容量系统300的示例性表示,其中n个磁盘之一 330已断开。由外部装置 360向一个或多个巻350发出I/O请求340。当这发生时,独立巻350从优化状态 转换为退化状态。该转换启动将位于断开磁盘330上的退化状态的巻段重建至全 局热备用磁盘320。
参考图4,示出了包括具有额外后备全局热备用磁盘420的n磁盘RAID系统 410的大容量系统400的示例性表示,其中n个磁盘之一 430已断开。全局热备用 磁盘420已经作为n磁盘RAID系统410的组成磁盘被结合。使用来自包括退化 巻460的剩余者的相应巻段的存在的数据块和奇偶校验块450将位于断开磁盘430 上的退化状态巻460的巻段440重建到全局热备用磁盘420上。断开磁盘430上 的非退化巻470的段480没有被重建至所述全局热备用磁盘。
参考图5,示出了包括具有额外后备全局热备用磁盘520的n磁盘RAID系统 510的大容量系统500的示例性表示,其中先前断开磁盘530已经被重新连接。退 化巻550的重建段540被从全局热备用磁盘520复制回到重新连接的RAID磁盘 530的相应巻段560。在向回复制之后,所述重新连接的RAID磁盘530含有所述 退化巻段560的所述重建的数据以及所述非退化巻段570的原始数据。
参考图6,示出了包括具有额外全局热备用磁盘620的n磁盘RAID系统610 的大容量系统600的示例性表示,其中先前故障磁盘已经被替换磁盘630代替。 先前被重建至全局热备用磁盘620上的退化巻650的巻段640从全局热备用磁盘 620复制回所述替换RAID磁盘630的对应巻段660。
参考图6,具体示出了使用全局热备用磁盘来重建并复制回RAID系统中的断 开磁盘的方法的流程图。 一旦检测到RAID磁盘的断开600,则后备全局热备用驱 动器可以被结合以解决损失的RAID磁盘。如果能够发送I/0请求的外部装置,例 如CPU,向具有位于断开磁盘上的巻段的巻发布I/0请求610,则所述请求到达的 巻转换为退化状态620。这样的转换启动位于断开磁盘630上的退化巻的巻段的重 建。在重建之后,所述系统确定所述断开磁盘是否己被重新连接640。如果在重建 之后所述断开RAID磁盘没有重新连接,则对于所述退化巻,所述全局热备用磁 盘继续代替所述断开磁盘运行。如果另外的巻在所述断开RAID磁盘重新连接以前应当变成退化,则该过程可以重复650。当所述断开RAID磁盘重新连接时,任何退化巻的重建的段被复制回所述重新连接的RAID磁盘660。
通过上面的描述,确信应该理解本发明及其优点。也确信在不背离本发明的范围和精神或不牺牲其所有实质优点的情况下,可以对部件的形式、结构和布置进行各种改变。在此描述的形式仅是其解释性实施例。所附的权利要求旨在包括和包含这些改变。
权利要求
1、一种数据存储系统,所述系统包括一外部装置,其需要大容量存储器;一n磁盘廉价磁盘冗余阵列(RAID);一全局热备用磁盘;以及互连,其连接所述外部装置、所述RAID、以及所述全局热备用磁盘,其中每个所述n磁盘能够被单独断开,其中所述n磁盘RAID的物理存储空间被分成m个逻辑卷,其中,包括有每个所述m个逻辑卷的数据被分段分配在所述n个磁盘上。
2、 根据权利要求1所述的数据存储系统,其中,所述n个磁盘之一被断开。
3、 根据权利要求2所述的数据存储系统,其中,来自所述外部装置的一输入 或输出(I/O)请求存取或更改所述n磁盘RAID的一个或多个逻辑巻。
4、 根据权利要求3所述的数据存储系统,其中,位于所述断开磁盘上的所述 存取或更改的逻辑巻的段被重建至所述全局热备用磁盘。
5、 根据权利要求4所述的数据存储系统,其中,当所述断开磁盘保持断开时, 对于所述重建的逻辑巻段,所述全局热备用磁盘作为所述n磁盘RAID中的一组 成磁盘运行。
6、 根据权利要求4所述的数据存储系统,其中,所述重建逻辑巻段在所述断 开磁盘被重新连接时被复制回所述断开磁盘。
7、 根据权利要求4所述的数据存储系统,其中,通过使用来自所述n磁盘 RAID中剩余的n-l个连接的磁盘的存在的数据块和奇偶校验块,发生所述重建。
8、 一种用于重建在n磁盘廉价磁盘冗余阵列(RAID)中的断开磁盘的内容 的方法,所述方法包括检测到一 n磁盘RAID的n个磁盘中的一个磁盘的断开;接收一个或多个来自一外部装置的输入信号;将一个或多个逻辑巻从一优化状态转换至一退化状态;重建所述断开磁盘的退化状态的巻段;重新连接所述断开磁盘;将所述重建的退化状态巻段复制回所述重新连接的磁盘。
9、 根据权利要求8所述的方法,其中,所述输入信号是一存取或更改位于一 个或多个逻辑巻中的数据的请求。
10、 根据权利要求9所述的方法,其中,当一逻辑巻的内容被存取或更改时, 发生所述逻辑巻从一优化状态至一退化状态的转换。
11、 根据权利要求8所述的方法,其中,所述重建的退化状态巻段的目的地是所述全局热备用。
12、 根据权利要求11所述的方法,其中,当所述断开磁盘保持断开时,对于 所述重建的退化状态逻辑巻段,所述全局热备用磁盘作为所述n磁盘RAID中的 一组成磁盘运行。
13、 根据权利要求ll所述的方法,其中,所述重建的退化状态逻辑巻段被复 制到所述重新连接的磁盘。
14、 根据权利要求8所述的方法,其中,通过使用来自所述n磁盘RAID中 剩余的n-l个连接磁盘的存在的数据块和奇偶校验块,发生所述重建。
15、 一种计算机可读介质,在其上存储有由处理器执行以实现一方法的计算 机可读指令,所述方法包括检测到一 n磁盘RAID的n个磁盘中的一个磁盘的断开; 接收来自 一外部装置的输入信号; 将一个或多个逻辑巻从一优化状态转换为一退化状态; 在全局热备用磁盘上重建所述断开磁盘的退化状态的巻段; 重新连接所述断开磁盘;将重建在所述全局热备用磁盘上的所述巻段复制回所述n磁盘RAID中的所 述重新连接的磁盘。
16、 根据权利要求15所述的计算机可读介质,其中,所述输入信号是一存取 或更改位于一个或多个逻辑巻中的数据的请求。
17、 根据权利要求16所述的计算机可读介质,其中,当一逻辑巻的内容被存 取或更改时,发生所述逻辑巻从一优化状态至一退化状态的转换。
18、 根据权利要求15所述的计算机可读介质,其中,所述重建的退化状态巻 段的目的地是所述全局热备用。
19、 根据权利要求18所述的计算机可读介质,其中,对于所述重建的退化状 态逻辑巻段,当所述断开磁盘保持断开时,所述全局热备用磁盘作为所述n磁盘 RAID中的一组成磁盘运行。
20、 根据权利要求18所述的计算机可读介质,其中,所述重建的退化状态逻 辑巻段从所述全局热备用磁盘被复制到所述重新连接的磁盘。
21、 根据权利要求15所述的计算机可读介质,其中,通过使用来自所述n磁 盘RAID中剩余的n-l个连接磁盘的存在的数据块和奇偶校验块,发生所述重建。
全文摘要
本发明是用于在多磁盘大容量存储系统中优化重建和复制回包含在故障磁盘上的数据的系统。本发明所述的系统可以包括处理单元,需要大容量存储器;一个或多个磁盘,配置为RAID系统;相关全局热备用磁盘;以及互连,连接处理单元、RAID和全局热备用磁盘。在本发明的另一方面,披露了一种用于使用全局热备用来重建和复制回一断开RAID磁盘的方法。该方法包括断开一RAID组成磁盘;将来自所述断开RAID磁盘的数据重建到一全局热备用磁盘上;重新连接所述断开RAID组成磁盘;以及将所述重建的数据从所述全局热备用磁盘复制回所述重新连接的RAID组成磁盘。
文档编号G06F11/00GK101517542SQ200780034034
公开日2009年8月26日 申请日期2007年9月18日 优先权日2006年9月18日
发明者凯文·开德勒, 威廉·A·赫垂克, 萨提西·善伽朴 申请人:Lsi罗吉克
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1