CN101154174B - 在raid数据重建和转移中使用文件系统信息的方法及设备 - Google Patents
在raid数据重建和转移中使用文件系统信息的方法及设备 Download PDFInfo
- Publication number
- CN101154174B CN101154174B CN2007101419296A CN200710141929A CN101154174B CN 101154174 B CN101154174 B CN 101154174B CN 2007101419296 A CN2007101419296 A CN 2007101419296A CN 200710141929 A CN200710141929 A CN 200710141929A CN 101154174 B CN101154174 B CN 101154174B
- Authority
- CN
- China
- Prior art keywords
- disk
- raid
- data
- data block
- parity
- 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.)
- Expired - Lifetime
Links
- 238000013508 migration Methods 0.000 title claims abstract description 13
- 230000005012 migration Effects 0.000 title claims abstract description 13
- 238000000034 method Methods 0.000 claims description 45
- 238000013507 mapping Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 11
- 238000013500 data storage Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 description 10
- 238000012546 transfer Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 102100040351 FK506-binding protein 15 Human genes 0.000 description 2
- 101710132915 FK506-binding protein 15 Proteins 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
- G06F11/1662—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/1092—Rebuilding, e.g. when physically replacing a failing disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2082—Data synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
提供一种在RAID数据重建和转移中使用文件系统信息的方法。当磁盘故障(210)时,存储系统只转移包括已分配数据的那些磁盘块,并在可能的情况下把未分配的磁盘块视为逻辑上为零。当没有备用磁盘时,源磁盘块被逻辑上置零并且重新计算与源磁盘块相关联的RAID条带的奇偶性(223)。当存在备用时,备用上的未分配块在迁移时逻辑上或物理上被置零(222)。故障磁盘的写入操作被重定向到其它未故障磁盘,并且该使用中的磁盘块的记录已经从而被“转移”到那些被保存的其它的未故障磁盘。未使用磁盘块被提前主动置零。使用关于已分配磁盘块的信息,并通过拷贝那些包括已分配数据或奇偶性的数据块,以及通过在镜像清除那些不包括任何已分配块的数据块,目标镜像拷贝被创建。
Description
本申请是申请号是03820109.7、申请日是2003年6月24日、发明名称是“在RAID数据重建和转移中使用文件系统信息”的申请的分案申请。
技术领域
本发明涉及在RAID数据重建和转移(migration)中使用文件系统信息。
背景技术
在计算机系统中保存大量存储的一个已知方法被称作RAID(“廉价磁盘冗余阵列”)。RAID存储器包括一个磁盘群,其中至少部分被用来储存数据和至少部分被用来存储与那些数据相关的奇偶信息,其中数据和奇偶性被分配到多个磁盘。如果那个储存数据或奇偶性的磁盘块故障或整个磁盘都出现故障,则允许RAID存储系统(从剩余的存储数据和奇偶信息)重建原始数据。在被称作RAID条带的一组磁盘块中,数据和奇偶性是彼此相关的。
RAID存储器的一个已知问题是,如果驱动器出现故障,则RAID存储系统不再具有相同的冗余度,而如果希望保存相同的冗余度,则必须对其做出调整。即,希望RAID存储系统允许迟些的第二磁盘故障而不造成数据丢失,但是重建RAID条带中两个分离的故障磁盘的数据是不可能的。为了保存相同的冗余度,RAID存储系统具有从故障磁盘重建数据到其上的备用磁盘,或(如果存在足够的可用空间),则从故障磁盘把数据转移到其它磁盘。在后一种情况中,与每个RAID条带相关的奇偶性必须响应于所分配数据的移动而被调整。然而,数据重建和奇偶性重算包括实质性的磁盘驱动器读写操作,并且最小化磁盘访问量和在磁盘和其余的计算机系统之间来回传送的信息量将是有利的。
因此,有利的是提供一个存储系统(其可能是RAID存储系统或另一类型的存储系统),其保存数据的可靠性、允许逻辑上删除故障磁盘、和最小化计算量、执行数据转移或重建的磁盘存取量,或奇偶性调整量。这些和其它优点在本发明实施例中被提供,其中,文件系统保存的信息(包括磁盘块实际上用于记录所存储的数据的相关信息)被用于和移动,以及奇偶性的重算。本发明最小化计算和磁盘存取的优点也可以用于存储系统的一般操作,以及用于把存储卷从源存储系统镜像到目标存储系统。
发明内容
本发明提供一个方法和系统,其保持数据可靠性、允许逻辑删除故障磁盘、和最小化执行数据转移或重建或奇偶性重算所需的计算量和磁盘存取量。在优选实施例中,当执行数据重建和转移,以及奇偶性重算时,存储系统使用实质上只和所分配的磁盘块有关的信息,并忽略未分配的磁盘块,未分配的磁盘块已经被设置为一个预定值,例如零。当磁盘故障时,存储系统只转移故障磁盘上已分配数据的那些磁盘块,而在可能的情况下把未分配的磁盘块视为逻辑上为零。
在本发明的一方面中,文件系统保存的信息识别在故障磁盘上实际被分配的磁盘块。当有备用磁盘或没有备用磁盘时,RAID群中的磁盘都可能出现故障。当磁盘块将从故障磁盘被转移而没有备用磁盘时,那些磁盘块从故障磁盘被转移到RAID群中的其它未故障磁盘,因而减少了RAID群中的磁盘数量。当那些磁盘块被迁移时(即,数据被重建和拷贝到目标磁盘块上),源磁盘块逻辑上被设置为零并且与源磁盘块相关的RAID条带重新计算奇偶性。一旦所有已分配磁盘块都已经从故障磁盘被转移,故障磁盘就可以逻辑上从RAID群中除去。当磁盘块将从故障磁盘被转移到备用磁盘时,那些磁盘块用类似方法被转移,不同在于,当转移的时候,备用磁盘上未分配的存储块逻辑上或物理上被设置成选定值(零)。
在本发明的一方面中,通过重定向写入操作(预定用于故障磁盘上的磁盘块)到其它未故障磁盘,文件系统主动地协助RAID存储系统。文件系统还保持一个记录,即哪些使用中的磁盘块已经被这样“转移”到那些其它的未故障磁盘,因而提供了一个指示符,其指示最初保存在故障磁盘上的存储数据已经完全被转移。当写入磁盘时,文件系统提前主动把未使用磁盘块设置为选定值(零),从而在写入以及迟些写入的时候最小化奇偶性的重算量。在优选实施例中,至少在下列情况中,文件系统把未使用磁盘块设置为零:(1)当新磁盘被添加到RAID群时,(2)当包括未使用磁盘块的RAID条带被写入时。在优选实施例中,文件系统保存“一致性点”,其中已存储的数据被确保首尾一致,并在将一致性点写入磁盘时把未使用磁盘块设置为零。
在本发明的一方面中,RAID存储系统可能使用一种技术(比如RAID级别5),其中,奇偶性存储块可能在不同的磁盘上被找到。当那些磁盘之一故障时,文件系统识别与故障磁盘上奇偶信息相关的RAID条带,并把整组磁盘块从那些条带转移到其它磁盘,以便把那些全部条带的奇偶信息保存在未故障磁盘上。
在本发明的一方面中,存储系统使用已分配磁盘块的相关信息来改进RAID存储系统执行的操作。当写入任何一个RAID条带时,存储系统响应于磁盘块被分配而确定通过减去还是重新计算来计算奇偶性更加有效。
在本发明的一方面中,通过复制(到镜像拷贝)那些包括已分配数据和奇偶性的那些存储块,和通过清楚(在镜像拷贝)那些存储块不包括任何已分配数据或奇偶性的存储块,存储卷的目标镜像拷贝可以使用已分配磁盘块相关文件系统信息而被创建。因此,目标存储卷可以响应于源存储卷而被构造,而不需要任何奇偶性重算。
本发明通常适用于文件系统和存储系统,其中,数据被保存在多个装置上,和其中,那些多个装置上的至少一部分记录信息可以被丢弃(例如不是文件系统的一部分或可以被逐出高速缓存的高速缓存对象)。这些应用没有被具体限制到保存一致性点的文件系统,也没有被具体限制到RAID存储系统,它们也没有局限于与在此公开的专门应用相关的系统。
附图说明
图1示出文件系统和RAID存储系统的框图,包括在RAID数据重建中使用文件系统信息。
图2示出包括在RAID数据重建中使用文件系统信息的方法的处理流程图。
图3示出一个系统框图,该系统不重新计算奇偶性就能够镜像。
图4示出不用重新计算奇偶性的镜象方法的处理流程图。
具体实施方式
在此处的说明书中,本发明的一个优选实施例被描述,包括优选的处理步骤和数据结构。所属领域技术人员在细读此申请之后将会了解,本发明的那些实施例可以使用没有具体描述的多种其它技术来执行,而不用过度的试验或进一步发明,而且这类其它技术将在本发明的范围和精神内。
词汇
下列术语涉及或者是指本发明的方面或其实施例。其中每个术语的一般意义被定为说明性的而绝不是限制性的。
一致性点-通常,这指的是由自相一致的文件系统保存的可识别数据集,因此它可以被保存在磁盘上而不用担心一致性点内的数据引用会导致文件系统误差。词组″一致性点″被定为足够宽以覆盖有其自相一致性的文件系统以及那些原子地自相一致的文件系统,该自相一致性由用于近期改变的一组日志项来保证。
磁盘块-通常,这指的是存储数据的大容量存储系统中可配置的部分。词组“磁盘块”被定为足够宽以覆盖磁盘上量化或未量化的可分配空间。
文件系统-通常,这指的是直接在存储系统上管理磁盘块的任何应用程序,包括保存命名方案和在大容量存储器上保存的文件数据之间的关联的系统。词组“文件系统”被定为足够宽以覆盖文件系统的变形,包括那些直接对磁盘读写的系统和那些允许不同的子系统或操作系统其它部分来读写磁盘的系统。
存储系统-通常是用于储存数据的系统,例如在RAID阵列中排列的一组一个或多个磁盘。存储系统可以被分成一个或多个卷,每个卷起一个存储系统的作用。术语“存储系统”和“卷”或“存储卷”可以被可交换地使用。
磁盘块的迁移-通常,这指的是用于从已被丢失的磁盘块把数据拷贝或重建数据到大容量存储系统不同部分上的任何技术,比如没有故障因而可用的磁盘。
奇偶性重算-通常,这指的是用于在丢失之后响应于已存储的数据重建奇偶信息或其它冗余信息的任何技术,无论是否与其它冗余信息结合。
RAID群-通常,这指的是RAID存储系统内包括的和RAID存储系统用来保存数据冗余性的磁盘组。一部分系统可能包括RAID存储系统,RAID存储系统把它们的磁盘分开成多于一个的RAID群。
RAID存储系统-通常,这指的是用于在大容量存储系统上保存数据的任何技术,数据包括一组冗余信息(比如可能的奇偶信息、汉明码、或类似实际数据拷贝的其它冗余形式),并响应于丢失提供重建数据的可能性。
RAID条带-通常,这指的是磁盘块和冗余信息之间的任何关联,其中,磁盘块和冗余信息是相互依赖的因此至少一部分可以在丢失之后被重建。
重建-通常,这指的是用于在丢失之后响应于冗余信息来重建数据的任何技术,无论是否与其它已存储的数据结合。
零值映射(zeromap)-通常,这指的是具有一组指示磁盘块逻辑上或物理上已经被设置为零的项目的表。
条带映射(stripmap)-通常,这指的是具有一组指示哪些RAID条带已经从故障磁盘被转移的项目的表。
本发明的范围和精神不受限于任何这些定义,不受限于其中提及的具体例子,而是打算包括这些和其它术语具体化的最广泛的概念。
系统元件
图1示出文件系统和RAID存储系统的框图,包括在RAID数据重建中使用文件系统信息。
系统100包括文件系统120、存储系统140和上面两者之间的通信链路160。系统还包括用于运行文件系统120的处理器(未示出)、程序和数据存储器(未示出)。
文件系统120包括一组文件系统信息表121,其指示关于存储系统140中磁盘块(不管其是个别的还是成群的)的信息。文件系统信息表121可以被记录在存储器中,或者可以被记录在存储系统140被选择的部分中,或者其它方式(比如在非易失性存储器或其它辅助存储器装置中),只要即使存储系统140丢失了数据,那些文件系统信息表121仍然是文件系统120可访问的。文件系统信息表121中的特定信息进一步被说明如下。
存储系统140包括一组磁盘141,其中每个包括一组磁盘块142,磁盘块142包括数据(存储在至少一些磁盘块142内),在RAID条带组中排列的磁盘块142包括至少一些冗余信息(存储在至少一些磁盘块142内)。RAID条带143被处理,从而使得在任何个别磁盘141上的任何个别磁盘块142上的信息与在其它磁盘141上的其它磁盘块142上的信息相关。如果任何磁盘块142乃至整个磁盘141丢失,这允许任何个别磁盘块142上的信息被重建或者重新计算。RAID存储系统在大容量存储系统的技术领域中是已知的。
通信链路160连接文件系统120和存储系统140,并包括文件系统120和存储系统140可用来与磁盘块142的信息和系统100操作信息的任何技术。在优选实施例中,通信链路160包括连接到文件系统120和存储系统140的总线。
文件系统信息表121包括块映射(blockmap)表122,块映射表122具有一组块映射项目123,其指示哪个磁盘块142被已分配的文件系统数据所使用。从而,块映射表122为每个磁盘141上的每个磁盘块142指示该磁盘块142是被文件系统120使用(例如由逻辑“1”值指示)还是不由文件系统120使用(例如由逻辑“0”值指示)。说明书中所用的“已分配的文件系统数据”不同于可能由文件系统120保存的任何临时数据结构,临时数据结构可能包括在磁盘上的分量。已分配的文件系统数据也不同于可能由文件系统120保存的文件系统数据的备份拷贝,比如在关于优选“WAFL”文件系统120的公开说明中描述的“瞬态(snapshot)”数据。
文件系统信息表121包括零值映射表124,其具有一组零值映射项目125,它指示哪个磁盘块142已经逻辑上或物理上被置零。
文件系统信息表121包括条带映射表126,其具有一组条带映射项目127,它指示哪个RAID条带143已经从故障磁盘被转移。在本发明的一方面中,其中,当那些RAID条带143包括故障磁盘上的奇偶信息时,RAID条带143被转移,每个条带映射项目127指出来自整个RAID条带143的磁盘块142是否已经被转移(因为奇偶信息本身不被迁移)。
已分配数据的迁移
如果磁盘块142中的数据被丢失(例如磁盘块142被损坏),或磁盘141上的所有数据都丢失(例如磁盘故障),存储系统140能够重建丢失数据。然而,对于任何丢失数据并在块映射表122中被指示没有任何已分配数据的磁盘块142来说,不必为该磁盘块142重建数据。从而,对于个别的磁盘块142,如果丢失但没有使用,则存储系统140无须重建任何数据。对于整个磁盘141,如果丢失,则存储系统140只须重建当时正在被使用的磁盘块142的数据。
如果没有备用磁盘,则文件系统120指示存储系统140重建已分配磁盘块142的数据(即被块映射表122指示为已分配的磁盘块142),并把重建数据拷贝到存储系统140中相同RAID群中的其它未故障磁盘141上的磁盘块142上。在替换实施例中,被重建的数据可以被拷贝到存储系统140中不同RAID群中的其它未故障磁盘上。故障磁盘141的磁盘块142然后不再被写入,因此文件系统120将它们视为可用VBN(虚拟块号)空间中的“洞”。例如,如果故障磁盘是磁盘#1、#2、#3、#4和#5(奇偶性)中的磁盘#3,则磁盘#1、#2、#3、#4的VBN将仍然有效,而磁盘#3的VBN则无效。当所有来自故障磁盘141的数据都已经被除去时,故障磁盘141逻辑上或物理上从RAID群被除去,从而把RAID群中的磁盘141的数量减少了1。
所属领域技术人员将在细读本申请之后认识到,使用块映射表122来减少数据重建量允许存储系统140最小化工作量,同时又保存了相同的故障容许程度。所属领域技术人员在细读本申请之后也将认识到,本技术可以不用过度试验或新发明而被应用到已经容许多个故障的RAID系统和类似RAID的系统,比如科贝特(Corbett)或“偶奇的(EVENODD)”那些系统。更一般地说,所属领域技术人员在细读本申请之后也将认识到,本技术可以不用过度试验或新发明而被应用到没有其中必须放置数据或元数据的空间的所有存储系统。
当故障磁盘141上的磁盘块142的数据被迁移时,存储系统140逻辑上清除了(置零)该磁盘块142的数据。文件系统120设置对应RAID条带143的零值映射项目125。存储系统140重新计算对应RAID条带143的奇偶性,并把重新计算的奇偶性写入对应RAID条带143中的奇偶性磁盘141。
如果存在备用磁盘,则文件系统120用同样的方法指示存储系统140转移来自已分配磁盘块142的数据。对于未分配的磁盘块142,存储系统140写入另一未故障磁盘141上的对应磁盘块142,而不尝试重建来自于未分配的磁盘块142的数据。相反地,存储系统140物理上清除(置零)作为未分配磁盘块142转移目标的磁盘块142。在优选实施例中,文件系统120指示存储系统140使用SCSI“写入相同的(write same)”命令来指导具有作为转移目标的磁盘块142的磁盘141;这节省了磁盘141的活动和文件系统120与存储系统140之间的带宽。
条带映射表126包括每个RAID条带143的一个条带映射项目127,为RAID条带143指示RAID条带143中的磁盘块142(来自故障磁盘141)是否已经被转移到另一未故障磁盘141。当它的对应条带映射项目127指示特定磁盘块142已经从故障磁盘141转移到另一未故障磁盘141时,存储系统140能够在未来的奇偶性重算期间考虑除去特殊的磁盘块142。更确切地说,在写入特定条带时,存储系统140通过假定指示的所有磁盘块142一律为零来重新计算奇偶性。当条带映射表126指出所有来自故障磁盘141的磁盘块142已经被转移到其它未故障磁盘141时,文件系统120和存储系统140可以逻辑上全面删除故障磁盘141。
访问请求的重定向
文件系统120用重定向请求中帮助存储系统140访问故障磁盘141上的磁盘块142。在优选实施例中,文件系统120包括写入时拷贝(copy-on-write)技术,其中,所有对磁盘块142的写入操作(在任何磁盘141上,不包括刚才的故障磁盘141)都通过从作为写操作目标的磁盘块142拷贝数据、修改该拷贝和把到目标磁盘块142的指针调整为指向新修改过的拷贝。在优选实施例中,当产生存储卷的一致性点时,这些修改被集合到一起;然而,对于这类集合没有特殊的要求。
如果磁盘141故障或磁盘块142被损坏,则文件系统120标记它的文件系统信息表(包括具有脏块项目的脏块表)以指示每个被丢失的磁盘块142被标记为脏。第一结果是任何对脏磁盘块142的写入尝试将导致写入时拷贝操作将被执行。第二结果是文件系统120将不迟于下一个一致性点,作为向磁盘写入一致性点的一部分而产生磁盘块142的拷贝。
因为用户对丢失磁盘块142的请求被重定向,并且因为文件系统120将不迟于下一个一致性点产生磁盘块142拷贝,所以存储系统140可以等候来自于文件系统120的指令而不需要通过积极地重建丢失的磁盘块142来响应。
磁盘块的提前主动置零
在某些情况下,文件系统120提前主动指示存储系统140把整个磁盘块142置零,从而允许容易地重算(或不重算)与包含磁盘块142的条带相关的奇偶信息。在优选实施例中,文件系统120指示存储系统140使用SCSI“写入相同的”命令,如上所述。
文件系统120在至少下列情况中把整个磁盘块设置为零:
·当新的磁盘141被添加到RAID群中时,每个RAID条带143从而被加宽了一个磁盘块142,并且每个这类条带的奇偶性从而响应于新的磁盘块142中的数据。文件系统提前主动指示存储系统140把新的磁盘141中的所有磁盘块142设置为零,而不是重新计算任何奇偶信息,从而使奇偶信息保持不变。
奇偶性优选地作为RAID条带143中磁盘块142的所有数据的模2和来计算,模2和也被称作异或运算(“XOR”)。因此,插入全是零的新磁盘块142没有改变RAID条带143中的奇偶性。
·当包括未分配的磁盘块142(即,没有被文件系统120标记为“使用中”的磁盘块142)的RAID条带被写入时,文件系统120提前主动指示存储系统140把那些磁盘块中的数据设置为零。根据实现,这允许文件系统120或存储系统140,或者系统100的诸如fly-by XOR(快速XOR)子系统之类的其它组件重新计算那些条带的奇偶信息,而不用读取未使用的磁盘块142。无须读取未使用磁盘块142减少了存储系统140执行的读取操作量,并减少了文件系统120和存储系统140之间所用的通信带宽量。
·当文件系统120准备向磁盘写入一致性点时,它通常写入磁盘141上的相对大量的磁盘块142。文件系统120尝试把那些磁盘块142集合到整个RAID条带143中,因此写入操作可以尽可能地有效,并且因此奇偶性计算可以被最小化(被看作已分配数据的每个磁盘块142的开销操作)。当写入RAID条带143时,文件系统120指示存储系统140清除RAID条带中不是一致性点一部分的那些磁盘块142(并且因此将被文件系统120标记为未分配的)。这允许奇偶性计算无须读取那些磁盘块142就开始进行。
奇偶性的有效计算
在本发明的一方面中,RAID存储系统执行的操作响应于目标RAID条带143中磁盘块142的零值映射表125。响应于那些零值映射表125,文件系统120可以对目标RAID条带143中的非零磁盘块的数量进行计数;这允许文件系统120或存储系统140在写入任何个别RAID条带143时确定,通过减法来计算奇偶性或通过重算来计算奇偶性是否更有效。
存储系统140可以通过减法来计算奇偶性,即当向磁盘141写入磁盘块142时,存储系统140可以从相关联的奇偶性(用于那些RAID条带143)减去磁盘块142中的旧数据并把将写入磁盘块142的新数据加到相关联的奇偶性上。该减法和加法都是逐位模二进行。通过减法来计算奇偶性在RAID存储系统的技术领域中是已知的。可替换地,存储系统140可以通过加上(模二)那些RAID条带143的所有磁盘块142来重新计算奇偶信息。
当向磁盘141写入一组磁盘块142时,文件系统120确定通过减法计算奇偶性是否将需要更少的磁盘操作,或从整个RAID条带143重新计算奇偶性是否将需要更少的磁盘操作。文件系统120可以从零值映射表124来确定这个;它可以确定RAID条带中是否有足够磁盘块是零,并且可以因此彻底地省去奇偶信息的计算。则RAID系统也可以简单地把条带143中的未分配块置零,如果它们没有被预先置零(由零值映射表指示)。这对于非WAFL文件系统来说是特别有用的,其中,更可能在条带中存在未分配块。
奇偶性丢失时的转移
在RAID级别4系统中,奇偶性被保存在存储系统140中的单个磁盘141上;即,所有的RAID条带都在相同的磁盘141上具有它们的奇偶性,其可能因此被称为“奇偶性磁盘”。在RAID级别5系统中,奇偶性分布在存储系统140中的多个磁盘141上;即,每个RAID条带可能在不同的磁盘141上具有其奇偶性,因此没有单个的“奇偶性磁盘”。
如果RAID级别5系统中的一个磁盘141故障,则那些将故障磁盘141用于其奇偶性的RAID条带不再具有奇偶性块,并且如果它们剩下的磁盘块142中的一个或多个丢失数据,则因此受到丢失信息的影响。文件系统120将那些RAID条带的磁盘块142标记为“脏”,因此下次一致性点被写入磁盘时,那些磁盘块142被写入具有有效奇偶性块的RAID条带143中的相同或其它磁盘上的不同单元。结果,RAID条带143中奇偶性丢失的磁盘块142被写入具有可用奇偶性块的其它RAID条带143中的磁盘块142(不一定都写入相同的RAID条带143)。
操作方法
图2示出包括在RAID数据重建中使用文件系统信息的方法的处理流程图。
方法200由系统100执行。尽管方法200被连续地描述,然而方法200的流程点和步骤可以用流水线或其它方法由串联或并联分离元件来执行,不管异步或同步。除非其中明确地指示,否则没有方法200必须以与说明书列出的流程点或步骤相同的顺序来执行的特定要求。
已分配数据的转移
在流程点210,系统100已经检测到故障磁盘141。
在步骤211,文件系统120标记条带映射表126以指示没有来自任何RAID条带143的磁盘块142已经从故障磁盘141被迁移。文件系统120还标记脏块表以指示故障磁盘141上的所有磁盘块142都将被当做脏块。在方法200中,第一RAID条带143指的是故障磁盘141上的RAID条带。第二RAID条带143指的是备用或其它未故障磁盘上的RAID条带。
在步骤212,文件系统120接收访问故障磁盘141上的磁盘块142之一的用户请求。因为用户请求只适用于包括文件数据或者元数据的已分配数据,所以方法200在流程点220开始从磁盘块142重建数据。
在流程点220,方法200准备从故障磁盘141上的磁盘块142重建数据。
在步骤221,存储系统140确定是否存在备用磁盘141。如果有,则方法200进行到步骤222。否则,方法200进行到步骤223。
在步骤222(存在备用磁盘141),存储系统140把与磁盘块142相关的第一RAID条带143转移到备用磁盘141,并且方法200进行到流程点230。为了执行这个步骤,存储系统140执行下列的子步骤:
·在子步骤222a,存储系统140从磁盘块142重建数据。存储系统140从第一RAID条带143使用另一个磁盘块142和奇偶性块。然而,存储系统140可以忽略第一RAID条带中的那些磁盘块142,对于该第一RAID条带,相关联的零值映射项目125指示磁盘块142一律地是零。
·在子步骤222b,存储系统140从RAID条带143把数据拷贝到备用磁盘141上的第二目标RAID条带143。然而,存储系统140不拷贝未分配的那些磁盘块142,而是使用它们相关联的块映射项目123来拷贝哪一个。通过使用SCSI“写入相同的”命令,存储系统140提前主动清除第二目标RAID条带143中的那些未分配的块映射项目123的磁盘块142。存储系统140响应于它对那些磁盘块142的抢先的清除来重新计算奇偶性。
·在子步骤222c,文件系统120标记对应的条带映射项目127以指示第一RAID条带143被完全转移到备用磁盘141。
在步骤223(没有备用磁盘141),存储系统140把磁盘块142中的数据从故障磁盘141转移到另一个未故障磁盘141,并且方法200进行到流程点230。为了执行这个步骤,存储系统140执行下列的子步骤:
·在子步骤223a,存储系统140从磁盘块142重建数据。存储系统140使用来自其它磁盘块142和第一RAID条带143的数据和奇偶性块。然而,存储系统140可以忽略第一RAID条带143中的那些磁盘块142,对于该第一RAID条带143,相关联的零值映射项目125指示磁盘块142一律地是零。
·在子步骤223b,存储系统140把数据拷贝到新分配的磁盘块142中。存储系统140重新计算原始第一RAID条带143的奇偶性,假定故障磁盘块142现在逻辑上是零。
·在子步骤223c,文件系统120标记与磁盘块142相关的第一RAID条带143的对应条带映射项目127,从而指示来自磁盘块142的数据被转移到未故障磁盘141。文件系统120标记故障磁盘块142的对应零值映射项目125以指示磁盘块142现在逻辑上是零。
在流程点230,故障磁盘块142或整个第一RAID条带143的转移已经完成。系统100重复转移直到所有已分配的磁盘块142都已经从故障141被转移到备用磁盘141或其它未故障磁盘141。
无须重新计算奇偶性的镜像
图3示出一个系统框图,该系统不重新计算奇偶性就能够映射。
如上所述,当重新建立(或最初建立)储存卷的镜像拷贝(“卷”有时在此可用作“系统”的同义词)时,通过当包括那些未分配块的条带被写入时保证目标存储卷上的未分配块被设置为零,目标存储卷(也称作镜像存储卷)可以使用来自源存储卷的计算出的奇偶性。
无须再计算奇偶性就能够镜像的系统300包括含有源存储系统305的源系统301、类似于参考图1描述的系统100和存储系统140,并且目标(或镜像)系统310包括目标存储系统320,也类似于参考图1描述的系统100和存储系统140。源存储系统305包括一组含有磁盘块331的源RAID条带330;目标存储系统320类似地包括一组含有磁盘块341的目标RAID条带。目标RAID条带340类似于源RAID条带330,优选地,在逻辑上和源RAID条带330一致。
源系统301和目标系统310使用通信链路350连接。在优选实施例中,通信链路350包括光纤信道或SAN(存储区网络)。在其它实施例中,通信链路350可以包括LAN(局域网)、WAN(广域网)、或其组合,例如互联网连接。所属领域技术人员将认识到,通信链路350可能包括用于把数据从源系统301发送到目标系统310的任何技术,并且决不局限于在此描述的具体实施例。
源RAID条带330包括一组已分配存储块334、至少一个未分配块332和一组奇偶性块333。
当重新建立(或最初建立)源存储系统305和目标存储系统320之间的镜像关系时,源系统301从源RAID条带330选择一组已分配块334以发送到目标系统310。在优选实施例中,这些已分配块334在源系统301从文件系统信息被导出,并且只包括那些由源系统301处的文件系统指示为已分配的磁盘块。
源系统301把已选择的已分配块334连同与RAID条带330相关的奇偶性块333一起发送到目标系统310。此外,源系统301置零任何没有被预置零的未分配块332。目标系统310从这些已分配块334接收数据并将它们存储在其目标RAID条带340中的已分配块344的对应单元内。类似地,目标系统310接收相关联奇偶性块333并把它们存储在其目标RAID条带340中的奇偶性块343的对应单元内。
因为目标系统310具有逻辑上和源RAID条带330一致的目标RAID条带340,所以目标系统310可以确定它自己所有的未分配块342在源存储系统305是未分配的。目标存储系统320因此可以使用SCSI“写入相同的”命令把所有那些未分配块342设置为零。
结果,在磁盘块被发送、接收和存储之后,目标存储系统320和源存储系统305基本一致;从而,源存储系统305和目标存储系统320之间的镜像关系被重新建立。
镜像方法
图4示出无须重新计算奇偶性的镜象方法的处理流程图。
方法400由源系统301和目标(镜像)系统来执行。源系统包括源存储系统305和类似于文件系统120的源文件系统(未示出)。目标系统类似于目标系统310。与方法200相似,尽管方法400被连续地描述,然而方法400的流程点和步骤可以采用流水线或其它方法由串联或并联的分离元件来执行,不管异步或同步。同样类似于方法200,除非其中明确指示,否则方法400没有必须用与说明书列出流程点或步骤相同的顺序来执行的特定要求。
在流程点410,源系统301和目标系统准备重新建立镜像关系。在优选实施例中,源系统301和目标系统已经通信以便各自达到镜像关系即将被重新建立的状态。此外,在优选实施例中,源系统301和目标系统已经确定将从源系统301被发送到目标系统的磁盘块的最小集以实现镜像的重新建立。一个用于确定磁盘块最小集的方法在WO 02/29572A(网络仪器公司)中被进一步描述,名称为“Recovery of File System Data in FileServers Mirrored File System Volumes”,于2002年4月11日公布。
在步骤411,源系统301选择将被发送到目标系统的一组信息。如上所述,只有已分配的磁盘块需要被发送。在这个步骤,被选择发送的信息包括(a)条带信息和(b)奇偶信息。条带信息描述被发送的磁盘块在RAID条带中怎样组织。奇偶信息包括为那些RAID条带计算的奇偶性。对于有关被定义RAID条带中哪个块是未分配块的信息而言,源系统301明确地发送那些信息,或者目标系统响应于条带信息和它接收的那些磁盘块的标识来确定该信息。
在步骤412,源系统301发送(和目标系统接收)已分配的磁盘块、在步骤411中描述的条带信息,和在步骤411中描述的奇偶信息。在这个步骤,源系统301也可以把RAID条带中没有预置零的未分配块置零。
在步骤413,目标系统把数据从已分配的磁盘块写入它们在指定磁盘驱动器及其存储卷的指定RAID条带上的指定位置。
在步骤414,目标系统把来自奇偶信息的数据写入其存储卷的指定RAID条带。
在步骤415,目标系统把零值写入其存储卷的指定RAID条带中的未分配块。在优选实施例中,目标系统使用SCSI“写入相同的”命令来把相同数据字节的拷贝(即,零)写入每个未分配块的每个单元;如上所述,这比向实际的磁盘块写零要快一些,并且占用的文件系统和存储卷之间的通信带宽较少。
因为在源系统301的未分配块逻辑上或物理上为零,所以当未分配块被假定为零时源系统301发送到目标系统的奇偶信息是正确的。因此,目标系统可以安全地把未分配块实际上设置为零,同时使用相同的奇偶信息而无须再计算奇偶性。
在流程点420,目标系统是源系统301的物理和逻辑拷贝。源系统301和目标系统之间的任何文档记载操作被完成,并且它们之间的镜像关系被重新建立。
方法400可以在重新建立或最初建立源存储卷和目标存储卷之间的镜像关系的任何时候被执行,只要在源存储卷和目标存储卷都使用了等效RAID条带。
本发明的通用性
本发明通常适用于这样的文件系统和存储系统,其中,数据被保存在多个装置上,并且那些多个装置上记录的至少一些信息可以被丢弃(例如不是文件系统的一部分或可以被逐出高速缓存的高速缓存对象)。这些应用没有被具体限制到保存一致性点的文件系统,也没有被具体限制到RAID存储系统,它们也不一定与在此公开的具体应用相关。
在细读本申请之后,所属领域技术人员将会清楚,本发明在其大多数一般形式中的其它和进一步的应用。无须过度试验或进一步发明,本发明可以用于这类其它和进一步的应用。尽管优选实施例在此被公开,然而许多保持在本发明概念、范围和精神之内的许多变化是可能的;所属领域技术人员在细读本申请之后将很清楚这些变化。
·本发明适用于其中数据和元数据没有在大容量存储器上被分配固定单元的任何存储系统。这可以包括文件服务器、数据库或网络高速缓存、或另一类型的存储装置。尽管在优选实施例中,本发明主要是用于使用RAID存储系统的文件服务器,然而此外也没有特定要求来限制本发明的适用性。
·本发明适用于其中数据可以从冗余信息被重建的任何系统;这可以包括任何类型的存储系统,乃至使用至少一些冗余信息的通信系统。尽管在优选实施例中,本发明主要是用于使用多个磁盘驱动器和奇偶性的存储系统,然而此外也没有特定要求来限制本发明的适用性。
·虽然术语“磁盘块”已经遍及本公开内容被使用,然而本发明同样适用于大容量存储系统中的其它类型的数据块,比如用于磁带、光驱动器的数据块等等。
所属领域技术人员在细读本申请之后将认识到,这些替换实施例是说明性并且绝不是限制性的。
Claims (10)
1.一种在RAID数据重建和转移中使用文件系统信息的方法,包括:
识别第一群数据块,所述的第一群数据块包括能够保存与所述第一群数据块相关联的奇偶信息的块;
确定所述奇偶信息是否可访问;
如果所述确定操作指示所述奇偶信息不可访问,将与具有不可访问奇偶性信息相关联的所述第一群数据块的可访问数据块发送到与一个或多个第二群数据块相关联的一组数据块,每个所述第二群数据块都具有能够保存奇偶信息的可访问数据块。
2.权利要求1的在RAID数据重建和转移中使用文件系统信息的方法,其中,发送可访问数据块的所述步骤包括把数据条带从具有对应奇偶性的磁盘发送到相同或其它磁盘上的其它条带。
3.权利要求1的在RAID数据重建和转移中使用文件系统信息的方法,其中,所述第一群数据块包括RAID条带。
4.权利要求1的在RAID数据重建和转移中使用文件系统信息的方法,其中,所述确定操作包括确定包括能够保存所述奇偶信息的所述块的磁盘是否存在故障。
5.权利要求1的在RAID数据重建和转移中使用文件系统信息的方法,其中,所述确定操作包括确定能够保存所述奇偶信息的所述块是否存在故障。
6.权利要求1的在RAID数据重建和转移中使用文件系统信息的方法,其中,所述发送可访问数据块操作响应于在文件系统产生包括来自所述第一群数据块的所述可访问数据块的一致性点的时间发送所述可访问数据块的指示。
7.一种耦合到在RAID条带中存储数据块的RAID磁盘群的设备,该设备包括:
数据存储设备和能够访问该数据存储设备的处理器;
其中,该处理器在数据存储设备上保存关于数据块的信息,该信息包括:
零值映射表,零值映射表包括描述哪些数据块已经被置零的一组项目,所述处理器将被从所述RAID磁盘群中的故障盘迁移到所述RAID磁盘群中的非故障盘的RAID条带上的每个数据块逻辑上置零,所述处理器还使用所述零值映射表来确定为所述RAID条带计算奇偶性所需的最小数目的盘操作;
块映射表,包括描述哪些数据块由已分配的文件系统数据所使用的一组项目,所述处理器使用所述块映射表来确定哪些数据块从所述故障盘迁移到所述非故障盘;和
条带映射表,包括对应于所述故障盘上的一个或多个RAID条带的一组条带映射项目,所述处理器使得所述条带映射项目指示已经被迁移至所述未故障盘的所述RAID条带中的数据块。
8.权利要求7的耦合到在RAID条带中存储数据块的RAID磁盘群的设备,其中,所述条带映射表中的所述一组条带映射项目中的每个条带映射项目都包括一组与所述RAID条带中的所述数据块的迁移有关的信息。
9.权利要求8的耦合到在RAID条带中存储数据块的RAID磁盘群的设备,其中,与所述RAID条带中的所述数据块的所述迁移相关的信息的组包括所述RAID条带中的所述数据块迁移的目标位置。
10.权利要求7的耦合到在RAID条带中存储数据块的RAID磁盘群的设备,其中,所述RAID条带的零值映射表中的项目数量和所述RAID条带中的非零数据块数量之间的相对差确定所述RAID条带的所述奇偶性是通过减去所述RAID条带中的所有数据块还是加上所述RAID条带中的所有数据块来计算。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/179465 | 2002-06-24 | ||
US10/179,465 | 2002-06-24 | ||
US10/179,465 US7024586B2 (en) | 2002-06-24 | 2002-06-24 | Using file system information in raid data reconstruction and migration |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB038201097A Division CN100378672C (zh) | 2002-06-24 | 2003-06-24 | 在raid数据重建和转移中使用文件系统信息 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101154174A CN101154174A (zh) | 2008-04-02 |
CN101154174B true CN101154174B (zh) | 2010-10-06 |
Family
ID=29734905
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB038201097A Expired - Lifetime CN100378672C (zh) | 2002-06-24 | 2003-06-24 | 在raid数据重建和转移中使用文件系统信息 |
CN2007101419296A Expired - Lifetime CN101154174B (zh) | 2002-06-24 | 2003-06-24 | 在raid数据重建和转移中使用文件系统信息的方法及设备 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB038201097A Expired - Lifetime CN100378672C (zh) | 2002-06-24 | 2003-06-24 | 在raid数据重建和转移中使用文件系统信息 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7024586B2 (zh) |
EP (1) | EP1535154A4 (zh) |
JP (2) | JP2005531071A (zh) |
CN (2) | CN100378672C (zh) |
AU (1) | AU2003278864A1 (zh) |
IL (2) | IL165831A0 (zh) |
WO (1) | WO2004001600A1 (zh) |
Families Citing this family (121)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7162600B2 (en) * | 2005-03-29 | 2007-01-09 | Hitachi, Ltd. | Data copying method and apparatus in a thin provisioned system |
US7024586B2 (en) | 2002-06-24 | 2006-04-04 | Network Appliance, Inc. | Using file system information in raid data reconstruction and migration |
US7337351B2 (en) * | 2002-09-18 | 2008-02-26 | Netezza Corporation | Disk mirror architecture for database appliance with locally balanced regeneration |
US7263593B2 (en) | 2002-11-25 | 2007-08-28 | Hitachi, Ltd. | Virtualization controller and data transfer control method |
JP4165747B2 (ja) * | 2003-03-20 | 2008-10-15 | 株式会社日立製作所 | 記憶システム、制御装置及び制御装置のプログラム |
JP2005018193A (ja) * | 2003-06-24 | 2005-01-20 | Hitachi Ltd | ディスク装置のインタフェースコマンド制御方法ならびに計算機システム |
US7206991B2 (en) * | 2003-10-15 | 2007-04-17 | Lsi Logic Corporation | Method, apparatus and program for migrating between striped storage and parity striped storage |
DE10350590A1 (de) * | 2003-10-30 | 2005-06-16 | Ruprecht-Karls-Universität Heidelberg | Verfahren und Vorrichtung zum Sichern von Daten bei mehreren unabhängigen Schreib-Lese-Speichern |
JP2005182683A (ja) * | 2003-12-24 | 2005-07-07 | Hitachi Ltd | データ転送方法及びシステム並びにプログラム |
US20050283654A1 (en) * | 2004-05-24 | 2005-12-22 | Sun Microsystems, Inc. | Method and apparatus for decreasing failed disk reconstruction time in a raid data storage system |
US7707186B2 (en) * | 2004-06-18 | 2010-04-27 | Emc Corporation | Method and apparatus for data set migration |
JP2006079418A (ja) * | 2004-09-10 | 2006-03-23 | Fujitsu Ltd | 記憶制御装置、制御方法及びプログラム |
CN100388237C (zh) * | 2004-10-20 | 2008-05-14 | 北京织女星网格技术有限公司 | 基于轻量计算的数据重组方法 |
US8055711B2 (en) | 2004-10-29 | 2011-11-08 | Emc Corporation | Non-blocking commit protocol systems and methods |
US8238350B2 (en) | 2004-10-29 | 2012-08-07 | Emc Corporation | Message batching with checkpoints systems and methods |
GB0428105D0 (en) * | 2004-12-23 | 2005-01-26 | Ibm | Storage system with multiple copy targeting and disk failure protection |
JP2006195712A (ja) * | 2005-01-13 | 2006-07-27 | Hitachi Ltd | ストレージ制御装置、論理ボリューム管理方法及びストレージ装置 |
CN100367181C (zh) * | 2005-01-21 | 2008-02-06 | 英业达股份有限公司 | 廉价磁盘冗余阵列中硬盘重新识别系统及其方法 |
US20060195657A1 (en) * | 2005-02-28 | 2006-08-31 | Infrant Technologies, Inc. | Expandable RAID method and device |
DE102005013502A1 (de) * | 2005-03-23 | 2006-09-28 | Fujitsu Siemens Computers Gmbh | Verfahren zum Entfernen eines Massenspeichersystems aus einem Rechnerverbund sowie Computerprogramm-Produkt und Rechnerverbund zur Durchführung des Verfahrens |
JP4817783B2 (ja) * | 2005-09-30 | 2011-11-16 | 富士通株式会社 | Raidシステム及びそのリビルド/コピーバック処理方法 |
EP1777613B1 (en) | 2005-10-11 | 2021-11-24 | Infortrend Technology, Inc. | Pool spares for data storage virtualization subsystem |
US7797283B2 (en) * | 2005-10-21 | 2010-09-14 | Isilon Systems, Inc. | Systems and methods for maintaining distributed data |
US7788303B2 (en) * | 2005-10-21 | 2010-08-31 | Isilon Systems, Inc. | Systems and methods for distributed system scanning |
JP4472617B2 (ja) * | 2005-10-28 | 2010-06-02 | 富士通株式会社 | Raidシステム、raidコントローラ及びそのリビルド/コピーバック処理方法 |
US7475277B1 (en) * | 2005-11-10 | 2009-01-06 | Storage Technology Corporation | Automated repair of damaged objects |
US7418623B2 (en) * | 2005-11-16 | 2008-08-26 | International Business Machines Corporation | Apparatus and method to reconfigure a storage array |
US8087021B1 (en) | 2005-11-29 | 2011-12-27 | Oracle America, Inc. | Automated activity processing |
US7627775B2 (en) * | 2005-12-13 | 2009-12-01 | International Business Machines Corporation | Managing failures in mirrored systems |
JP2007199953A (ja) * | 2006-01-25 | 2007-08-09 | Fujitsu Ltd | ディスクアレイ装置およびディスクアレイ制御方法 |
US7848261B2 (en) | 2006-02-17 | 2010-12-07 | Isilon Systems, Inc. | Systems and methods for providing a quiescing protocol |
CN102880424B (zh) * | 2006-05-24 | 2015-10-28 | 克姆佩棱特科技公司 | 用于raid管理、重新分配以及重新分段的系统和方法 |
US7882071B2 (en) | 2006-08-18 | 2011-02-01 | Isilon Systems, Inc. | Systems and methods for a snapshot of data |
US7899800B2 (en) | 2006-08-18 | 2011-03-01 | Isilon Systems, Inc. | Systems and methods for providing nonlinear journaling |
US7822932B2 (en) | 2006-08-18 | 2010-10-26 | Isilon Systems, Inc. | Systems and methods for providing nonlinear journaling |
US7596723B2 (en) * | 2006-09-22 | 2009-09-29 | International Business Machines Corporation | Apparatus, system, and method for selective cross communications between autonomous storage modules |
US7822921B2 (en) | 2006-10-31 | 2010-10-26 | Netapp, Inc. | System and method for optimizing write operations in storage systems |
US8286029B2 (en) * | 2006-12-21 | 2012-10-09 | Emc Corporation | Systems and methods for managing unavailable storage devices |
US7593938B2 (en) | 2006-12-22 | 2009-09-22 | Isilon Systems, Inc. | Systems and methods of directory entry encodings |
US7509448B2 (en) | 2007-01-05 | 2009-03-24 | Isilon Systems, Inc. | Systems and methods for managing semantic locks |
US7900015B2 (en) | 2007-04-13 | 2011-03-01 | Isilon Systems, Inc. | Systems and methods of quota accounting |
US8966080B2 (en) | 2007-04-13 | 2015-02-24 | Emc Corporation | Systems and methods of managing resource utilization on a threaded computer system |
US7882068B2 (en) | 2007-08-21 | 2011-02-01 | Isilon Systems, Inc. | Systems and methods for adaptive copy on write |
US7759958B2 (en) * | 2007-09-21 | 2010-07-20 | International Business Machines Corporation | Apparatus, system, and method for integrated component testing |
WO2009079478A1 (en) * | 2007-12-14 | 2009-06-25 | Virident Systems, Inc. | Distributing metadata across multiple different disruption regions within an asymmetric memory system |
JP5153315B2 (ja) * | 2007-12-19 | 2013-02-27 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ルートファイルシステムを管理するシステム及び方法 |
US7899988B2 (en) * | 2008-02-28 | 2011-03-01 | Harris Corporation | Video media data storage system and related methods |
WO2009140700A1 (en) | 2008-05-16 | 2009-11-19 | Fusion Multisystems, Inc. | Apparatus, system, and method for detecting and replacing failed data storage |
US8316196B1 (en) * | 2008-09-30 | 2012-11-20 | Emc Corporation | Systems, methods and computer readable media for improving synchronization performance after partially completed writes |
US7904749B2 (en) * | 2008-10-24 | 2011-03-08 | Hitachi, Ltd. | Fast data recovery from HDD failure |
US8135984B2 (en) * | 2008-11-06 | 2012-03-13 | Mitac Technology Corp. | System and method for reconstructing RAID system |
US8041991B2 (en) * | 2008-11-18 | 2011-10-18 | Lsi Corporation | System and method for recovering solid state drive data |
US8533397B2 (en) * | 2009-01-06 | 2013-09-10 | International Business Machines Corporation | Improving performance in a cache mechanism by way of destaging data in partial strides |
JP5199465B2 (ja) * | 2009-02-26 | 2013-05-15 | 株式会社日立製作所 | Raidグループを備えたストレージシステム |
US8307258B2 (en) | 2009-05-18 | 2012-11-06 | Fusion-10, Inc | Apparatus, system, and method for reconfiguring an array to operate with less storage elements |
US8281227B2 (en) | 2009-05-18 | 2012-10-02 | Fusion-10, Inc. | Apparatus, system, and method to increase data integrity in a redundant storage system |
JP4818395B2 (ja) * | 2009-05-20 | 2011-11-16 | 富士通株式会社 | ストレージ装置及びデータコピー方法 |
JP4836014B2 (ja) * | 2009-07-24 | 2011-12-14 | 日本電気株式会社 | ディスクアレイ装置及び物理ディスクの復元方法 |
US20110029728A1 (en) * | 2009-07-28 | 2011-02-03 | Lsi Corporation | Methods and apparatus for reducing input/output operations in a raid storage system |
KR101562794B1 (ko) * | 2009-08-04 | 2015-10-26 | 삼성전자주식회사 | 데이터 저장 장치 |
US8176284B2 (en) * | 2009-08-11 | 2012-05-08 | Texas Memory Systems, Inc. | FLASH-based memory system with variable length page stripes including data protection information |
US8930622B2 (en) | 2009-08-11 | 2015-01-06 | International Business Machines Corporation | Multi-level data protection for flash memory system |
US7941696B2 (en) * | 2009-08-11 | 2011-05-10 | Texas Memory Systems, Inc. | Flash-based memory system with static or variable length page stripes including data protection information and auxiliary protection stripes |
US8189379B2 (en) | 2009-08-12 | 2012-05-29 | Texas Memory Systems, Inc. | Reduction of read disturb errors in NAND FLASH memory |
US7818525B1 (en) | 2009-08-12 | 2010-10-19 | Texas Memory Systems, Inc. | Efficient reduction of read disturb errors in NAND FLASH memory |
US8234520B2 (en) * | 2009-09-16 | 2012-07-31 | International Business Machines Corporation | Wear leveling of solid state disks based on usage information of data and parity received from a raid controller |
CN101714064B (zh) * | 2009-12-29 | 2012-01-04 | 成都市华为赛门铁克科技有限公司 | 数据存取方法及服务器 |
US8880843B2 (en) * | 2010-02-10 | 2014-11-04 | International Business Machines Corporation | Providing redundancy in a virtualized storage system for a computer system |
US8347169B1 (en) * | 2010-03-01 | 2013-01-01 | Applied Micro Circuits Corporation | System and method for encoding using common partial parity products |
CN102884516B (zh) * | 2010-05-13 | 2016-08-03 | 惠普发展公司,有限责任合伙企业 | 文件系统迁移 |
CN101980137B (zh) * | 2010-10-19 | 2012-05-30 | 成都市华为赛门铁克科技有限公司 | 廉价磁盘冗余阵列重构方法、装置及系统 |
CN102129354A (zh) * | 2010-12-08 | 2011-07-20 | 北京航空航天大学 | 一种基于2d-raid阵列的自适应重组方法 |
CN106407044B (zh) | 2010-12-14 | 2019-09-24 | 株式会社日立制作所 | 信息处理系统中的故障恢复方法和信息处理系统 |
US8560772B1 (en) * | 2010-12-29 | 2013-10-15 | Datadirect Networks, Inc. | System and method for data migration between high-performance computing architectures and data storage devices |
CN102053802B (zh) * | 2010-12-31 | 2012-09-05 | 中国科学院计算技术研究所 | 网络独立冗余磁盘阵列系统 |
CN102207895B (zh) * | 2011-05-27 | 2012-11-14 | 杭州华三通信技术有限公司 | 一种独立磁盘冗余阵列数据重建方法和装置 |
US8456972B2 (en) * | 2011-09-12 | 2013-06-04 | Microsoft Corporation | Efficient access to storage devices with usage bitmaps |
US8996804B2 (en) | 2011-09-12 | 2015-03-31 | International Business Machines Corporation | Optimizing and enhancing performance for parity based storage |
CN102508733B (zh) * | 2011-09-22 | 2016-01-20 | 杭州华三通信技术有限公司 | 一种基于磁盘阵列的数据处理方法及磁盘阵列管理器 |
JP2013117922A (ja) * | 2011-12-05 | 2013-06-13 | Buffalo Inc | ディスクシステム、データ保持装置、及びディスクデバイス |
WO2013117002A1 (zh) | 2012-02-09 | 2013-08-15 | 华为技术有限公司 | 一种数据重建方法、装置和系统 |
US8930745B2 (en) * | 2012-04-16 | 2015-01-06 | Hitachi, Ltd. | Storage subsystem and data management method of storage subsystem |
US9047220B2 (en) * | 2012-07-23 | 2015-06-02 | Hitachi, Ltd. | Storage system and data management method |
CN102981936A (zh) * | 2012-11-15 | 2013-03-20 | 浪潮电子信息产业股份有限公司 | 一种磁盘阵列数据重构的方法 |
EP2863308B1 (en) | 2013-06-19 | 2018-08-08 | Hitachi, Ltd. | Decentralized distributed computing system |
JP6213130B2 (ja) * | 2013-10-09 | 2017-10-18 | 富士通株式会社 | ストレージ制御装置、ストレージ制御プログラム及びストレージ制御方法 |
US9021296B1 (en) * | 2013-10-18 | 2015-04-28 | Hitachi Data Systems Engineering UK Limited | Independent data integrity and redundancy recovery in a storage system |
US11630585B1 (en) | 2016-08-25 | 2023-04-18 | Pure Storage, Inc. | Processing evacuation events in a storage array that includes a plurality of storage devices |
CN103699336B (zh) * | 2013-12-03 | 2016-09-07 | 中国科学院计算技术研究所 | 一种磁盘阵列数据分布与重建方法及系统 |
US8949692B1 (en) | 2014-01-23 | 2015-02-03 | DSSD, Inc. | Method and system for service-aware parity placement in a storage system |
US20150205667A1 (en) * | 2014-01-23 | 2015-07-23 | DSSD, Inc. | Method and system for service-aware data placement in a storage system |
JP6556980B2 (ja) * | 2014-03-04 | 2019-08-07 | 日本電気株式会社 | ストレージ制御装置、ストレージ制御方法及びストレージ制御プログラム |
US9542272B2 (en) | 2014-03-24 | 2017-01-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Write redirection in redundant array of independent disks systems |
US9336102B2 (en) * | 2014-04-21 | 2016-05-10 | Dell Products L.P. | Systems and methods for preventing input/output performance decrease after disk failure in a distributed file system |
US10452315B2 (en) | 2014-09-24 | 2019-10-22 | Hewlett Packard Enterprise Development Lp | Block priority information |
CN104317678B (zh) * | 2014-10-30 | 2016-09-14 | 浙江宇视科技有限公司 | 一种不中断数据存储服务且修复raid阵列的方法和装置 |
US9766977B2 (en) | 2014-11-10 | 2017-09-19 | Dell Products, Lp | System and method for improving read performance of a distributed parity RAID solution |
US10757175B2 (en) * | 2015-02-10 | 2020-08-25 | Vmware, Inc. | Synchronization optimization based upon allocation data |
US10528272B2 (en) * | 2015-02-20 | 2020-01-07 | International Business Machines Corporation | RAID array systems and operations using mapping information |
CN104850468B (zh) * | 2015-05-31 | 2018-04-27 | 上海交通大学 | 基于校验矩阵的纠删码解码方法 |
US10013171B2 (en) | 2015-06-29 | 2018-07-03 | International Business Machines Corporation | Reducing stress on RAIDS under rebuild |
CN105183583A (zh) * | 2015-07-31 | 2015-12-23 | 浪潮电子信息产业股份有限公司 | 一种磁盘阵列的数据重建的方法及一种磁盘阵列系统 |
CN109445687B (zh) * | 2015-09-30 | 2022-04-26 | 华为技术有限公司 | 一种数据存储方法以及协议服务器 |
US11112990B1 (en) * | 2016-04-27 | 2021-09-07 | Pure Storage, Inc. | Managing storage device evacuation |
US10013320B2 (en) * | 2016-06-14 | 2018-07-03 | Oracle International Corporation | Systems and methods for support log cache device removal through standard user interfaces |
CN107870730B (zh) | 2016-09-23 | 2020-11-20 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和系统 |
CN108733313B (zh) * | 2017-04-17 | 2021-07-23 | 伊姆西Ip控股有限责任公司 | 利用预备盘建立多级闪速缓存的方法、设备和计算机可读介质 |
US10936453B2 (en) * | 2017-09-19 | 2021-03-02 | Seagate Technology Llc | Data storage systems using elastic spares |
US10776202B1 (en) * | 2017-09-22 | 2020-09-15 | Pure Storage, Inc. | Drive, blade, or data shard decommission via RAID geometry shrinkage |
US10521139B2 (en) * | 2017-12-14 | 2019-12-31 | International Business Machines Corporation | Copy source to target management in a data storage system |
CN110058953B (zh) * | 2018-01-18 | 2023-02-28 | 伊姆西Ip控股有限责任公司 | 用于改变存储系统的类型的方法、设备和存储介质 |
CN110058965B (zh) * | 2018-01-18 | 2023-07-28 | 伊姆西Ip控股有限责任公司 | 存储系统中的数据重建方法及设备 |
CN110058785B (zh) | 2018-01-18 | 2022-07-05 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和设备 |
US11169961B2 (en) * | 2018-06-29 | 2021-11-09 | Weka.IO Ltd. | Data migration in a distributive file system |
CN111124264B (zh) * | 2018-10-31 | 2023-10-27 | 伊姆西Ip控股有限责任公司 | 用于重建数据的方法、设备和计算机程序产品 |
CN109799953B (zh) * | 2018-12-14 | 2022-10-11 | 深圳创新科技术有限公司 | 一种快速重建raid的方法和装置 |
CN111857552A (zh) * | 2019-04-30 | 2020-10-30 | 伊姆西Ip控股有限责任公司 | 存储管理方法、电子设备和计算机程序产品 |
CN112825052A (zh) * | 2019-11-20 | 2021-05-21 | 华为技术有限公司 | 确定条带一致性的方法及装置 |
CN113552998B (zh) * | 2020-04-24 | 2023-09-15 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统中的条带的方法、设备和程序产品 |
CN113849268A (zh) * | 2021-08-20 | 2021-12-28 | 河南创新科信息技术有限公司 | 一种存储系统重建迁移模拟方法及装置 |
CN114443368B (zh) * | 2021-12-31 | 2023-11-14 | 苏州浪潮智能科技有限公司 | raid系统的冗余数据处理方法、装置、系统及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5313585A (en) * | 1991-12-17 | 1994-05-17 | Jeffries Kenneth L | Disk drive array with request fragmentation |
CN1247608A (zh) * | 1997-02-27 | 2000-03-15 | 国际商业机器公司 | 用于分级存储管理系统的转换廉价磁盘冗余阵列 |
CN1350674A (zh) * | 1999-03-03 | 2002-05-22 | 约塔约塔股份有限公司 | 用来实现共用磁盘阵列管理功能的方法和系统 |
Family Cites Families (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4814971A (en) | 1985-09-11 | 1989-03-21 | Texas Instruments Incorporated | Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state |
US4825354A (en) | 1985-11-12 | 1989-04-25 | American Telephone And Telegraph Company, At&T Bell Laboratories | Method of file access in a distributed processing computer network |
US4761785B1 (en) * | 1986-06-12 | 1996-03-12 | Ibm | Parity spreading to enhance storage access |
EP0306244B1 (en) | 1987-09-04 | 1995-06-21 | Digital Equipment Corporation | Fault tolerant computer system with fault isolation |
EP0617363B1 (en) * | 1989-04-13 | 2000-01-26 | SanDisk Corporation | Defective cell substitution in EEprom array |
US5144659A (en) | 1989-04-19 | 1992-09-01 | Richard P. Jones | Computer file protection system |
US5454099A (en) | 1989-07-25 | 1995-09-26 | International Business Machines Corporation | CPU implemented method for backing up modified data sets in non-volatile store for recovery in the event of CPU failure |
US5276867A (en) | 1989-12-19 | 1994-01-04 | Epoch Systems, Inc. | Digital data storage system with improved data migration |
IL97315A (en) | 1990-02-28 | 1994-10-07 | Hughes Aircraft Co | Multi-group signal processor |
US5134619A (en) | 1990-04-06 | 1992-07-28 | Sf2 Corporation | Failure-tolerant mass storage system |
US5195100A (en) | 1990-03-02 | 1993-03-16 | Micro Technology, Inc. | Non-volatile memory storage of write operation identifier in data sotrage device |
US5166939A (en) | 1990-03-02 | 1992-11-24 | Micro Technology, Inc. | Data storage apparatus and method |
US5088081A (en) * | 1990-03-28 | 1992-02-11 | Prime Computer, Inc. | Method and apparatus for improved disk access |
JPH0731582B2 (ja) * | 1990-06-21 | 1995-04-10 | インターナショナル・ビジネス・マシーンズ・コーポレイション | パリティ保護データを回復するための方法および装置 |
US5208813A (en) | 1990-10-23 | 1993-05-04 | Array Technology Corporation | On-line reconstruction of a failed redundant array system |
JP2603757B2 (ja) | 1990-11-30 | 1997-04-23 | 富士通株式会社 | アレ−ディスク装置の制御方法 |
US5235601A (en) | 1990-12-21 | 1993-08-10 | Array Technology Corporation | On-line restoration of redundancy information in a redundant array system |
US5278838A (en) | 1991-06-18 | 1994-01-11 | Ibm Corp. | Recovery from errors in a redundant array of disk drives |
US5502836A (en) | 1991-11-21 | 1996-03-26 | Ast Research, Inc. | Method for disk restriping during system operation |
US5379417A (en) | 1991-11-25 | 1995-01-03 | Tandem Computers Incorporated | System and method for ensuring write data integrity in a redundant array data storage system |
US5313626A (en) | 1991-12-17 | 1994-05-17 | Jones Craig S | Disk drive array with efficient background rebuilding |
US5333305A (en) | 1991-12-27 | 1994-07-26 | Compaq Computer Corporation | Method for improving partial stripe write performance in disk array subsystems |
JP3058743B2 (ja) | 1992-01-21 | 2000-07-04 | 株式会社日立製作所 | ディスクアレイ制御装置 |
US5341381A (en) | 1992-01-21 | 1994-08-23 | Tandem Computers, Incorporated | Redundant array parity caching system |
AU653670B2 (en) | 1992-03-10 | 1994-10-06 | Data General Corporation | Improvements for high availability disk arrays |
US5398253A (en) | 1992-03-11 | 1995-03-14 | Emc Corporation | Storage unit generation of redundancy information in a redundant storage array system |
US5469566A (en) | 1992-03-12 | 1995-11-21 | Emc Corporation | Flexible parity generation circuit for intermittently generating a parity for a plurality of data channels in a redundant array of storage units |
US5708668A (en) | 1992-05-06 | 1998-01-13 | International Business Machines Corporation | Method and apparatus for operating an array of storage devices |
US5315602A (en) | 1992-08-12 | 1994-05-24 | Digital Equipment Corporation | Optimized stripe detection for redundant arrays of disk drives |
JP3183719B2 (ja) * | 1992-08-26 | 2001-07-09 | 三菱電機株式会社 | アレイ型記録装置 |
EP0612015A1 (en) | 1993-02-16 | 1994-08-24 | International Business Machines Corporation | Improved disk array system having special parity groups for data blocks with high update activity |
US5963962A (en) | 1995-05-31 | 1999-10-05 | Network Appliance, Inc. | Write anywhere file-system layout |
EP0701716B1 (en) | 1993-06-03 | 2002-08-14 | Network Appliance, Inc. | Method and file system for allocating blocks of files to storage space in a RAID disk system |
US6604118B2 (en) | 1998-07-31 | 2003-08-05 | Network Appliance, Inc. | File system image transfer |
US7174352B2 (en) | 1993-06-03 | 2007-02-06 | Network Appliance, Inc. | File system image transfer |
JP3751018B2 (ja) | 1993-06-03 | 2006-03-01 | ネットワーク・アプライアンス・インコーポレイテッド | ライトエニウエアファイルシステムレイアウト |
US6138126A (en) | 1995-05-31 | 2000-10-24 | Network Appliance, Inc. | Method for allocating files in a file system integrated with a raid disk sub-system |
DE69434381T2 (de) | 1993-06-04 | 2006-01-19 | Network Appliance, Inc., Sunnyvale | Verfahren zur Paritätsdarstellung in einem Raid-Untersystem unter Verwendung eines nichtflüchtigen Speichers |
US5522031A (en) * | 1993-06-29 | 1996-05-28 | Digital Equipment Corporation | Method and apparatus for the on-line restoration of a disk in a RAID-4 or RAID-5 array with concurrent access by applications |
US5392244A (en) * | 1993-08-19 | 1995-02-21 | Hewlett-Packard Company | Memory systems with data storage redundancy management |
US5566316A (en) * | 1994-02-10 | 1996-10-15 | Storage Technology Corporation | Method and apparatus for hierarchical management of data storage elements in an array storage device |
US5537567A (en) | 1994-03-14 | 1996-07-16 | International Business Machines Corporation | Parity block configuration in an array of storage devices |
US5566297A (en) | 1994-06-16 | 1996-10-15 | International Business Machines Corporation | Non-disruptive recovery from file server failure in a highly available file system for clustered computing environments |
US5657439A (en) * | 1994-08-23 | 1997-08-12 | International Business Machines Corporation | Distributed subsystem sparing |
US5835953A (en) | 1994-10-13 | 1998-11-10 | Vinca Corporation | Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating |
US5537534A (en) * | 1995-02-10 | 1996-07-16 | Hewlett-Packard Company | Disk array having redundant storage and methods for incrementally generating redundancy as data is written to the disk array |
JPH08286844A (ja) * | 1995-04-13 | 1996-11-01 | Hitachi Ltd | パリティ生成制御方法およびディスク制御装置 |
JP3202550B2 (ja) * | 1995-07-14 | 2001-08-27 | 日本電気株式会社 | ディスクアレイサブシステム |
US5657468A (en) | 1995-08-17 | 1997-08-12 | Ambex Technologies, Inc. | Method and apparatus for improving performance in a reduntant array of independent disks |
US5826001A (en) * | 1995-10-13 | 1998-10-20 | Digital Equipment Corporation | Reconstructing data blocks in a raid array data storage system having storage device metadata and raid set metadata |
US5860090A (en) * | 1995-10-20 | 1999-01-12 | Informix Software, Inc. | Append-only storage in a disk array using striping and parity caching |
US5862312A (en) | 1995-10-24 | 1999-01-19 | Seachange Technology, Inc. | Loosely coupled mass storage computer cluster |
US5758118A (en) * | 1995-12-08 | 1998-05-26 | International Business Machines Corporation | Methods and data storage devices for RAID expansion by on-line addition of new DASDs |
US5742752A (en) | 1995-12-29 | 1998-04-21 | Symbios Logic Inc. | Method for performing a RAID stripe write operation using a drive XOR command set |
US5819310A (en) | 1996-05-24 | 1998-10-06 | Emc Corporation | Method and apparatus for reading data from mirrored logical volumes on physical disk drives |
US6006227A (en) | 1996-06-28 | 1999-12-21 | Yale University | Document stream operating system |
US5828876A (en) | 1996-07-31 | 1998-10-27 | Ncr Corporation | File system for a clustered processing system |
JP3133004B2 (ja) * | 1996-11-21 | 2001-02-05 | 株式会社日立製作所 | ディスクアレイ装置およびその制御方法 |
US6134673A (en) | 1997-05-13 | 2000-10-17 | Micron Electronics, Inc. | Method for clustering software applications |
US5856981A (en) | 1997-05-15 | 1999-01-05 | Lucent Technologies Inc. | Reliable connection oriented networks |
US6058455A (en) * | 1997-07-02 | 2000-05-02 | International Business Corporation | RAID system having a selectable unattended mode of operation with conditional and hierarchical automatic re-configuration |
JPH1124848A (ja) * | 1997-07-03 | 1999-01-29 | Hitachi Ltd | ディスクアレイの障害領域交代処理方法およびディスクアレイ装置 |
DE19882723T1 (de) | 1997-10-08 | 2000-09-21 | Seagate Technology | Hybrides Datenspeicherungs- und Datenrekonstruierungssystem und Verfahren für eine Datenspeichervorrichtung |
US6101585A (en) | 1997-11-04 | 2000-08-08 | Adaptec, Inc. | Mechanism for incremental backup of on-line files |
US6516351B2 (en) | 1997-12-05 | 2003-02-04 | Network Appliance, Inc. | Enforcing uniform file-locking for diverse file-locking protocols |
US6052764A (en) * | 1997-12-19 | 2000-04-18 | Compaq Computer Corportion | Computer data restoration assembly and associated method |
US5950203A (en) | 1997-12-31 | 1999-09-07 | Mercury Computer Systems, Inc. | Method and apparatus for high-speed access to and sharing of storage devices on a networked digital data processing system |
US6457130B2 (en) | 1998-03-03 | 2002-09-24 | Network Appliance, Inc. | File access control in a multi-protocol file server |
US6317844B1 (en) | 1998-03-10 | 2001-11-13 | Network Appliance, Inc. | File server storage arrangement |
US6279011B1 (en) | 1998-06-19 | 2001-08-21 | Network Appliance, Inc. | Backup and restore for heterogeneous file server environment |
US6574591B1 (en) | 1998-07-31 | 2003-06-03 | Network Appliance, Inc. | File systems image transfer between dissimilar file systems |
US6119244A (en) | 1998-08-25 | 2000-09-12 | Network Appliance, Inc. | Coordinating persistent status information with multiple file servers |
US6289415B1 (en) * | 1998-12-23 | 2001-09-11 | At&T Corporation | System and method for storage media group parity protection |
US6327672B1 (en) * | 1998-12-31 | 2001-12-04 | Lsi Logic Corporation | Multiple drive failure tolerant raid system |
US6725392B1 (en) * | 1999-03-03 | 2004-04-20 | Adaptec, Inc. | Controller fault recovery system for a distributed file system |
JP2000357058A (ja) * | 1999-06-15 | 2000-12-26 | Toshiba Corp | ディスクアレイ装置 |
US6442649B1 (en) * | 1999-08-18 | 2002-08-27 | Intel Corporation | Dynamic expansion of storage device array |
EP1214663B1 (en) | 1999-08-24 | 2006-06-14 | Network Appliance, Inc. | Scalable file server with highly available pairs |
US6715034B1 (en) | 1999-12-13 | 2004-03-30 | Network Appliance, Inc. | Switching file system request in a mass storage system |
US6571351B1 (en) * | 2000-04-07 | 2003-05-27 | Omneon Video Networks | Tightly coupled secondary storage system and file system |
US6598174B1 (en) * | 2000-04-26 | 2003-07-22 | Dell Products L.P. | Method and apparatus for storage unit replacement in non-redundant array |
US6636879B1 (en) | 2000-08-18 | 2003-10-21 | Network Appliance, Inc. | Space allocation in a write anywhere file system |
US6728922B1 (en) * | 2000-08-18 | 2004-04-27 | Network Appliance, Inc. | Dynamic data space |
US6745284B1 (en) * | 2000-10-02 | 2004-06-01 | Sun Microsystems, Inc. | Data storage subsystem including a storage disk array employing dynamic data striping |
US6654912B1 (en) | 2000-10-04 | 2003-11-25 | Network Appliance, Inc. | Recovery of file system data in file servers mirrored file system volumes |
JP3435400B2 (ja) * | 2000-12-08 | 2003-08-11 | 株式会社東芝 | ディスクアレイ装置におけるデータ修復方法及びディスクアレイコントローラ |
JP4053234B2 (ja) * | 2000-12-11 | 2008-02-27 | 株式会社日立グローバルストレージテクノロジーズ | ディスク装置 |
US7024586B2 (en) | 2002-06-24 | 2006-04-04 | Network Appliance, Inc. | Using file system information in raid data reconstruction and migration |
-
2002
- 2002-06-24 US US10/179,465 patent/US7024586B2/en not_active Expired - Lifetime
-
2003
- 2003-06-24 JP JP2004516269A patent/JP2005531071A/ja active Pending
- 2003-06-24 CN CNB038201097A patent/CN100378672C/zh not_active Expired - Lifetime
- 2003-06-24 AU AU2003278864A patent/AU2003278864A1/en not_active Abandoned
- 2003-06-24 EP EP03742221A patent/EP1535154A4/en not_active Withdrawn
- 2003-06-24 IL IL16583103A patent/IL165831A0/xx unknown
- 2003-06-24 CN CN2007101419296A patent/CN101154174B/zh not_active Expired - Lifetime
- 2003-06-24 WO PCT/US2003/020119 patent/WO2004001600A1/en active Application Filing
-
2004
- 2004-12-16 IL IL165831A patent/IL165831A/en active IP Right Grant
-
2008
- 2008-06-06 JP JP2008149382A patent/JP4846763B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5313585A (en) * | 1991-12-17 | 1994-05-17 | Jeffries Kenneth L | Disk drive array with request fragmentation |
CN1247608A (zh) * | 1997-02-27 | 2000-03-15 | 国际商业机器公司 | 用于分级存储管理系统的转换廉价磁盘冗余阵列 |
CN1350674A (zh) * | 1999-03-03 | 2002-05-22 | 约塔约塔股份有限公司 | 用来实现共用磁盘阵列管理功能的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
EP1535154A1 (en) | 2005-06-01 |
CN101154174A (zh) | 2008-04-02 |
US7024586B2 (en) | 2006-04-04 |
JP4846763B2 (ja) | 2011-12-28 |
JP2008269638A (ja) | 2008-11-06 |
AU2003278864A1 (en) | 2004-01-06 |
JP2005531071A (ja) | 2005-10-13 |
CN100378672C (zh) | 2008-04-02 |
CN1679000A (zh) | 2005-10-05 |
WO2004001600A1 (en) | 2003-12-31 |
US20030237019A1 (en) | 2003-12-25 |
IL165831A (en) | 2010-12-30 |
EP1535154A4 (en) | 2008-09-10 |
IL165831A0 (en) | 2006-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101154174B (zh) | 在raid数据重建和转移中使用文件系统信息的方法及设备 | |
US12253922B2 (en) | Data rebuild based on solid state memory characteristics | |
US6480970B1 (en) | Method of verifying data consistency between local and remote mirrored data storage systems | |
US8082390B1 (en) | Techniques for representing and storing RAID group consistency information | |
US5790773A (en) | Method and apparatus for generating snapshot copies for data backup in a raid subsystem | |
AU710907B2 (en) | Expansion of the number of drives in a raid set while maintaining integrity of migrated data | |
US9037795B1 (en) | Managing data storage by provisioning cache as a virtual device | |
US5379417A (en) | System and method for ensuring write data integrity in a redundant array data storage system | |
JP3177242B2 (ja) | データ記憶装置における書込みオペレーション識別子の不揮発性メモリ記憶 | |
US8839028B1 (en) | Managing data availability in storage systems | |
US7389379B1 (en) | Selective disk offlining | |
US7774643B2 (en) | Method and apparatus for preventing permanent data loss due to single failure of a fault tolerant array | |
US6704837B2 (en) | Method and apparatus for increasing RAID write performance by maintaining a full track write counter | |
US7275179B1 (en) | System and method for reducing unrecoverable media errors in a disk subsystem | |
US6725392B1 (en) | Controller fault recovery system for a distributed file system | |
US20090055682A1 (en) | Data storage systems and methods having block group error correction for repairing unrecoverable read errors | |
US8234542B2 (en) | Storage controller and method for controlling input and output of data between a storage apparatus and a host computer | |
US20240354002A1 (en) | Intelligent upgrade process in a distributed system | |
TWI451257B (zh) | 保護在直接附加儲存(das)系統中快取資料的完整性之裝置及方法 | |
US6332177B1 (en) | N-way raid 1 on M drives block mapping | |
JP2016512365A (ja) | 不揮発性メモリシステムにおける同期ミラーリング | |
CN105659213A (zh) | 无共享分布式存储系统中的目标驱动独立数据完整性和冗余恢复 | |
US20050050383A1 (en) | Method of managing raid level bad blocks in a networked storage system | |
US20070088975A1 (en) | Method and apparatus for mirroring customer data and metadata in paired controllers | |
WO2002033551A1 (en) | Controller fault recovery system for a distributed file system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: California, USA Patentee after: NETAPP, Inc. Address before: California, USA Patentee before: NETWORK APPLIANCE, Inc. |
|
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20101006 |