CN100378672C - 在raid数据重建和转移中使用文件系统信息 - Google Patents

在raid数据重建和转移中使用文件系统信息 Download PDF

Info

Publication number
CN100378672C
CN100378672C CNB038201097A CN03820109A CN100378672C CN 100378672 C CN100378672 C CN 100378672C CN B038201097 A CNB038201097 A CN B038201097A CN 03820109 A CN03820109 A CN 03820109A CN 100378672 C CN100378672 C CN 100378672C
Authority
CN
China
Prior art keywords
disk
data
block
raid
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
Application number
CNB038201097A
Other languages
English (en)
Other versions
CN1679000A (zh
Inventor
S·R·克莱曼
S·H·斯特朗格
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.)
NetApp Inc
Original Assignee
Network Appliance Inc
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 Network Appliance Inc filed Critical Network Appliance Inc
Publication of CN1679000A publication Critical patent/CN1679000A/zh
Application granted granted Critical
Publication of CN100378672C publication Critical patent/CN100378672C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G06F11/1092Rebuilding, e.g. when physically replacing a failing disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2082Data synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2094Redundant storage or storage space

Abstract

当磁盘故障(210)时,存储系统只转移包括已分配数据的那些磁盘块,并在可能的情况下把未分配的磁盘块视为逻辑上为零。当没有备用磁盘时,源磁盘块被逻辑上置零并且重新计算与源磁盘块相关联的RAID条带的奇偶性(223)。当存在备用时,备用上的未分配块在迁移时逻辑上或物理上被置零(222)。故障磁盘的写入操作被重定向到其它未故障磁盘,并且保存该使用中的磁盘块已经被如此“转移”到那些其它的未故障磁盘的记录。未使用磁盘块被提前主动置零。使用关于已分配磁盘块的信息,并通过拷贝那些包括已分配数据或奇偶性的数据块,以及通过在镜像清除那些不包括任何已分配块的数据块,目标镜像拷贝被创建。

Description

在RAID数据重建和转移中使用文件系统信息
发明背景
1.发明领域
本发明涉及在RAID数据重建和转移(migration)中使用文件系统信息。
2.相关技术
在计算机系统中保存大量存储的一个已知方法被称作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的流程点和步骤可以用流水线或其它方法由串联或并联分离元件来执行,不管异步或同步。除非其中明确地指示,否则没有方法20必须以与说明书列出的流程点或步骤相同的顺序来执行的特定要求。
已分配数据的转移
在流程点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 (7)

1.一种在廉价磁盘冗余阵列数据重建和转移中使用文件系统信息的方法,包括:
确定第一群数据块中的故障数据块,所述第一群数据块包括保存与所述第一群数据块相关联的冗余信息的块;
只有当所述故障数据块存储分配的数据时,重建所述分配的数据并把所述分配的数据发送到与第二群相关联的目标数据块,所述第二群至少具有一个未故障的数据块;
保存关于所述故障数据块的信息,所述信息指示所述故障数据块已经被从第一磁盘迁移到多个第二磁盘之一;
逻辑上把所述第一群中的所述故障数据块设置为选定值,以及
为所述第一群重新计算所述冗余信息。
2.权利要求1的方法,包括:
在第一磁盘的全部故障数据块已经被迁移到多个第二磁盘时,逻辑上从存储系统除去所述的第一磁盘。
3.权利要求1的方法,包括:
识别访问所述故障数据块的请求;以及
把所述访问请求重定向到所述目标数据块。
4.一种在廉价磁盘冗余阵列数据重建和转移中使用文件系统信息的方法,包括:
响应于廉价磁盘冗余阵列组的第一磁盘的失败事件,对于所述第一磁盘的每个磁盘块,
只有当所述磁盘块存储分配的数据时,执行以下操作:
将所述磁盘块迁移到多个第二磁盘之一的目标磁盘块;
保存指示所述磁盘块已经被迁移到所述目标磁盘块的信息;
逻辑上把所述磁盘块设置为零,以及
重新计算对应于所述磁盘块的奇偶块。
5.权利要求4的方法,进一步包括逻辑上从所述廉价磁盘冗余阵列组除去所述第一磁盘。
6.权利要求4的方法,进一步包括把访问所述第一磁盘的磁盘块的请求重定向到对应于所述磁盘块的目标磁盘块。
7.权利要求4的方法,其中指示所述磁盘块已经被迁移到所述目标磁盘块的信息被保存在条带映射中。
CNB038201097A 2002-06-24 2003-06-24 在raid数据重建和转移中使用文件系统信息 Expired - Lifetime CN100378672C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/179,465 US7024586B2 (en) 2002-06-24 2002-06-24 Using file system information in raid data reconstruction and migration
US10/179,465 2002-06-24

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN2007101419296A Division CN101154174B (zh) 2002-06-24 2003-06-24 在raid数据重建和转移中使用文件系统信息的方法及设备

Publications (2)

Publication Number Publication Date
CN1679000A CN1679000A (zh) 2005-10-05
CN100378672C true CN100378672C (zh) 2008-04-02

Family

