CN1834932A - 存储控制装置和方法 - Google Patents
存储控制装置和方法 Download PDFInfo
- Publication number
- CN1834932A CN1834932A CNA2005100854173A CN200510085417A CN1834932A CN 1834932 A CN1834932 A CN 1834932A CN A2005100854173 A CNA2005100854173 A CN A2005100854173A CN 200510085417 A CN200510085417 A CN 200510085417A CN 1834932 A CN1834932 A CN 1834932A
- Authority
- CN
- China
- Prior art keywords
- information
- dish
- memory device
- recover
- memory
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- 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
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1035—Keeping track, i.e. keeping track of data and parity changes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
在将数据和奇偶校验位分散地存储在多个存储设备的系统中,当第一存储设备发生故障时,利用存储在除了第一存储设备外的其他存储设备中的信息来恢复第一存储设备中的信息。并且当在正恢复第一存储设备中的信息的同时,第二存储设备发生故障时,利用存储在除了第一和第二存储设备外的其他存储设备中的信息来恢复第一存储设备中未恢复区域中的信息和第二存储设备中的信息。
Description
技术领域
本发明涉及这样的存储控制装置和方法,其中,数据和奇偶校验位(parity)被分散地存储在诸如RAID(廉价盘冗余阵列)的多个存储设备中,并且在存储设备发生故障时执行数据和奇偶校验位的重建处理。
背景技术
上述RAID是这样的技术,在该技术中,多个硬盘被组合并被管理为具有冗余度的一个硬盘。并且RAID可以根据将数据分配到盘的方法和实现数据冗余的方法而被分类为从RAID 0到RAID 6的七个级别。在RAID的七个级别中,在RAID 3到RAID 6中,通过将基于数据生成的奇偶校验位与数据相互分离地存储,从而实现冗余。在盘故障的情形下,执行重建处理以利用奇偶校验位来恢复故障盘中的数据(例如参见日本专利申请公开No.03-240123)。
RAID 6是减轻了两个盘中的故障的RAID级别。在RAID 6中,两种不同类型的奇偶校验位P和Q被分别分散地存储在不同的盘中,并且在一个盘故障和两个盘故障的重建处理中,分别采用不同的恢复方法。
例如,当如图1A所示,在由五个盘10到14组成的RAID设备中,数据D0由于盘10的故障而丢失时,利用作为备用盘的热备份15来执行一个盘故障的重建处理。这时,基于存储在其他盘11到13中的数据D1、D2和奇偶校验位P来恢复数据D0。
与上述相反,当如图1B所示,数据D0和D1由于盘10和11中的故障而丢失时,利用热备份15和16来执行两个盘故障的重建处理。这时,基于存储在其他盘12到14中的数据D2以及奇偶校验位P和Q来恢复数据D0和D1。
通常在RAID 6中,对于每个条带(striping),在故障盘中存储有不同种类的信息并且为了恢复存储在故障盘中的信息需要这些不同种类的信息,这是因为不同的盘存储每个条带的数据和奇偶校验位。因此,在下面的解释中,存储在每个盘中的信息被称为数据/奇偶校验位。
当一个盘故障的情形变为两个盘故障的情形时,重建处理也从一个盘故障的重建处理切换到两个盘故障的重建处理。例如,当如图1C所示,在执行一个盘故障的重建处理的同时(其中第一故障盘#0被热备份(HS)取代),第二盘#1发生故障,则通过以上一个盘故障的重建处理不能恢复数据/奇偶校验位。因此,通常的设计是,在停止一个盘故障的重建处理之后,利用热备份HS#0和HS#1开始两个盘故障的重建处理。
上述两个盘故障的重建处理有下面的问题。
在图1C所示两个盘故障的重建处理中,丢弃已存储在热备份HS#0的重建区域中的已恢复的数据/奇偶校验位,并且从最开始再次执行重建处理。因此,没有有效地利用已恢复的数据/奇偶校验位。
另外,在热备份HS#0和HS#1的整个区域上执行两个盘故障的重建处理(该处理比一个盘故障的重建处理开销要大),从而冗余恢复需要更长的时间。
发明内容
本发明的目的是在诸如RAID的存储装置(其中利用奇偶校验位实现了数据冗余)中,通过改进在两个用于存储数据/奇偶校验位的存储设备发生故障时的重建处理,来有效地恢复冗余。
根据本发明的存储控制装置包括第一重建设备和第二重建设备,并且通过进行控制而实现了数据冗余,其中经由所述控制,数据和奇偶校验位被分散地存储在多个存储设备中。
第一重建设备当第一存储设备发生故障时,利用存储在除了第一存储设备外的其他存储设备中的信息来恢复第一存储设备中的信息,并将恢复的信息写入第一备用存储设备中。第二重建设备当在正恢复第一存储设备中的信息的同时,第二存储设备发生故障时,利用存储在除了第一和第二存储设备外的其他存储设备中的信息来恢复第一存储设备中未恢复区域的信息和第二存储设备中的信息,并将恢复的信息分别写入第一备用存储设备的对应区域中和第二备用存储设备中。
附图说明
图1A示出了一个盘故障时的数据恢复;
图1B示出了两个盘故障时的数据恢复;
图1C示出了对两个盘故障的重建处理;
图2A示出了根据本发明的存储控制装置的原理;
图2B示出了第一存储系统的配置;
图3示出了重建处理的计数方案;
图4示出了计数方案1;
图5示出了计数方案2;
图6示出了计数方案4;
图7示出了计数方案5;
图8示出了计数方案6;
图9示出了待处理主盘(treated Main)和待处理副盘(treated Sub)中的当前位置;
图10示出了每个盘中的恢复状态;
图11是重建处理的流程图;
图12是计数方案1中恢复例程的流程图;
图13是计数方案1中恢复后处理的流程图;
图14是计数方案2到5中恢复例程的流程图;
图15是计数方案2中恢复后处理的流程图;
图16是计数方案3中恢复后处理的流程图;
图17是计数方案4中恢复后处理的流程图;
图18是计数方案5中恢复后处理的流程图;
图19示出了计数方案6中的恢复状态;
图20示出了提供程序和数据的方法;
图21示出了第二存储系统的配置;以及
图22示出了第三存储系统的配置。
具体实施方式
下文中,将参考附图详细解释本发明的优选实施例。
图2A示出了根据本发明的存储控制装置的原理。图2A中的存储控制装置101包括重建设备111和112,并且通过执行以下控制实现了数据冗余,利用该控制,数据和奇偶校验位被分散地存储在多个存储设备102-1到102-N中。
当存储设备102-1发生故障时,重建设备111利用存储在除了存储设备102-1以外的其他存储设备中的信息,来恢复存储设备102-1中的信息,并且将恢复信息写入备用存储设备103-1中。当在恢复存储设备102-1中的信息的同时,存储设备102-2发生故障时,重建设备112利用存储在除了存储设备102-1和102-2以外的其他存储设备中的信息,来恢复存储在存储设备102-1的未恢复区域中的信息和存储设备102-2中的信息,并且将恢复的信息分别写入备用存储设备103-1的对应区域和备用存储设备103-2中。
在每个存储设备中,数据或奇偶校验位被存储为信息。利用存储在此刻无故障的正常运行的存储设备中的信息,来恢复故障存储设备中的信息,并且恢复的信息被写入与故障存储设备相对应的备用存储设备中。当在恢复存储设备102-1中的信息的同时,存储设备102-2发生故障时,存储设备102-1的恢复区域中的信息被不加改动地存储到备用存储设备103-1中,并且对于存储设备102-1的未恢复区域和存储设备102-2的整个区域执行恢复处理。
根据上述的重建控制,即使当一个盘故障的情形变为两个盘故障的情形时,也可以有效地利用已恢复的信息,而无需擦除。另外,存储设备102-1中的恢复区域不被包括为恢复目标,从而减少了重建处理所耗费的时间。另外,关于存储设备102-2中与存储设备102-1中的恢复区域相对应的区域,可以施加对一个盘故障的重建处理(其需要的处理开销更小),从而实现了更高的效率。
存储控制装置101例如对应于图2B中的控制器211、图21中的主机总线适配器1911或图22中的主机设备2001,这些将在后面解释。
根据本发明,在将数据和奇偶校验位分散地存储在多个存储设备内的存储装置中,改进了当两个存储设备发生故障时的重建处理,并且有效地恢复了数据冗余。
图2B示出了一个实施例中的存储系统的配置示例。图2B中的存储系统包括主机设备201和RAID设备202。RAID设备202对应于包括控制器211和四个盘#0到盘#3的存储装置。
每个盘包括一个或多个磁盘,并且主机设备201读/写数据,将每个盘识别为一个存储设备。然而注意,连接到控制器211的盘的数目并不限于四个,通常有多于四个的盘连接到控制器211。
控制器211包括处理器221、存储器222和缓存223,并且在盘#0到盘#3发生故障时执行重建处理。处理器221执行存储在存储器222中的程序,从而利用缓存223作为数据缓冲器来执行重建处理。
在本实施例中,为了改进两个盘故障时的重建处理,采用了图3中所示的计数器方案1到6。首先,参考图4到图8解释各个计数器方案的概况。
1.分离执行方案(计数方案1)
控制器211分离地执行对第一盘和第二盘的重建处理。尤其是,在对应于两个盘中故障区域的双重故障区域的重建处理中,只有在一个盘的已恢复数据/奇偶校验位被写入盘中,而另一个盘的已恢复数据/奇偶校验位被丢弃而未写入时,才在数据缓冲器上恢复出两个盘中的数据/奇偶校验位。
例如,解释了如图4所示的情形,其中盘#0首先发生故障,在利用热备份HS#0恢复盘#0中的数据/奇偶校验位的同时,盘#1发生故障。这种情形下,利用正常运行的盘#1到#3中的数据/奇偶校验位,通过对一个盘故障的重建处理,来恢复盘#0中的数据/奇偶校验位,直到盘#1发生故障为止。
当盘#1发生故障时,热备份HS#0的重建区域中的数据/奇偶校验位按原样保存而不被丢弃,并且只有仍然未恢复的数据/奇偶校验位被两个盘故障的重建处理恢复。在这一过程中,利用正常运行的盘#2到#3中的数据/奇偶校验位,在热备份HS#0中恢复出仍然未恢复的数据/奇偶校验位。这时,同时创建盘#1中的数据/奇偶校验位,然而,对盘#1的重建处理是分离并且独立执行的,因此丢弃所创建的数据/奇偶校验位。
至于热备份HS#1,与热备份HS#0的重建处理并行地,利用正常运行的盘#2和#3中的数据/奇偶校验位,通过两个盘故障的重建处理来恢复全部数据/奇偶校验位。这时,由两个盘故障的重建处理同时创建的盘#0的数据/奇偶校验位被丢弃。
根据以上重建处理,当盘#1发生故障时,盘#0的重建处理从一个盘故障的重建处理切换到两个盘故障的重建处理,并且恢复区域中的数据/奇偶校验位按原样保存,其中,在对一个盘故障的重建处理中,只有被指定为恢复目标的盘发生故障,而在对两个盘故障的重建处理中,除了被指定为恢复目标的盘以外,还有另一个发生故障的盘。因此,不要求如图1C所示的恢复区域中的数据/奇偶校验位的第二次恢复,从而盘#0的恢复完成的时间要比如图1C所示的恢复时间短。
2.等待进度位置相互对应的方案(计数方案2)
当第二盘发生故障时,控制器211临时暂停对第一盘的重建处理,并且只重建第二盘,直到第二盘中的进度位置对应于第一盘中的进度位置为止。从实现上述对应时开始,同时重建这两个盘。
例如,解释如图5所示的情形,其中盘#0首先发生故障,在利用热备份HS#0恢复盘#0中的数据/奇偶校验位的同时,盘#1发生故障。直到盘#1发生故障以前的操作与图4相同。
当盘#1发生故障时,最初利用热备份HS#0的重建区域中的数据/奇偶校验位和正常运行的盘#2和#3中的数据/奇偶校验位,通过对一个盘故障的重建处理,只恢复与热备份HS#0中的重建区域相对应的热备份HS#1中的数据/奇偶校验位。当完成以上热备份HS#1中的数据/奇偶校验位的恢复时,利用正常运行的盘#2和#3中的数据/奇偶校验位,通过对两个盘故障的重建处理,同时恢复分别在热备份HS#0和热备份HS#1中的剩余数据/奇偶校验位。
根据以上重建处理,除了获得与计数方案1相同的优点之外,还获得了以下优点:当前正恢复的盘#0的恢复区域中的数据/奇偶校验位被有效地用于盘#1的恢复,从而可以更有效地执行对盘#1的重建处理。
3.组合方案(计数方案3)
该方案组合了计数方案1和2。控制器211在重建处理期间,通过监视两个盘HS#0和HS#1的重建处理的进度位置,来选择恢复方法。具体地说,控制器211检查分别在盘HS#0和盘HS#1中的进度位置之间的差别,并且当差别等于或大于规定阈值时,应用计数方案1从而给予对盘HS#0的重建处理以优先级。当差别小于上述阈值时,应用计数方案2从而执行对盘HS#1的重建处理,直到两个进度位置彼此对应为止。每次恢复规定单元中的数据/奇偶校验位或者每次恢复规定区域中的数据/奇偶校验位时,执行该进度位置的检查。
当应用计数方案2时,热备份HS#0和HS#1中进度位置之间的差别对应于开始恢复冗余丢失的双重故障区域的等待时间,并且进度位置的差别越大,冗余恢复的延迟越大。因而,当上述等待时间长于规定的时间段时,应用计数方案1以避免上述延迟太长,从而并行执行对热备份HS#0和HS#1的重建处理。
然而,在该方案中,与计数方案1的区别在于:利用热备份HS#0的重建区域中的数据/奇偶校验位和正常运行的盘#2和#3中的数据/奇偶校验位,通过对一个盘故障的重建处理,来恢复不在热备份HS#1的双重故障区域中的热备份HS#1的数据/奇偶校验位。通常,在对两个盘故障的重建处理中,需要比一个盘故障的重建处理更多的计算量。因此,很有可能针对热备份HS#1执行的一个盘故障的重建处理要比前述针对热备份HS#0执行的两个盘故障的重建处理进行得更快,从而使得进度位置的差别随时间而变小。
根据以上重建处理,除了获得与计数方案2相同的优点之外,还获得了以下优点:可以避免由于等待恢复开始而引起的冗余恢复的延迟。另外,通过并行处理可以实现处理器资源等的有效利用。
4.双重故障区域被优先恢复的方案(计数方案4)
控制器211在第二盘发生故障时将第一盘的当前进度位置保存为恢复完成位置(停止位置,将在后面描述),并且从以上位置同时对两个盘执行重建处理。当以上针对两个盘同时执行的重建处理完成时,从起始端执行重建处理,直到第二盘中的恢复完成位置,并将数据恢复到第二盘的未重建区域中。
例如,解释如图6所示的情形,其中盘#0首先发生故障,在利用热备份HS#0恢复盘#0中的数据/奇偶校验位的同时,盘#1发生故障。直到盘#1发生故障以前的操作与图4相同。
当盘#1发生故障时,利用正常运行的盘#2和#3中的数据/奇偶校验位,通过对两个盘故障的重建处理,来恢复与热备份HS#0中的未重建区域相对应的热备份HS#1中的数据/奇偶校验位和热备份HS#0中的数据/奇偶校验位。当恢复了以上对应于未重建区域的数据/奇偶校验位时,利用热备份HS#0的重建区域中的数据/奇偶校验位和正常运行的盘#2和#3中的数据/奇偶校验位,通过对一个盘故障的恢复处理,来恢复热备份HS#1中的剩余数据/奇偶校验位。
当在重建处理期间存在对RAID 6的正常读/写访问时,检查访问目标数据是否被重建,或者所有的正常读/写访问被简并(degenerate),例如重建数据并且同时针对读请求返回重建数据。
根据以上重建处理,除了获得与计数方案2相同的优点之外,还获得了以下优点:通过优先恢复双重故障区域中的数据/奇偶校验位,可以在更短的时间内恢复RAID组的冗余。
5.并行执行对双重故障区域的恢复和使用已恢复的热备份HS的恢复的方案(计数方案5)
控制器211无需等待,与对双重故障区域的重建处理并行地,执行从起始端到第二盘中的恢复完成位置的重建处理(在计数方案4中稍后执行的处理)。
例如,解释如图7所示的情形,其中盘#0首先发生故障,在利用热备份HS#0恢复盘#0中的数据/奇偶校验位的同时,盘#1发生故障。直到盘#1发生故障以前的操作与图4相同。
当盘#1发生故障时,并行执行恢复热备份#0和#1的双重故障区域中的数据/奇偶校验位的处理(称为“前一个处理”)和恢复热备份HS#1的剩余区域中的数据/奇偶校验位的处理(称为“后一个处理”),其中,前一个处理是利用正常运行的盘#2和#3中的数据/奇偶校验位,通过对两个盘故障的重建处理来执行的,后一个处理是利用热备份#0的重建区域中的数据/奇偶校验位和正常运行的盘#2和#3中的数据/奇偶校验位,通过对一个盘故障的重建处理来执行的。
类似于计数方案4,当在重建处理期间存在正常的读/写访问时,检查访问目标数据是否被重建,或者访问被简并。
根据以上重建处理,RAID组的冗余恢复需要比计数方案4更长的时间,然而,由于恢复冗余丢失的双重故障区域和冗余保留的其他区域的处理是并行执行的,所以减少了整体恢复的时间。
6.随机恢复方案(计数方案6)
控制器211利用缓存223上的位图对盘上的每个规定区域执行重建处理。采用以上的计数方案1到5其中之一的顺序作为重建顺序。从数据/奇偶校验位保存的角度出发,基本上希望采用计数方案4的顺序,然而,也可以采用其他计数方案的顺序来实现该方案。
另外,当重建操作作为正常读/写访问中的一个处理来执行时,对应区域被重建的事实被记录在位图中。因此,同时采用独立于读/写访问的顺序重建处理以及作为读/写访问中的处理之一的点对点重建处理作为重建处理。在点对点的重建处理中,当响应于读请求恢复数据时,控制器211将恢复数据写入盘的对应位置中。
控制器211准备例如一个条带对应于一位的位图并管理进度。如果位图丢失,则从头开始重建处理。也可以采用一个逻辑块对应于一位的位图。
另外,当起初无法获得位图的存储区域时,控制器211执行下面的操作之一。
·通过采用不同于本方案的以上计数方案,来执行重建处理。
·设置位图尺寸的上限,并且当需要超过设置尺寸的位图时,在获得资源后执行重建处理。
控制器211可并行执行重建操作,并且具有位图备份/恢复以及接通/断开电源的功能。当控制器211冗余(双份)时,在控制器之间也基本上备份有位图,然而,即使在没有备份位图时,数据也不会丢失。如前所述,当位图丢失时,重新开始重建处理。
例如,解释如图8所示的情形,其中盘#0首先发生故障,在利用热备份HS#0恢复盘#0中的数据/奇偶校验位的同时,盘#1发生故障。
控制器211为每个热备份HS#0和HS#1创建位图,并且将每个条带作为一位数据来管理。对于未重建区域中的条带,记录“1”作为对应位,而对于重建区域中的条带则记录“0”。对于热备份HS#0的重建区域中的条带,每次在盘#1发生故障时记录“0”作为对应位,而对于其他条带,每次在重建对应区域时记录“0”。
根据以上重建处理,除了获得与计数方案1到5相同的优点之外,还获得了以下优点:通过将由点对点重建处理恢复的数据/奇偶校验位写回到盘中,并将以上数据/奇偶校验位识别为恢复的数据/奇偶校验位,有效地执行了处理。
下面将参考图9到19详细解释以上的计数方案。
每个计数方案中的重建处理由盘故障触发,或者由其他重建处理触发。控制器211将触发盘指定为待处理的主盘,并且在需要的时候将另一个故障盘增加为待处理的副盘。在重建处理中,关于在待处理主盘和待处理副盘之间公共的当前位置执行恢复处理,如图9所示。“当前位置”是指当前执行恢复处理的位置。
另外,控制器211将与构成RAID设备202的所有盘有关的信息在缓存223中保存为所有计数方案之间共有的控制信息。具体地说,如图10所示,关于每个盘保存诸如恢复状态(已恢复、正在恢复和未恢复)、恢复开始位置和停止位置(如果需要的话)之类的信息。至于正常运行的盘,所有区域被设为已恢复。
故障盘的恢复开始位置对应于对被指定为待处理主盘的故障盘执行的恢复处理的当前位置,并且当不执行恢复处理时,恢复开始位置被设为盘的末端(图9中盘的底端)。恢复处理从恢复开始位置沿向上的方向进行。停止位置是指恢复处理不得不停止的位置。
对于每个以诸如条带、逻辑块等为单位的区域来管理恢复状态。利用单位区域的地址或单位区域所属的条带的标识符,来管理诸如当前位置、恢复开始位置、停止位置等位置信息。
图11是重建处理的流程图。控制器211首先将待处理主盘的末端(图9中盘的底端)设为当前位置(步骤1101),并通过执行恢复例程来执行恢复处理(步骤1102)。在这一恢复例程中,利用其他盘中的数据/奇偶校验位,来创建被指定为恢复目标的盘中被指定为恢复目标的数据/奇偶校验位,并且将已恢复的数据/奇偶校验位写入对应的热备份中。一旦执行了恢复处理,则恢复出以诸如逻辑块、条带等为规定单位的数据/奇偶校验位。通常,以条带作为规定单位来执行恢复。
随后执行重建控制的恢复后处理(步骤1103)。在恢复后处理中,进行恢复开始位置的设置、恢复处理是否要结束的判断等等操作。其后,检查在以上恢复后处理中,是否确定恢复处理要结束(步骤1104)。当确定恢复处理不是要结束时,在当前位置前进刚好一个条带之后(步骤1105),重复步骤1102和后续步骤的处理,并且当确定恢复处理要结束时,重建处理结束。
在步骤1102的恢复例程和步骤1103的恢复后处理中,在多个计数方案中执行不同的操作,因此,将以从计数方案1到计数方案6的顺序给出其解释。
1.计数方案1
在计数方案1中,图11中的重建处理由每个盘中的故障触发,并且触发盘被指定为待处理主盘。然而,并不将另一个故障盘加为待处理副盘。因此,在第二盘发生故障之后,并行执行两个重建处理,并且只有待处理主盘是在每个重建处理中被指定为恢复目标的盘。
图12是计数方案1的恢复例程的流程图。控制器211首先将待处理主盘设为恢复目标盘,在盘中设置当前位置(步骤1201),并检查故障盘的数目(步骤1202)。当故障盘的数目为1时,确定采用一个盘故障的重建处理作为恢复方法(步骤1203)。
随后,在属于当前位置处的条带的数据/奇偶校验位当中,从正常运行的盘中读取一个盘故障的重建处理所需的数据/奇偶校验位(步骤1205),并且检查是否已读取所有上述所需的数据/奇偶校验位(步骤1206)。当已读取所有上述的数据/奇偶校验位时,利用读取的数据/奇偶校验位,来恢复属于相同条带的恢复目标盘中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入对应的热备份中(步骤1207)。
当在步骤1206中发生读错误时,其被识别为被指定为读目标的盘发生故障。然后,检查故障盘的数目(步骤1208),并且当上述数目为2时,执行步骤1202和后续步骤的处理。
然后,恢复方法切换到对两个盘故障的重建处理(步骤1204),并且从正常运行的盘中读取两个盘故障的重建处理所需的数据/奇偶校验位(步骤1205)。当已读取所有上述数据/奇偶校验位时,利用读取的数据/奇偶校验位对恢复目标盘中的数据/奇偶校验位进行恢复,并且将恢复的数据/奇偶校验位写入对应的热备份中(步骤1207)。
当除了两个故障盘外,发生另一个读错误时,被识别为故障盘的盘的数目变为3(步骤1208),从而确定恢复已不可能,因此执行错误处理(步骤1209)。
图13是计数方案1中恢复后处理的流程图。控制器211首先将恢复例程中所用的当前位置设为待处理主盘中的恢复开始位置(步骤1301),并且检查是否已完成对待处理主盘中整个区域的恢复(步骤1302)。在该示例中,当恢复例程中所用的当前位置到达待处理主盘的末端(图9中盘的顶端)时,则确定已完成对整个区域的恢复。当未完成对整个区域的恢复时,则确定恢复处理必须继续(步骤1303),并且当已完成对整个区域的恢复时,则确定恢复处理将结束(步骤1304)。
例如,当盘#0首先发生故障时,对被指定为待处理主盘的盘#0触发重建处理,如图4所示。此时,故障盘的数目为1(图12中步骤1202),从而采用对一个盘故障的重建处理(步骤1203)。因此,在正常运行的盘#1到#3的数据/奇偶校验位中,读取经由对一个盘故障的重建处理来恢复盘#0中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1205)。然后,利用读取的数据/奇偶校验位来恢复盘#0中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入热备份HS#0中(步骤1207)。
盘#0中的当前位置被设为盘#0中的恢复开始位置(图13中步骤1301),并且确定要继续恢复处理(步骤1303)。诸如对盘#0的读/写访问等的其他处理参考所述恢复开始位置。对于每一个条带,反复执行以上的恢复例程和恢复后处理(图11中步骤1105)。
随后,当盘#1发生故障时,故障盘的数目变为2(步骤1202),从而恢复方法切换到对两个盘故障的重建处理(步骤1204),并且从正常运行的盘#2和#3中读取经由对两个盘故障的重建处理来恢复盘#0和#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1205)。然后,利用读取的数据/奇偶校验位来恢复盘#0和#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位当中的盘#0中的数据/奇偶校验位写入热备份#0中(步骤1207)。
执行与盘#1中发生故障之前相同的恢复后处理。对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105),并且当已完成对盘#0中整个区域的恢复时(步骤1304),确定盘#0的重建处理结束(步骤1104)。
另外,在盘#1发生故障时,对被指定为待处理副盘的盘#1执行另一个重建处理。这时,故障盘的数目为2(步骤1202),从而采用对两个盘故障的重建处理(步骤1204),并且从正常运行的盘#2和#3中读取经由对两个盘故障的重建处理来恢复盘#0和#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1205)。
然后,利用读取的数据/奇偶校验位来恢复盘#0和#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位当中的盘#1中的数据/奇偶校验位写入热备份#1中(步骤1207)。
执行与盘#0中发生故障之前相同的恢复后处理。对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105),并且当已完成对盘#0中整个区域的恢复时(步骤1304),确定对盘#1的重建处理结束(步骤1104)。
2.计数方案2
在计数方案2中,类似于计数方案1,图11中的重建处理由每个盘的故障触发,并且触发盘被指定为待处理主盘。当第二盘发生故障时,中止对被指定为待处理主盘的第一故障盘的重建处理,并且开始对被指定为待处理主盘的第二故障盘的重建处理。当第二故障盘中的当前位置到达与第一故障盘中相同的进度位置时,第一故障盘被加为待处理副盘。
图14是计数方案2的恢复例程的流程图。这种情况下,与图12中的恢复例程不相似的是,恢复目标盘被表示为待处理主盘和待处理副盘,并且至多两个盘可被设为恢复目标盘。另外,根据恢复目标盘的数目,而不是故障盘的数目来选择恢复方法。
控制器211首先设置被指定为恢复目标盘的待处理主盘/待处理副盘,在待处理主盘中设置当前位置(步骤1401)。当不设置待处理副盘时,只有待处理主盘被设为恢复目标盘。
随后,控制器211检查恢复目标盘的数目(步骤1402)。当恢复目标盘的数目为1时,确定采用一个盘故障的重建处理作为恢复方法(步骤1403)。从正常运行的盘中读取在属于当前位置的条带的数据/奇偶校验位中为一个盘故障的重建处理所需的数据/奇偶校验位(步骤1405),并且检查是否已读取所有上述的数据/奇偶校验位(步骤1406)。当已读取所有上述的数据/奇偶校验位时,利用读取的数据/奇偶校验位来恢复属于相同条带的恢复目标盘中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入对应的热备份中(步骤1407)。
在步骤1406中发生读错误时,其被识别为被指定为读目标的盘发生故障。然后检查故障盘的数目(步骤1408),当以上数目为1时,故障盘被加为恢复目标盘(步骤1410),并且执行步骤1402和后续步骤的处理。
然后,恢复方法切换到对两个盘故障的重建处理(步骤1404),并且从正常运行的盘中读取两个盘故障的重建处理所需的数据/奇偶校验位(步骤1405)。当已读取所有上述的数据/奇偶校验位时,利用读取的数据/奇偶校验位来恢复恢复目标盘中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位分别写入对应的热备份中(步骤1407)。
当除了两个故障盘之外,发生另一个读错误时,被识别为故障盘的盘的数目变为3(步骤1408),从而确定不可能恢复,因此执行错误处理(步骤1409)。
图15是计数方案2中恢复后处理的流程图。控制器211首先将恢复例程结束时待处理主盘中的当前位置设为待处理主盘/待处理副盘中的恢复开始位置(步骤1501),并且检查是否满足下面的条件a(步骤1502)。
条件a:除了待处理主盘外,存在另一个故障盘,在待处理主盘和另一个故障盘中都没有设置停止位置,并且另一个故障盘中的恢复开始位置比待处理主盘中的要靠后(低)。
以上另一个故障盘中的恢复开始位置比待处理主盘中的要靠后这一事实意味着在另一个故障盘中的恢复处理的执行与待处理主盘中的相比有一个延迟。当条件a满足时,待处理主盘中的恢复开始位置被设为另一个故障盘中的停止位置(步骤1506),并且确定恢复处理将结束,以中止对待处理主盘的重建处理(步骤1508)。
另外当条件a不满足时,检查是否已完成对待处理主盘中整个区域的恢复(步骤1503)。当已完成对整个区域的恢复时,确定恢复处理将结束(步骤1508)。
当对整个区域的恢复未完成时,检查在待处理主盘中是否设置了停止位置,同时待处理主盘中的当前位置是否对应于以上停止位置(步骤1504)。当当前位置对应于停止位置时,另一个故障盘被加为待处理副盘(步骤1507),并且确定恢复处理将继续(步骤1505)。
当当前位置并不对应于停止位置并且未设置停止位置时,确定恢复处理将按原样继续(步骤1505)。
例如,如图5所示,当盘#0首先发生故障时,对作为待处理主盘的盘#0触发重建处理。因而,由于恢复目标盘的数目为1(图14中步骤1401),所以采用对一个盘故障的重建处理(图14中步骤1403),并且从正常运行的盘#1到#3中读取经由对一个盘故障的重建处理来恢复盘#0中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。利用读取的数据/奇偶校验位来恢复盘#0中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入热备份HS#0中(步骤1407)。
盘#0中的当前位置被设为盘#0中的恢复开始位置(图15中步骤1501),并且由于不存在另一个故障盘(步骤1502),所以确定继续恢复处理(步骤1505)。对于每一个条带,反复执行以上的恢复例程和恢复后处理(图11中步骤1105)。
随后,当盘#1发生故障时,条件a满足(步骤1502),这是因为被指定为待处理主盘的盘#0中的恢复开始位置对应于盘#0中的当前位置(步骤1501),并且作为另一个故障盘的盘#1中的恢复开始位置对应于盘#1的底端。然后,盘#0中的恢复开始位置被设为盘#1中的停止位置(步骤1506),并且确定恢复处理将结束(步骤1508)。从而中止对被指定为待处理主盘的盘#0的重建处理(步骤1104)。
此后,触发对被指定为待处理主盘的盘#1的另一个重建处理。由于恢复目标盘的数目为1(步骤1401),所以采用对一个盘故障的重建处理(步骤1403),并且从正常运行的盘#0、#2和#3中读取经由对一个盘故障的重建处理来恢复盘#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。然而,关于盘#0,只读取已被写入热备份HS#0中的已恢复数据/奇偶校验位。
然后,利用读取的数据/奇偶校验位来恢复盘#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入热备份HS#1中(步骤1407)。
盘#1中的当前位置被设为盘#1中的恢复开始位置(步骤1501),并且由于在盘#1中已经设置了停止位置,所以不满足条件a(步骤1502)。另外,由于盘#1中的当前位置还未到达盘#1中的停止位置(步骤1504),所以确定继续恢复处理(步骤1505)。对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105)。
当盘#1中的当前位置到达盘#1中的停止位置时(步骤1504),将恢复处理被中止的盘#0加为待处理副盘(步骤1507),并且确定继续恢复处理(步骤1505)。从而更新当前位置(步骤1105)。
从而,恢复目标盘的数目变为2(步骤1404),恢复方法切换到对两个盘故障的重建处理(步骤1404),并且从正常运行的盘#2和#3中读取经由对两个盘故障的重建处理来恢复盘#0和#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。利用读取的数据/奇偶校验位来恢复盘#0和#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位分别写入热备份HS#0和HS#1中(步骤1407)。
盘#1中的当前位置被设为盘#1中的恢复开始位置(步骤1501),并且由于盘#1中的当前位置已超过盘#1中的停止位置(步骤1504),所以确定继续恢复处理(步骤1505)。
对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105)。当已完成对盘#1中整个区域的恢复时(步骤1508),被指定为待处理主盘的盘#1的重建处理结束(步骤1104)。另外,由于在以上时刻作为待处理副盘的盘#0中的当前位置已到达盘#0的顶端,所以对盘#0的恢复也一同结束。
3.计数方案3
在计数方案3中,类似于计数方案2,图11中的重建处理由每个盘的故障触发,并且触发盘被指定为待处理主盘。当第二盘发生故障时,根据两个故障盘中各自的进度位置之间的差别来选择计数方案1或计数方案2。
当进度位置之间的差别等于或大于阈值时,选择计数方案1从而并行执行两个重建处理。然而,在该方案中,与计数方案1的区别在于,利用第一故障盘的重建区域中的数据/奇偶校验位和正常运行的盘中的数据/奇偶校验位,通过对一个盘故障的重建处理来恢复第二故障盘中的数据/奇偶校验位。
当进度位置之间的差别变得小于上述阈值时,选择计数方案2从而中止对被指定为待处理主盘的第一故障盘的重建处理,并且开始被指定为待处理主盘的第二故障盘的重建处理。并且当第二故障盘中的当前位置到达与第一故障盘中相同的进度位置时,第一故障盘被加为待处理副盘。
计数方案3中恢复例程的流程图与计数方案2类似,并且图16示出了恢复后处理的流程图。图16中的恢复后处理采用的配置除了包括图15中的恢复后处理外,还包括步骤1603的判决步骤。
在步骤1603中,控制器211将分别在另一个故障盘和待处理主盘中的恢复开始位置之间的差别与阈值相比较。当恢复开始位置之间的差别小于阈值时,待处理主盘中的恢复开始位置被设为另一个故障盘中的停止位置(步骤1607),并且确定恢复处理将结束(步骤1609)。另外,当以上恢复开始位置之间的差别等于或大于阈值时,执行步骤1604和后续步骤的处理。
因此,当计数方案2中所描述的条件满足并且分别在另一个故障盘和待处理主盘中的恢复开始位置之间的差别小于阈值时,在另一个故障盘中设置停止位置(步骤1607)。在不同于以上情形的其他情形中,不设置停止位置。
当例如图5所示盘#0首先发生故障时,触发对被指定为待处理主盘的盘#0的重建处理,并且执行与计数方案2中相似的处理,直到盘#1发生故障。
随后,当盘#1发生故障时,条件a满足(图16中步骤1602),从而将分别在盘#0和盘#1中的恢复位置之间的差别与阈值相比较(步骤1603)。这时,如果自盘#0发生故障开始已经过去足够长的时间,则认为对盘#0的恢复处理已进行的程度足以使恢复开始位置之间的差别超过阈值。这种情况下,执行步骤1604和后续步骤的处理,并且由于在盘#0中没有设置停止位置(步骤1605),所以确定继续恢复处理(步骤1606)。
这时,由于恢复目标盘的数目为1(图14中步骤1401),所以采用对一个盘故障的重建处理(步骤1403),并且从正常运行的盘#1到#3中读取经由对一个盘故障的重建处理来恢复盘#0中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。
这时,当读取盘#1中的数据/奇偶校验位时,发生读错误,并且盘#1被加为恢复目标盘(步骤1410),从而恢复目标盘的数目变为2。
因此,恢复方法切换到对两个盘故障的重建处理(步骤1404),并且从正常运行的盘#2和#3中读取经由对两个盘故障的重建处理来恢复盘#0和#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。利用读取的数据/奇偶校验位来恢复盘#0和#1中的数据/奇偶校验位,并且将以上恢复的数据/奇偶校验位当中的盘#0中的恢复数据/奇偶校验位写入热备份HS#0中(步骤1407)。
盘#0中的当前位置被设为盘#0中的恢复开始位置(步骤1601),并且条件a满足(步骤1602),然而,恢复开始位置之间的差别仍然大于阈值(步骤1603)。另外,由于在盘#0中没有设置停止位置(步骤1605),所以确定继续恢复处理(步骤1606)。对于每一个条带,反复执行以上的恢复例程和恢复后处理(图11中步骤1105)。
另外,当盘#1发生故障时,触发对被指定为待处理主盘的盘#1的另一个重建处理。由于恢复目标盘的数目为1(步骤1401),所以采用对一个盘故障的重建处理(步骤1403),并且从正常运行的盘#0、#2和#3中读取经由对一个盘故障的重建处理来恢复盘#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。然而,关于盘#0,只读取被写入热备份HS#0中的恢复数据/奇偶校验位。
然后,利用读取的数据/奇偶校验位来恢复盘#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入热备份HS#1中(步骤1407)。
盘#1中的当前位置被设为盘#1中的恢复开始位置(步骤1601),并且由于被指定为另一个故障盘的盘#0中的恢复开始位置已超过了被指定为待处理主盘的盘#1中的恢复开始位置,所以条件a不满足(步骤1602)。另外,由于在盘#1中没有设置停止位置(步骤1605),所以确定继续恢复处理(步骤1606)。对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105)。
从而,并行执行对被指定为待处理主盘的盘#0的两个盘故障的重建处理以及对被指定为待处理主盘的盘#1的一个盘故障的重建处理,使得盘#1中的恢复开始位置逐渐接近盘#0中的恢复开始位置。
当在对被指定为待处理主盘的盘#0的重建处理中,分别在盘#0和盘#1中的恢复开始位置之间的差别变得小于阈值时(步骤1603),盘#0中的恢复开始位置被设为盘#1中的停止位置(步骤1607),并且确定恢复处理将结束(步骤1609)。从而,中止对被指定为待处理主盘的盘#0的重建处理(步骤1104)。
其后,只继续对被指定为待处理主盘的盘#1的重建处理,然而,由于在盘#1中已经设置了停止位置,所以条件a不满足(步骤1602)。另外,由于盘#1中的当前位置还未到达盘#1中的停止位置(步骤1605),所以确定继续恢复处理(步骤1606)。
当盘#1中的当前位置到达盘#1中的停止位置时(步骤1605),将恢复处理被中止的盘#0加为待处理副盘(步骤1608),并且确定继续恢复处理(步骤1606)。从而,更新当前位置(步骤1105)。
从而,恢复目标盘的数目变为2(步骤1401),因而采用对两个盘故障的重建处理(步骤1404),并且从正常运行的盘#2和#3中读取经由对两个盘故障的重建处理来恢复盘#0和盘#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。利用读取的数据/奇偶校验位来恢复盘#0和#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位分别写入热备份HS#0和HS#1中(步骤1407)。
盘#1中的当前位置被设置为盘#0和#1中的恢复开始位置(步骤1601),并且盘#1中的当前位置已超过盘#1中的停止位置(步骤1605),因此,确定继续恢复处理(步骤1606)。
对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105)。并且当已完成对盘#1中整个区域的恢复时(步骤1609),被指定为待处理主盘的盘#1的重建处理结束(步骤1104)。另外,由于在以上时刻被指定为待处理副盘的盘#0中的当前位置已到达盘#0的顶端,所以对盘#0的恢复也一同结束。
4.计数方案4
在计数方案4中,图11中的重建处理由盘中的故障触发,或者由其他重建处理触发。并且触发盘被指定为待处理主盘。通过前一个触发,对于每一个RAID组只触发一个重建处理。因此,如果已经触发RAID组的重建处理,则即使第二盘发生故障,也不会触发另一个重建处理。
当第二盘发生故障时,第一故障盘中的当前位置被设置为第二故障盘中的停止位置,第二故障盘被加为待处理副盘,并且继续重建处理。并且当已完成对第一故障盘的恢复时,从底端开始,执行对被指定为待处理主盘的第二故障盘的重建处理,直到第二故障盘中的停止位置。计数方案4中的恢复例程的流程图与计数方案2中的相类似。
图17是计数方案4中恢复后处理的流程图。控制器211首先在恢复例程结束时将待处理主盘中的当前位置设为待处理主盘/待处理副盘中的恢复开始位置(步骤1701),并且检查是否满足下面的条件b(步骤1702)。
条件b:除了待处理主盘外,还存在另一个故障盘,并且在待处理主盘和另一个故障盘中都没有设置停止位置。
当条件b满足时,待处理主盘中的恢复开始位置被设为另一个故障盘中的停止位置,并且另一个故障盘被加为待处理副盘(步骤1706)。然后,检查是否已完成对待处理主盘中整个区域的恢复(步骤1703)。当条件b不满足时,按原样执行步骤1703中的处理。
当已完成对待处理主盘中整个区域的恢复时,检查是否存在另一个故障盘。当存在另一个故障盘时,触发对被指定为待处理主盘的另一个故障盘的另一个重建处理(步骤1707)。并且确定恢复处理将结束(步骤1708)。当不存在另一个故障盘时,确定重建处理将结束,而不触发另一个重建处理(步骤1708)。
当未完成对整个区域的恢复时,检查待处理主盘中的当前位置是否对应于待处理主盘中的停止位置(步骤1704)。当当前位置对应于停止位置时,则确定恢复处理结束(步骤1708)。
当上述当前位置不对应于停止位置并且未设置停止位置时,则确定恢复处理将按原样继续(步骤1705)。
例如,如图6所示,当盘#0首先发生故障时,触发对被指定为待处理主盘的盘#0的重建处理。这时,由于恢复目标盘的数目为1(图14中步骤1401),所以采用对一个盘故障的重建处理(步骤1403),并且从正常运行的盘#1到#3中读取经由对一个盘故障的重建处理来恢复盘#0中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。利用读取的数据/奇偶校验位来恢复盘#0中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入热备份HS#0中(步骤1407)。
盘#0中的当前位置被设为盘#0中的恢复开始位置(图17中步骤1701),并且由于不存在另一个故障盘(步骤1702),所以确定继续恢复处理(步骤1705)。对于每一个条带,反复执行以上的恢复例程和恢复后处理(图11中步骤1105)。
随后,当盘#1发生故障时,条件b满足(步骤1702),盘#0中的恢复开始位置被设为盘#1中的停止位置,并且盘#1被加为待处理副盘(步骤1706)。然而,由于在盘#0中没有设置停止位置(步骤1704),所以确定继续重建处理(步骤1705)。
这时,恢复目标盘的数目变为2(步骤1401),从而恢复方法切换到对两个盘故障的重建处理(步骤1404),并且从正常运行的盘#2和#3中读取经由两个盘故障的重建处理来恢复盘#0和#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。利用读取的数据/奇偶校验位来恢复盘#0和#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位分别写入热备份HS#0和HS#1中(步骤1407)。
盘#0中的当前位置被设为盘#0和盘#1中的恢复开始位置(步骤1701),并且由于在盘#1中已经设置了停止位置,所以条件b不满足(步骤1702)。另外,由于在盘#0中没有设置停止位置(步骤1704),所以确定继续重建处理(步骤1705)。
对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105)。并且当已完成对盘#0中整个区域的恢复时(步骤1703),触发对被指定为待处理主盘的盘#1的另一个重建处理(步骤1707),并且确定恢复处理将结束(步骤1708)。从而,对被指定为待处理主盘的盘#0的重建处理结束(步骤1104)。在以上时刻,被指定为待处理副盘的盘#1的当前位置已到达盘#1的顶端。
随后,在对被指定为待处理主盘的盘#1的重建处理中,盘#1的底端被设为当前位置(步骤1101)。这时,由于恢复目标盘的数目为1(步骤1401),所以采用对一个盘故障的重建处理(步骤1403),并且从正常运行的盘#0、#2和#3中读取经由一个盘故障的重建处理来恢复盘#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。然而,关于盘#0,只读取已被写入热备份HS#0中的恢复数据/奇偶校验位。
然后,利用读取的数据/奇偶校验位来恢复盘#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入热备份HS#1中(步骤1407)。
盘#1中的当前位置被设置为盘#1中的恢复开始位置(步骤1701),并且在盘#1中已经设置了停止位置,因此条件b不满足(步骤1702)。另外,由于盘#1中的当前位置还未到达盘#1中的停止位置(步骤1704),所以确定继续恢复处理(步骤1705)。
对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105),并且盘#1中的当前位置到达停止位置。此时,盘#1中的当前位置还未到达盘#1的顶端,从而确定未完成对整个区域的恢复(步骤1703)。然而,当前位置对应于停止位置(步骤1704),确定恢复处理将结束(步骤1708)。从而,对被指定为待处理主盘的盘#1的重建处理结束(步骤1104),并且对盘#1的恢复已完成。
5.计数方案5
在计数方案5中,类似于计数方案1,图11中的重建处理由每个盘的故障触发,并且触发盘被指定为待处理主盘。
类似于计数方案4,当第二盘发生故障时,第一故障盘中的当前位置被设置为第二故障盘中的停止位置,第二故障盘被加为待处理副盘,并且继续重建处理。同时,触发对被指定为待处理主盘的第二故障盘的重建处理,以与被指定为待处理主盘的第一故障盘的重建处理并行执行。
计数方案5中恢复例程的流程图与计数方案2中的相类似,并且图18示出了恢复后处理的流程图。图18中的恢复后处理所采用的配置是从图17中的恢复后处理中除去了步骤1707的处理。
当如图7所示,盘#0首先发生故障时,触发对被指定为待处理主盘的盘#0的重建处理,并且执行与计数方案4中相类似的处理,直到盘#1发生故障。
随后,当盘#1发生故障时,条件b满足(步骤1802),盘#0中的恢复开始位置被设为盘#1中的停止位置,并且盘#1被加为待处理副盘(步骤1806)。然而,由于在盘#0中没有设置停止位置(步骤1804),所以确定继续恢复处理(步骤1805)。
这时,恢复目标盘的数目变为2(步骤1401),从而恢复方法切换到对两个盘故障的重建处理(步骤1404),并且从正常运行的盘#2和#3中读取经由两个盘故障的重建处理来恢复盘#0和#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。利用读取的数据/奇偶校验位来恢复盘#0和#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位分别写入热备份HS#0和HS#1中(步骤1407)。
盘#0中的当前位置被设置为盘#0和盘#1中的恢复开始位置(步骤1801),并且由于在盘#1中已经设置了停止位置,因此条件b不满足(步骤1802)。另外,由于在盘#0中没有设置停止位置(步骤1804),所以确定继续恢复处理(步骤1805)。
对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105),并且当已完成对盘#0中整个区域的恢复时(步骤1803),确定恢复处理结束(步骤1807)。从而,对被指定为待处理主盘的盘#0的重建处理结束(步骤1104)。在以上时刻,被指定为待处理副盘的盘#1中的当前位置已到达盘#1的顶端。
另外,当盘#1发生故障时,触发对被指定为待处理主盘的盘#1的另一个重建处理,并且盘#1的底端被设为当前位置(步骤1101)。由于恢复目标盘的数目为1(步骤1401),所以采用对一个盘故障的重建处理(步骤1403),并且从正常运行的盘#0、#2和#3中读取经由一个盘故障的重建处理来恢复盘#1中的数据/奇偶校验位时所需的数据/奇偶校验位(步骤1405)。然而,关于盘#0,只读取已被写入热备份HS#0中的恢复数据/奇偶校验位。
然后,利用读取的数据/奇偶校验位来恢复盘#1中的数据/奇偶校验位,并且将恢复的数据/奇偶校验位写入热备份HS#1中(步骤1407)。
盘#1中的当前位置被设置为盘#1中的恢复开始位置(步骤1801),并且在盘#1中已经设置了停止位置,因此条件b不满足(步骤1802)。另外,由于盘#1中的当前位置还未到达盘#1中的停止位置(步骤1804),所以确定继续恢复处理(步骤1805)。
对于每一个条带,反复执行以上的恢复例程和恢复后处理(步骤1105),并且盘#1中的当前位置到达停止位置。此时,盘#1中的当前位置还未到达盘#1的顶端,从而确定还未完成对整个区域的恢复(步骤1803)。然而,当前位置对应于停止位置(步骤1804),确定恢复处理将结束(步骤1807)。从而,对被指定为待处理主盘的盘#1的重建处理结束(步骤1104)。
并行执行对被指定为待处理主盘的盘#0的两个盘故障的重建处理以及对被指定为待处理主盘的盘#1的一个盘故障的重建处理,并且当以上两个处理都结束时,对盘#1的恢复完成。
6.计数方案6
在计数方案1到5的重建处理中,用于指示每个盘中诸如条带、逻辑块等之类的每个规定区域的恢复状态的位图被加为控制信息。由计数方案1到5中的一个来进行对所有盘的进度控制。
在执行重建处理或恢复例程时,控制器211参考在位图中对应于恢复位置的位信息。然后,如图19所示,当作为读/写访问等的处理之一已恢复了某一区域时,则跳过对已恢复区域的恢复。从而,减少了用于恢复处理的不必要开销。
图20示出了提供控制器211中的处理器221处理时所用的程序和数据的方法。存储在外部设备1801或诸如信息处理设备等之类的移动式存储介质1802中的程序和数据被加载到RAID设备202的存储器222。
外部设备1801生成用于携带程序和数据的载波信号,并将程序和数据经由通信网络上的任意传输介质传输到RAID设备202。移动式存储介质1802是诸如存储器卡、软盘、光盘、磁光盘等的任意计算机可读存储介质。处理器221利用存储介质中的数据执行程序,并执行所需的处理。
图21和图22分别示出了存储系统的其他配置示例。在图21示出的示例中,位于主机设备中的主机总线适配器执行重建处理。在图22示出的示例中,位于主机设备中的软件执行重建处理。在两种配置中,以与RAID设备202的情形中相同的方式提供了必要的程序和数据。
图21中的存储系统包括主机设备1901和盘#0到#3。主机设备1901包括主机总线适配器1911。主机总线适配器1911包括处理器1921、存储器1922和缓存1923,并且在盘#0到#3发生故障时执行重建处理。这时,处理器1921执行存储在存储器1922中的程序,从而执行上述的重建处理。
图22中的存储系统包括主机设备2001和盘#0到#3。主机设备2001包括处理器2011、存储器2012和2013,并且在盘#0到#3发生故障时执行重建处理。这时,处理器2011执行存储在存储器2012中的程序,从而在存储器2013上执行上述的重建处理。
另外,在以上实施例中,采用磁盘设备作为盘设备,然而,本发明也可应用于使用其他盘设备的存储系统或诸如磁带设备的其他存储设备,其他盘设备例如光盘设备、磁光盘设备等。
Claims (10)
1.一种用于通过进行控制而实现数据冗余的存储控制装置,其中经由所述控制,数据和奇偶校验位被分散地存储在多个存储设备中,所述存储控制装置包括:
第一重建设备,用于当所述多个存储设备中的第一存储设备发生故障时,利用存储在除了所述第一存储设备外的其他存储设备中的信息来恢复所述第一存储设备中的信息,并将恢复的信息写入第一备用存储设备中;以及
第二重建设备,用于当在正恢复所述第一存储设备中的信息的同时,第二存储设备发生故障时,利用存储在除了所述第一和第二存储设备外的其他存储设备中的信息来恢复所述第一存储设备中未恢复区域中的信息和所述第二存储设备中的信息,并将恢复的信息分别写入所述第一备用存储设备的对应区域中和第二备用存储设备中。
2.如权利要求1所述的存储控制装置,其特征在于:
所述第二重建设备独立且并行地分别执行恢复所述第一存储设备中未恢复区域的信息的处理和恢复所述第二存储设备中的信息的处理。
3.如权利要求1所述的存储控制装置,其特征在于:
所述第二重建设备利用存储在除了所述第一和第二存储设备外的其他存储设备中、在对应于所述第一存储设备中已恢复区域的区域中的信息,来恢复所述第二存储设备中对应区域中的信息,其后,利用存储在除了所述第一和第二存储设备外的其他存储设备中、在对应于所述第一存储设备中未恢复区域的区域中的信息,来恢复所述第一存储设备中未恢复区域中的信息和所述第二存储设备中对应区域中的信息。
4.如权利要求1所述的存储控制装置,其特征在于:
所述第二重建设备将所述第一存储设备中恢复进度位置和所述第二存储设备中恢复进度位置之间的差别与阈值相比较,并且当所述恢复进度位置之间的差别等于或大于所述阈值时,独立且并行地分别执行恢复所述第一存储设备中未恢复区域中的信息的处理和恢复所述第二存储设备中的信息的处理,并且当所述恢复进度位置之间的差别小于所述阈值时,利用存储在除了所述第一和第二存储设备外的其他存储设备中、在对应于所述第一存储设备中已恢复区域的区域中的信息,来恢复所述第二存储设备中对应区域的信息,其后,利用存储在除了所述第一和第二存储设备外的其他存储设备中、在对应于所述第一存储设备中未恢复区域的区域中的信息,来恢复所述第一存储设备中未恢复区域中的信息和所述第二存储设备中对应区域中的信息。
5.如权利要求1所述的存储控制装置,其特征在于:
所述第二重建设备利用存储在除了所述第一和第二存储设备外的其他存储设备中、在对应于所述第一存储设备中未恢复区域的区域中的信息,来恢复所述第一存储设备中未恢复区域中的信息和所述第二存储设备中对应区域中的信息,其后,利用存储在除了所述第一和第二存储设备外的其他存储设备中、在对应于所述第一存储设备中已恢复区域的区域中的信息,来恢复所述第二存储设备中对应区域中的信息。
6.如权利要求1所述的存储控制装置,其特征在于:
所述第二重建设备并行执行前一个处理和后一个处理,所述前一个处理利用存储在除了所述第一和第二存储设备外的其他存储设备中、在对应于所述第一存储设备中已恢复区域的区域中的信息,来恢复所述第二存储设备中对应区域中的信息,所述后一个处理利用存储在除了所述第一和第二存储设备外的其他存储设备中、在对应于所述第一存储设备中未恢复区域的区域中的信息,来恢复所述第一存储设备中未恢复区域中的信息和所述第二存储设备中对应区域中的信息。
7.如权利要求1到6中任何一个所述的存储控制装置,还包括:
用于保存位图信息的保存设备,所述位图信息指示对于每个规定区域,是否已恢复所述第一和第二存储设备中的区域,其中:
所述第二重建设备通过参考所述位图信息,来恢复除了已恢复区域外的其他区域中的信息。
8.如权利要求7所述的存储控制装置,其特征在于:
当发生对所述第一或第二存储设备的访问请求时,所述第二重建设备恢复作为访问目标的信息,并且在所述位图信息中与作为所述访问目标的信息相对应的位置处,记录指示出所述对应区域已恢复的信息。
9.一种存储装置,包括:
多个存储设备,用于分散地存储数据和奇偶校验位,以实现数据冗余;
第一重建设备,用于当所述多个存储设备中的第一存储设备发生故障时,利用存储在除了所述第一存储设备外的其他存储设备中的信息来恢复所述第一存储设备中的信息,并将恢复的信息写入第一备用存储设备中;以及
第二重建设备,用于当在正恢复所述第一存储设备中的信息的同时,第二存储设备发生故障时,利用存储在除了所述第一和第二存储设备外的其他存储设备中的信息来恢复所述第一存储设备中未恢复区域中的信息和所述第二存储设备中的信息,并将恢复的信息分别写入所述第一备用存储设备的对应区域中和第二备用存储设备中。
10.一种记录使处理器通过进行控制实现数据冗余的程序的计算机可读记录介质,其中经由所述控制,数据和奇偶校验位被分散地存储在多个存储设备中,所述程序使所述处理器执行以下处理:
当所述多个存储设备中的第一存储设备发生故障时,利用存储在除了所述第一存储设备外的其他存储设备中的信息来恢复所述第一存储设备中的信息,并将恢复的信息写入第一备用存储设备中的处理;以及
当在正恢复所述第一存储设备中的信息的同时,第二存储设备发生故障时,利用存储在除了所述第一和第二存储设备外的其他存储设备中的信息来恢复所述第一存储设备中未恢复区域中的信息和所述第二存储设备中的信息,并将恢复的信息分别写入所述第一备用存储设备的对应区域中和第二备用存储设备中的处理。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP073669/2005 | 2005-03-15 | ||
JP2005073669A JP4754852B2 (ja) | 2005-03-15 | 2005-03-15 | ストレージ制御装置および方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1834932A true CN1834932A (zh) | 2006-09-20 |
CN100392611C CN100392611C (zh) | 2008-06-04 |
Family
ID=36648659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100854173A Expired - Fee Related CN100392611C (zh) | 2005-03-15 | 2005-07-18 | 存储控制装置和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7809979B2 (zh) |
EP (1) | EP1703397A3 (zh) |
JP (1) | JP4754852B2 (zh) |
KR (1) | KR100701563B1 (zh) |
CN (1) | CN100392611C (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102164165A (zh) * | 2011-02-18 | 2011-08-24 | 杭州宏杉科技有限公司 | 一种网络存储系统的管理方法及装置 |
CN101482733B (zh) * | 2009-02-04 | 2011-10-19 | 浙江中控技术股份有限公司 | 一种数据冗余的方法及装置 |
CN101661413B (zh) * | 2008-08-25 | 2012-07-18 | 株式会社日立制作所 | 计算机系统、存储系统以及结构管理方法 |
CN102684782A (zh) * | 2012-05-08 | 2012-09-19 | 成都瑞凌科信息技术有限公司 | Epon系统的保护装置和数据冗余备份方法及监控方法 |
CN103902232A (zh) * | 2012-12-28 | 2014-07-02 | 联想(北京)有限公司 | 一种写入的数据的方法及装置 |
CN103970481A (zh) * | 2013-01-29 | 2014-08-06 | 国际商业机器公司 | 重建存储器阵列的方法和装置 |
CN110058965A (zh) * | 2018-01-18 | 2019-07-26 | 伊姆西Ip控股有限责任公司 | 存储系统中的数据重建方法及设备 |
CN110389724A (zh) * | 2019-07-23 | 2019-10-29 | 深圳忆联信息系统有限公司 | 基于固态硬盘的parity page识别方法和装置 |
CN111381997A (zh) * | 2018-12-28 | 2020-07-07 | 杭州宏杉科技股份有限公司 | 一种raid重建方法及装置 |
CN113407122A (zh) * | 2016-12-21 | 2021-09-17 | 伊姆西Ip控股有限责任公司 | Raid重建的方法和设备 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4303187B2 (ja) * | 2004-11-10 | 2009-07-29 | 富士通株式会社 | プログラム、記憶制御方法及び記憶装置 |
TWI295021B (en) * | 2004-12-10 | 2008-03-21 | Infortrend Technology Inc | Storage system and method for handling bad storage device data therefor |
JP2008046986A (ja) * | 2006-08-18 | 2008-02-28 | Hitachi Ltd | ストレージシステム |
JP4499776B2 (ja) | 2007-10-31 | 2010-07-07 | 富士通株式会社 | ストレージ制御装置、方法、及びプログラム |
US7877626B2 (en) * | 2007-12-31 | 2011-01-25 | Datadirect Networks, Inc. | Method and system for disk storage devices rebuild in a data storage system |
US7979635B2 (en) * | 2008-02-14 | 2011-07-12 | International Business Machines Corporation | Apparatus and method to allocate resources in a data storage library |
JP5286956B2 (ja) * | 2008-06-13 | 2013-09-11 | 富士通株式会社 | 制御方法、ディスクアレイ装置 |
JP5107196B2 (ja) * | 2008-09-18 | 2012-12-26 | 株式会社東芝 | 情報処理装置および再構築処理および修復処理の制御方法 |
JP5207988B2 (ja) * | 2009-01-07 | 2013-06-12 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法、プログラム、及び記憶媒体 |
JP5218147B2 (ja) * | 2009-02-26 | 2013-06-26 | 富士通株式会社 | ストレージ制御装置,ストレージ制御方法およびストレージ制御プログラム |
JP5391993B2 (ja) * | 2009-10-19 | 2014-01-15 | 富士通株式会社 | ディスクアレイ装置 |
US8341457B2 (en) * | 2010-03-11 | 2012-12-25 | Lsi Corporation | System and method for optimizing redundancy restoration in distributed data layout environments |
US8726070B2 (en) * | 2010-09-27 | 2014-05-13 | Dell Products L.P. | System and method for information handling system redundant storage rebuild |
US8782339B2 (en) | 2010-10-11 | 2014-07-15 | Open Invention Network, Llc | Storage system having cross node data redundancy and method and computer readable medium for same |
CN102055797A (zh) * | 2010-11-29 | 2011-05-11 | 北京卓微天成科技咨询有限公司 | 一种云存储的数据存取的方法、装置及系统 |
JP5729043B2 (ja) * | 2011-03-17 | 2015-06-03 | 富士通株式会社 | ストレージ装置および制御装置 |
JP5472947B2 (ja) * | 2012-03-08 | 2014-04-16 | 株式会社東芝 | ビデオサーバ装置及びそのリビルド処理制御方法 |
JP5891890B2 (ja) * | 2012-03-26 | 2016-03-23 | 富士通株式会社 | ストレージシステム、ストレージ装置およびデータ復元方法 |
CN102681794B (zh) * | 2012-04-23 | 2014-12-10 | 浪潮(北京)电子信息产业有限公司 | 基于双控制器实现磁盘冗余阵列保护的方法及系统 |
JP6039699B2 (ja) * | 2012-07-23 | 2016-12-07 | 株式会社日立製作所 | ストレージシステム及びデータ管理方法 |
JP6171616B2 (ja) * | 2013-06-24 | 2017-08-02 | 富士通株式会社 | ストレージ制御装置、及びストレージ制御プログラム |
US9501360B2 (en) * | 2013-07-01 | 2016-11-22 | International Business Machines Corporation | Rebuilding data while reading data in a dispersed storage network |
JP2015210658A (ja) | 2014-04-25 | 2015-11-24 | 富士通株式会社 | 記憶制御装置、データ復旧プログラム、およびデータ復旧方法 |
CN106227627A (zh) * | 2016-08-22 | 2016-12-14 | 浪潮(北京)电子信息产业有限公司 | 一种raid在数据恢复后再插入新磁盘的数据分布方法及系统 |
US10437691B1 (en) * | 2017-03-29 | 2019-10-08 | Veritas Technologies Llc | Systems and methods for caching in an erasure-coded system |
CN110058961B (zh) * | 2018-01-18 | 2023-05-05 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和设备 |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0786810B2 (ja) | 1990-02-16 | 1995-09-20 | 富士通株式会社 | アレイディスク装置 |
US5579475A (en) * | 1991-02-11 | 1996-11-26 | International Business Machines Corporation | Method and means for encoding and rebuilding the data contents of up to two unavailable DASDS in a DASD array using simple non-recursive diagonal and row parity |
US5271012A (en) * | 1991-02-11 | 1993-12-14 | International Business Machines Corporation | Method and means for encoding and rebuilding data contents of up to two unavailable DASDs in an array of DASDs |
US5708668A (en) * | 1992-05-06 | 1998-01-13 | International Business Machines Corporation | Method and apparatus for operating an array of storage devices |
JPH05341918A (ja) * | 1992-05-12 | 1993-12-24 | Internatl Business Mach Corp <Ibm> | 二重化デイスク記憶装置システムを構成するための接続装置 |
DE69408498D1 (de) | 1993-06-30 | 1998-03-19 | Ibm | Kodierung und Rekonstruktion des Dateninhaltes von bis zu zwei nichtverfügbaren DASDs in einer DASD-Anordnung |
US5666512A (en) * | 1995-02-10 | 1997-09-09 | Hewlett-Packard Company | Disk array having hot spare resources and methods for using hot spare resources to store user data |
US5862158A (en) | 1995-11-08 | 1999-01-19 | International Business Machines Corporation | Efficient method for providing fault tolerance against double device failures in multiple device systems |
JP3597349B2 (ja) * | 1997-09-05 | 2004-12-08 | 株式会社日立製作所 | 記憶サブシステムおよびその障害回復方法 |
US6353895B1 (en) * | 1998-02-19 | 2002-03-05 | Adaptec, Inc. | RAID architecture with two-drive fault tolerance |
JP2000259359A (ja) | 1999-03-04 | 2000-09-22 | Toshiba Corp | Raid装置および記録媒体 |
US6516425B1 (en) | 1999-10-29 | 2003-02-04 | Hewlett-Packard Co. | Raid rebuild using most vulnerable data redundancy scheme first |
US6647514B1 (en) | 2000-03-23 | 2003-11-11 | Hewlett-Packard Development Company, L.P. | Host I/O performance and availability of a storage array during rebuild by prioritizing I/O request |
JP2002123372A (ja) | 2000-10-18 | 2002-04-26 | Nec Corp | キャッシュメモリ付きディスクアレイ装置及びそのエラー制御方法並びにその制御プログラムを記録した記録媒体 |
JP3617631B2 (ja) | 2001-07-19 | 2005-02-09 | 富士通株式会社 | ストレージ制御装置及びその制御方法 |
JP2003085019A (ja) | 2001-09-07 | 2003-03-20 | Toshiba Corp | ディスク管理装置、ディスク管理方法及びディスク管理プログラム |
US6976187B2 (en) * | 2001-11-08 | 2005-12-13 | Broadcom Corporation | Rebuilding redundant disk arrays using distributed hot spare space |
US7055058B2 (en) * | 2001-12-26 | 2006-05-30 | Boon Storage Technologies, Inc. | Self-healing log-structured RAID |
US6993701B2 (en) | 2001-12-28 | 2006-01-31 | Network Appliance, Inc. | Row-diagonal parity technique for enabling efficient recovery from double failures in a storage array |
US7073115B2 (en) | 2001-12-28 | 2006-07-04 | Network Appliance, Inc. | Correcting multiple block data loss in a storage array using a combination of a single diagonal parity group and multiple row parity groups |
US7080278B1 (en) | 2002-03-08 | 2006-07-18 | Network Appliance, Inc. | Technique for correcting multiple storage device failures in a storage array |
US7103796B1 (en) * | 2002-09-03 | 2006-09-05 | Veritas Operating Corporation | Parallel data change tracking for maintaining mirrored data consistency |
US6952794B2 (en) * | 2002-10-10 | 2005-10-04 | Ching-Hung Lu | Method, system and apparatus for scanning newly added disk drives and automatically updating RAID configuration and rebuilding RAID data |
CN1253791C (zh) * | 2002-11-22 | 2006-04-26 | 华为技术有限公司 | 5级独立冗余磁盘阵列中多盘失败情况下的读写操作方法 |
JP3676793B2 (ja) | 2004-01-26 | 2005-07-27 | 富士通株式会社 | ディスクアレイ装置 |
US7475211B2 (en) * | 2004-02-13 | 2009-01-06 | International Business Machines Corporation | Method and system for restoring data |
US7249277B2 (en) * | 2004-03-11 | 2007-07-24 | Hitachi, Ltd. | Disk array including plural exchangeable magnetic disk unit |
US20050210318A1 (en) * | 2004-03-22 | 2005-09-22 | Dell Products L.P. | System and method for drive recovery following a drive failure |
JP2007087039A (ja) * | 2005-09-21 | 2007-04-05 | Hitachi Ltd | ディスクアレイシステム及びその制御方法 |
-
2005
- 2005-03-15 JP JP2005073669A patent/JP4754852B2/ja not_active Expired - Fee Related
- 2005-07-11 EP EP05254323A patent/EP1703397A3/en not_active Withdrawn
- 2005-07-18 CN CNB2005100854173A patent/CN100392611C/zh not_active Expired - Fee Related
- 2005-07-20 KR KR1020050065647A patent/KR100701563B1/ko active IP Right Grant
- 2005-09-29 US US11/237,657 patent/US7809979B2/en not_active Expired - Fee Related
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101661413B (zh) * | 2008-08-25 | 2012-07-18 | 株式会社日立制作所 | 计算机系统、存储系统以及结构管理方法 |
CN101482733B (zh) * | 2009-02-04 | 2011-10-19 | 浙江中控技术股份有限公司 | 一种数据冗余的方法及装置 |
CN102164165A (zh) * | 2011-02-18 | 2011-08-24 | 杭州宏杉科技有限公司 | 一种网络存储系统的管理方法及装置 |
CN102164165B (zh) * | 2011-02-18 | 2013-06-12 | 杭州宏杉科技有限公司 | 一种网络存储系统的管理方法及装置 |
CN102684782A (zh) * | 2012-05-08 | 2012-09-19 | 成都瑞凌科信息技术有限公司 | Epon系统的保护装置和数据冗余备份方法及监控方法 |
CN103902232B (zh) * | 2012-12-28 | 2018-11-09 | 联想(北京)有限公司 | 一种写入的数据的方法及装置 |
CN103902232A (zh) * | 2012-12-28 | 2014-07-02 | 联想(北京)有限公司 | 一种写入的数据的方法及装置 |
CN103970481A (zh) * | 2013-01-29 | 2014-08-06 | 国际商业机器公司 | 重建存储器阵列的方法和装置 |
CN103970481B (zh) * | 2013-01-29 | 2017-03-01 | 国际商业机器公司 | 重建存储器阵列的方法和装置 |
CN113407122A (zh) * | 2016-12-21 | 2021-09-17 | 伊姆西Ip控股有限责任公司 | Raid重建的方法和设备 |
CN113407122B (zh) * | 2016-12-21 | 2023-08-25 | 伊姆西Ip控股有限责任公司 | Raid重建的方法和设备 |
CN110058965A (zh) * | 2018-01-18 | 2019-07-26 | 伊姆西Ip控股有限责任公司 | 存储系统中的数据重建方法及设备 |
CN110058965B (zh) * | 2018-01-18 | 2023-07-28 | 伊姆西Ip控股有限责任公司 | 存储系统中的数据重建方法及设备 |
CN111381997A (zh) * | 2018-12-28 | 2020-07-07 | 杭州宏杉科技股份有限公司 | 一种raid重建方法及装置 |
CN111381997B (zh) * | 2018-12-28 | 2024-03-01 | 杭州宏杉科技股份有限公司 | 一种raid重建方法及装置 |
CN110389724A (zh) * | 2019-07-23 | 2019-10-29 | 深圳忆联信息系统有限公司 | 基于固态硬盘的parity page识别方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN100392611C (zh) | 2008-06-04 |
JP2006259894A (ja) | 2006-09-28 |
EP1703397A2 (en) | 2006-09-20 |
EP1703397A3 (en) | 2008-07-02 |
US20060212748A1 (en) | 2006-09-21 |
US7809979B2 (en) | 2010-10-05 |
JP4754852B2 (ja) | 2011-08-24 |
KR100701563B1 (ko) | 2007-03-30 |
KR20060101156A (ko) | 2006-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1834932A (zh) | 存储控制装置和方法 | |
CN1315057C (zh) | 重映射闪速存储器的方法 | |
CN1648867A (zh) | 数据处理系统 | |
CN1254819C (zh) | 光盘缺陷的管理方法和光盘装置 | |
CN1690973A (zh) | 远程复制方法及远程复制系统 | |
CN1722107A (zh) | 计算机系统以及存储装置系统的迁移方法 | |
CN1285036C (zh) | 数据处理系统和远程复制方法 | |
CN100347656C (zh) | 储存虚拟化控制器间动态逻辑媒体单元重新指定方法 | |
CN1591345A (zh) | 存储系统 | |
CN101078999A (zh) | 一种实现数据备份和恢复的方法及系统 | |
CN101060391A (zh) | 主备服务器切换方法及系统及主用服务器、备用服务器 | |
CN1629815A (zh) | 具有多数个存储系统的数据处理系统 | |
CN1525337A (zh) | 包括存储系统的数据处理系统 | |
CN1265274C (zh) | 存储设备控制装置和存储设备控制装置的控制方法 | |
CN1596401A (zh) | 非易失性存储器装置的控制方法 | |
CN1752947A (zh) | 存储装置、存储控制方法,以及计算机产品 | |
CN101046771A (zh) | 使用闪存的存储系统及其平均读写方法和平均读写程序 | |
CN1159644C (zh) | 盘式存储装置和数据预读方法 | |
CN1848070A (zh) | 数据存储设备、重构控制设备、重构控制方法与存储介质 | |
CN1864206A (zh) | 多层信息记录媒介,信息记录设备,和记录方法 | |
CN101065725A (zh) | 命令供给装置 | |
CN1920952A (zh) | 信息记录装置、信息记录方法及计算机程序 | |
CN1426583A (zh) | 数据在线的方法和装置 | |
CN1904859A (zh) | 复合型记录装置、数据写入方法和数据写入程序 | |
CN1842776A (zh) | 信息记录读出装置 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080604 Termination date: 20210718 |