ID=29734905

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2007101419296A Expired - Lifetime CN101154174B (zh) 2002-06-24 2003-06-24 在raid数据重建和转移中使用文件系统信息的方法及设备
CNB038201097A Expired - Lifetime CN100378672C (zh) 2002-06-24 2003-06-24 在raid数据重建和转移中使用文件系统信息

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2007101419296A Expired - Lifetime CN101154174B (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) CN101154174B (zh)
AU (1) AU2003278864A1 (zh)
IL (2) IL165831A0 (zh)
WO (1) WO2004001600A1 (zh)

Families Citing this family (119)

* Cited by examiner, † Cited by third party
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 北京织女星网格技术有限公司 基于轻量计算的数据重组方法
US8238350B2 (en) 2004-10-29 2012-08-07 Emc Corporation Message batching with checkpoints systems and methods
US8055711B2 (en) 2004-10-29 2011-11-08 Emc Corporation Non-blocking commit protocol 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
US7788303B2 (en) * 2005-10-21 2010-08-31 Isilon Systems, Inc. Systems and methods for distributed system scanning
US7797283B2 (en) * 2005-10-21 2010-09-14 Isilon Systems, Inc. Systems and methods for maintaining distributed data
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
CN101454745B (zh) * 2006-05-24 2012-09-05 克姆佩棱特科技公司 用于raid管理、重新分配以及重新分段的系统和方法
US7822932B2 (en) 2006-08-18 2010-10-26 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7899800B2 (en) 2006-08-18 2011-03-01 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7882071B2 (en) 2006-08-18 2011-02-01 Isilon Systems, Inc. Systems and methods for a snapshot of data
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
US9727452B2 (en) * 2007-12-14 2017-08-08 Virident Systems, Llc 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
KR20110050404A (ko) 2008-05-16 2011-05-13 퓨전-아이오, 인크. 결함 있는 데이터 저장소를 검출하고 교체하는 장치, 시스템 및 프로그램 제품
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
CN102209957B (zh) * 2009-02-26 2014-04-16 株式会社日立制作所 包括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 삼성전자주식회사 데이터 저장 장치
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
US8176360B2 (en) 2009-08-11 2012-05-08 Texas Memory Systems, Inc. Method and apparatus for addressing actual or predicted failures in a FLASH-based storage system
US8930622B2 (en) 2009-08-11 2015-01-06 International Business Machines Corporation Multi-level data protection for flash memory system
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
WO2011142762A1 (en) * 2010-05-13 2011-11-17 Hewlett-Packard Development Company, L.P. File system migration
CN101980137B (zh) * 2010-10-19 2012-05-30 成都市华为赛门铁克科技有限公司 廉价磁盘冗余阵列重构方法、装置及系统
CN102129354A (zh) * 2010-12-08 2011-07-20 北京航空航天大学 一种基于2d-raid阵列的自适应重组方法
CN103052944B (zh) 2010-12-14 2016-10-12 株式会社日立制作所 信息处理系统中的故障恢复方法和信息处理系统
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 杭州华三通信技术有限公司 一种独立磁盘冗余阵列数据重建方法和装置
US8996804B2 (en) 2011-09-12 2015-03-31 International Business Machines Corporation Optimizing and enhancing performance for parity based storage
US8456972B2 (en) * 2011-09-12 2013-06-04 Microsoft Corporation Efficient access to storage devices with usage bitmaps
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
WO2014016860A1 (en) * 2012-07-23 2014-01-30 Hitachi, Ltd. Raid storage system and rebuild process
CN102981936A (zh) * 2012-11-15 2013-03-20 浪潮电子信息产业股份有限公司 一种磁盘阵列数据重构的方法
JP6132980B2 (ja) 2013-06-19 2017-05-24 株式会社日立製作所 非集中的な分散型コンピューティング・システム
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 华为技术有限公司 一种数据存储方法以及协议服务器
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
CN110058965B (zh) * 2018-01-18 2023-07-28 伊姆西Ip控股有限责任公司 存储系统中的数据重建方法及设备
CN110058785B (zh) 2018-01-18 2022-07-05 伊姆西Ip控股有限责任公司 用于管理存储系统的方法和设备
CN110058953B (zh) * 2018-01-18 2023-02-28 伊姆西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控股有限责任公司 用于管理存储系统中的条带的方法、设备和程序产品
CN114443368B (zh) * 2021-12-31 2023-11-14 苏州浪潮智能科技有限公司 raid系统的冗余数据处理方法、装置、系统及介质

Citations (5)

* Cited by examiner, † Cited by third party
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
US5657439A (en) * 1994-08-23 1997-08-12 International Business Machines Corporation Distributed subsystem sparing
US5657468A (en) * 1995-08-17 1997-08-12 Ambex Technologies, Inc. Method and apparatus for improving performance in a reduntant array of independent disks
US5948110A (en) * 1993-06-04 1999-09-07 Network Appliance, Inc. Method for providing parity in a raid sub-system using non-volatile memory
CN1350674A (zh) * 1999-03-03 2002-05-22 约塔约塔股份有限公司 用来实现共用磁盘阵列管理功能的方法和系统

Family Cites Families (86)

* Cited by examiner, † Cited by third party
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
EP1031992B1 (en) * 1989-04-13 2006-06-21 SanDisk Corporation Flash EEPROM system
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
CA2036688C (en) 1990-02-28 1995-01-03 Lee W. Tower Multiple cluster signal processor
US5166939A (en) 1990-03-02 1992-11-24 Micro Technology, Inc. Data storage apparatus and method
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
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
JP3751018B2 (ja) 1993-06-03 2006-03-01 ネットワーク・アプライアンス・インコーポレイテッド ライトエニウエアファイルシステムレイアウト
US7174352B2 (en) 1993-06-03 2007-02-06 Network Appliance, Inc. File system image transfer
US6604118B2 (en) 1998-07-31 2003-08-05 Network Appliance, Inc. File system image transfer
US5963962A (en) 1995-05-31 1999-10-05 Network Appliance, Inc. Write anywhere file-system layout
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
ATE222384T1 (de) 1993-06-03 2002-08-15 Network Appliance Inc Verfahren und dateisystem zur zuordnung von datei-blöcken zu speicherplatz in einem raid- plattensystem
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
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 日本電気株式会社 ディスクアレイサブシステム
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 株式会社日立製作所 ディスクアレイ装置およびその制御方法
US5960169A (en) * 1997-02-27 1999-09-28 International Business Machines Corporation Transformational raid for hierarchical storage management system
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
WO2001014991A2 (en) 1999-08-24 2001-03-01 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
US6728922B1 (en) * 2000-08-18 2004-04-27 Network Appliance, Inc. Dynamic data space
US6636879B1 (en) 2000-08-18 2003-10-21 Network Appliance, Inc. Space allocation in a write anywhere file system
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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
US5948110A (en) * 1993-06-04 1999-09-07 Network Appliance, Inc. Method for providing parity in a raid sub-system using non-volatile memory
US5657439A (en) * 1994-08-23 1997-08-12 International Business Machines Corporation Distributed subsystem sparing
US5657468A (en) * 1995-08-17 1997-08-12 Ambex Technologies, Inc. Method and apparatus for improving performance in a reduntant array of independent disks
CN1350674A (zh) * 1999-03-03 2002-05-22 约塔约塔股份有限公司 用来实现共用磁盘阵列管理功能的方法和系统

Also Published As

Publication number Publication date
EP1535154A1 (en) 2005-06-01
JP4846763B2 (ja) 2011-12-28
JP2008269638A (ja) 2008-11-06
IL165831A0 (en) 2006-01-15
CN1679000A (zh) 2005-10-05
US20030237019A1 (en) 2003-12-25
WO2004001600A1 (en) 2003-12-31
CN101154174B (zh) 2010-10-06
JP2005531071A (ja) 2005-10-13
CN101154174A (zh) 2008-04-02
EP1535154A4 (en) 2008-09-10
IL165831A (en) 2010-12-30
AU2003278864A1 (en) 2004-01-06
US7024586B2 (en) 2006-04-04

Similar Documents

Publication Publication Date Title
CN100378672C (zh) 在raid数据重建和转移中使用文件系统信息
US5089958A (en) Fault tolerant computer backup system
US6745284B1 (en) Data storage subsystem including a storage disk array employing dynamic data striping
US5881311A (en) Data storage subsystem with block based data management
US7152184B2 (en) Storage device, backup method and computer program code of this storage device
US5875457A (en) Fault-tolerant preservation of data integrity during dynamic raid set expansion
US8156303B2 (en) Storage system condition indicator and method
JP4292882B2 (ja) 複数のスナップショット維持方法及びサーバ装置及びストレージ装置
US7587564B2 (en) System, method and computer program product for managing data versions
US7774565B2 (en) Methods and apparatus for point in time data access and recovery
US9465560B2 (en) Method and system for data migration in a distributed RAID implementation
US20050240813A1 (en) Restore method for backup
US20080109602A1 (en) Method and apparatus for writing data to a disk array
US20040044705A1 (en) Optimized disk repository for the storage and retrieval of mostly sequential data
US7529887B1 (en) Methods, systems, and computer program products for postponing bitmap transfers and eliminating configuration information transfers during trespass operations in a disk array environment
JP2007234026A (ja) ユニークブロックプールマネージャを含むデータ記憶システムおよび階層記憶装置における応用
JP2002259062A (ja) 記憶装置システム及び記憶装置システムにおけるデータの複写方法
US20110154105A1 (en) Redundant File System
JPH0317141B2 (zh)
US20110202719A1 (en) Logical Drive Duplication
JP2006178926A (ja) 複数のオブジェクトベースのストレージ装置を使用したストレージ装置、システム、および方法
JP7056874B2 (ja) 制御装置、ディスクアレイ装置、制御方法、及びプログラム
Solworth et al. Distorted mapping techniques to achieve high performance in mirrored disk systems
MXPA99003253A (en) Expansion of the number of drives in a raid set while maintaining integrity of migrated data

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: 20080402