CN103513942B - 独立冗余磁盘阵列的重构方法及装置 - Google Patents
独立冗余磁盘阵列的重构方法及装置 Download PDFInfo
- Publication number
- CN103513942B CN103513942B CN201310496672.1A CN201310496672A CN103513942B CN 103513942 B CN103513942 B CN 103513942B CN 201310496672 A CN201310496672 A CN 201310496672A CN 103513942 B CN103513942 B CN 103513942B
- Authority
- CN
- China
- Prior art keywords
- data
- raid
- write
- degrading
- failed disk
- 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.)
- Active
Links
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/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/1088—Reconstruction on already foreseen single or plurality of spare disks
-
- 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/1084—Degraded mode, e.g. caused by single or multiple storage removals or disk failures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明实施例提供一种独立冗余磁盘阵列的重构方法及装置,该方法,包括:执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘的拷贝处理;将降级数据写入所述备用磁盘,所述降级数据包括在所述RAID降级之后需要写入所述故障磁盘的数据。可以有效提升数据获取速率,提升数据重构效率,在数据重构过程中避免对除故障磁盘以外的其它成员磁盘的全盘数据读区,可以减少其它成员磁盘的I/O压力,减少对正常业务I/O的影响,进而减小RAID组系统的开销。
Description
技术领域
本发明实施例涉及通信技术,尤其涉及一种独立冗余磁盘阵列的重构方法及装置。
背景技术
随着计算机技术以及网络技术的高速发展,计算机自带的存储器逐渐难以满足存取速度快、存储容量大和成本低等诸多要求,于是发展出相对独立的存储系统。存储系统通常由存储服务器等存储设备组成,具有自己的接口和协议,通过同轴电缆、网线、光纤等方式与计算机主机连接,作为数据的存储中心为计算机主机提供存储服务。
独立磁盘冗余阵列(RAID,RedundantArrayofIndependentDisks)是把相同的数据存储在多个硬盘的不同的地方的方法,图1为RAID5的结构示意图,如图1所示,4个磁盘组成一个RAID5,将所有磁盘按照同等的逻辑区块地址(LogicalBlockAddress,简称LBA)长度划分条带,该LBA长度称为分条深度;该磁盘组中每个磁盘取同一位置的条带组合在一起称为该RAID组的一个分条,如图1中D0、D1、D2、P1组合成一个RAID分条,将RAID组分条中的一个条带作为校验区,其它条带作为数据区,如图1中D0、D1、D2为数据区,P1为校验区,将上层应用下发的数据存储在数据区,将一个分条中所有作为数据区的条带间做异或(XOR)运算,运算数据作为该分条校验区数据记录,即:P1=D0xorD1xorD2。当四块磁盘中任意一块磁盘出现故障,可以通过将其它磁盘的数据读出来,全部进行XOR运算得到故障磁盘中的数据,例如,当第一块盘故障时,其上面的数据D0=D1xorD2xorP1;D3=D5xorD4xorP2,该过程称为RAID重构,再将重构出的数据写入另外一块空磁盘上,这样就保障了数据不丢失。
然而,随着存储技术的发展,单个磁盘的容量越来越大,但单盘性能提升较少,导致重构时间越来越长,在重构中RAID组中其它成员磁盘既要继续承担正常业务输入/输出(Input/Output,简称I/O),又要承担额外的重构I/O,使磁盘压力较大,导致磁盘故障率较高。
发明内容
本发明实施例提供一种独立冗余磁盘阵列的重构方法及装置,用以提升RAID的重构效率,减轻RAID组中除故障磁盘以外的成员盘的IO压力,减少对正常业务IO的影响。
本发明第一方面,提供一种独立冗余磁盘阵列的重构方法,包括:
执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘的拷贝处理;
将降级数据写入所述备用磁盘,所述降级数据包括在所述RAID降级之后、所述拷贝处理完成之前,需要写入所述故障磁盘的数据。
在第一方面的第一种可能的实现方式中,所述执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘上的拷贝处理之前,还包括:
对所述故障磁盘停止供电之后,再重新供电。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述将降级数据写入所述备用磁盘之前,还包括:
以所述故障磁盘的条带为单位,按照所述降级数据写入的时间顺序将所述降级数据记录在所述RAID中控制器的内存中;
所述降级数据写入所述备用磁盘,包括:
将所述内存中的降级数据按照所述条带的编号和所述降级数据写入的时间顺序写入所述备用磁盘。
根据第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述以所述故障磁盘的条带为单位,按照所述降级数据写入的时间顺序将所述降级数据记录在所述RAID中控制器的内存中,包括:
若确定第一数据需要写入所述故障磁盘中的第一条带,则判断所述内存中是否记录有所述第一条带的降级数据;
若是,则根据所述第一数据更新所述第一条带的降级数据;
若否,则判断所述拷贝处理是否完成;
若是,则将所述第一数据写入所述备用磁盘;
若否,则在所述内存中记录所述第一条带的编号和所述第一数据。
结合第一方面或第一方面的第一种至第三种可能的实现方式中任意一种,在第一方面的第四种可能的实现方式中,在执行所述拷贝处理的过程中,若确定在所述拷贝处理过程中所述故障磁盘中的第二条带中存在坏道,则读取所述RAID中除所述故障磁盘之外的成员磁盘中与所述第二条带组成分条的条带中的第二数据;
在所述第二数据之间执行异或运算,得到第三数据;
将所述第三数据写入所述备用磁盘。
本发明第二方面,提供一种独立冗余磁盘阵列的重构装置,包括:
处理模块,用于执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘的拷贝处理;
写入模块,用于将降级数据写入所述备用磁盘,所述降级数据包括在所述RAID降级之后、所述拷贝处理完成之前,需要写入所述故障磁盘的数据。
在第二方面的第一种可能的实现方式中,所述处理模块,还用于在所述执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘上的拷贝处理之前,对所述故障磁盘停止供电之后,再重新供电。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述处理模块,还用于在所述将降级数据写入所述备用磁盘之前,以所述故障磁盘的条带为单位,按照所述降级数据写入的时间顺序将所述降级数据记录在所述RAID中控制器的内存中;
所述写入模块,还用于:
将所述内存中的降级数据按照所述条带的编号和所述降级数据写入的时间顺序写入所述备用磁盘。
根据第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述处理模块,还用于:
若确定第一数据需要写入所述故障磁盘中的第一条带,则判断所述内存中是否记录有所述第一条带的降级数据;
若是,则根据所述第一数据更新所述第一条带的降级数据;
若否,则判断所述拷贝处理是否完成;
若是,则将所述第一数据写入所述备用磁盘;
若否,则在所述内存中记录所述第一条带的编号和所述第一数据。
结合第二方面或第二方面的第一种至第三种可能的实现方式中任意一种,在第二方面的第四种可能的实现方式中,所述处理模块,还用于在执行所述拷贝处理的过程中,若确定在所述拷贝处理过程中所述故障磁盘中的第二条带中存在坏道,则读取所述RAID中除所述故障磁盘之外的成员磁盘中与所述第二条带组成分条的条带中的第二数据;
在所述第二数据之间执行异或运算,得到第三数据;
将所述第三数据写入所述备用磁盘。
本发明实施例提供的独立冗余磁盘阵列的重构方法及装置,通过执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理,再将降级数据写入备用磁盘,降级数据包括在RAID降级之后需要写入故障磁盘的数据,可以有效提升数据获取速率,提升数据重构效率,在数据重构过程中避免对除故障磁盘以外的其它成员磁盘的全盘数据读区,可以减少其它成员磁盘的I/O压力,减少对正常业务I/O的影响,进而减小RAID组系统的开销,并且可以避免在重构中其它成员磁盘上有坏道导致数据无法重构出来,保障重构数据的有效性和完整性,减少对业务应用的影响。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为RAID5的结构示意图;
图2为本发明提供的独立冗余磁盘阵列的重构方法实施例一的流程图;
图3为本发明提供的独立冗余磁盘阵列的重构方法实施例二的流程图;
图4A为本发明提供的独立冗余磁盘阵列的重构方法实施例二中记录的降级数据的示意图;
图4B为本发明提供的独立冗余磁盘阵列的重构方法实施例二中记录降级数据的流程图;
图5为本发明提供的独立冗余磁盘阵列的重构方法实施例三的流程图;
图6为本发明提供的独立冗余磁盘阵列的重构装置实施例一的结构示意图;
图7为本发明提供的独立冗余磁盘阵列的重构装置实施例二的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图2为本发明提供的独立冗余磁盘阵列的重构方法实施例一的流程图,如图2所示,本实施例的独立冗余磁盘阵列的重构方法包括:
S101、执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理。
本实施例的执行主体可以是独立冗余磁盘阵列的重构装置,独立冗余磁盘阵列的重构装置可以包含在RAID组的控制器中。
具体来说,本实施例适用的场景可以是RAID组中的磁盘发生故障,对故障盘中的数据进行重构。
在本发明的一个实施例中,S101之前还可以包括:
对故障磁盘停止供电之后,再重新供电。
具体来说,从目前磁盘故障情况来看,对于故障磁盘进行重新上下电之后,故障磁盘都是可以再次使用的,只是该磁盘的健康状态严重下降,再度出现故障的概率极高,本实施例在对故障磁盘进行重新上下电之后,执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理。
S102、将降级数据写入备用磁盘,降级数据包括在RAID降级之后、拷贝处理完成之前,需要写入故障磁盘的数据。
具体来说,本实施例中独立冗余磁盘阵列的重构装置在RAID组中的磁盘出现故障之后,记录RAID组为降级状态,在RAID组降级后,可以按照RAID组正常时一样接收数据,将RAID降级之后、拷贝处理完成之前,需要写入到故障磁盘的新数据写入备用磁盘,使得备用磁盘中的数据恢复到最新状态。
举例来说,本实施例的独立冗余磁盘阵列的重构方法除了可以应用于RAID5之外,还可以应用到RAID6、RAID50等其它级别的RAID。
本实施例在RAID组中的磁盘出现故障后,通过执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理,再将降级数据写入备用磁盘,降级数据包括在RAID降级之后需要写入故障磁盘的数据,实现对故障磁盘中的数据的重构,而现有技术通过将除故障磁盘以外的其它磁盘的数据读出来,全部进行XOR运算得到故障磁盘中的数据,本实施例通过执行故障磁盘到备用磁盘的数据拷贝处理,可以有效提升数据获取速率,提升数据重构效率,在数据重构过程中避免对除故障磁盘以外的其它成员磁盘的全盘数据读区,可以减少其它成员磁盘的I/O压力,减少对正常业务I/O的影响,进而减小RAID组系统的开销,并且,现有技术在数据重构中,若遇到除故障磁盘以外的其它成员磁盘出现坏道而无法重构出有效数据而只能标记磁盘坏道,即使RAID组最终重构完成,但其中被标记磁盘坏道的数据是无效的,若标记磁盘坏道标记区域为文件系统关键区域数据时,操作系统报文件系统损坏,则业务中断,本实施例通过直接拷贝故障磁盘上的数据,避免在重构中其它成员磁盘上有坏道导致数据无法重构出来,保障重构数据的有效性和完整性,减少对业务应用的影响。
本实施例的独立冗余磁盘阵列的重构方法,通过执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理,再将降级数据写入备用磁盘,降级数据包括在RAID降级之后、拷贝处理完成之前,需要写入故障磁盘的数据,可以有效提升数据获取速率,提升数据重构效率,在数据重构过程中避免对除故障磁盘以外的其它成员磁盘的全盘数据读区,可以减少其它成员磁盘的I/O压力,减少对正常业务I/O的影响,进而减小RAID组系统的开销,并且可以避免在重构中其它成员磁盘上有坏道导致数据无法重构出来,保障重构数据的有效性和完整性,减少对业务应用的影响。
图3为本发明提供的独立冗余磁盘阵列的重构方法实施例二的流程图,如图3所示,本实施例的独立冗余磁盘阵列的重构方法将降级数据记录到RAID中控制器的内存中,可以包括:
S201、对故障磁盘停止供电之后,再重新供电。
S202、执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理。
S203、以故障磁盘的条带为单位,按照降级数据写入的时间顺序将降级数据记录在RAID中控制器的内存中。
具体来说,由于在数据重构过程中,RAID组中单个磁盘上的数据变化量有限,所以可以将RAID组出现故障之后、拷贝处理完成之前,需要写入故障磁盘的数据以位图形式记录在RAID中控制器的内存中,并在拷贝处理完成后将内存中记录的降级数据刷写入备用磁盘。
可以理解的是,将降级数据记录在RAID中控制器的内存中,是一种可能的实现方式,其它可能的降级数据记录位置,例如专用存储器也可以用于实现本实施例,本发明对此并不限制。
图4A为本发明提供的独立冗余磁盘阵列的重构方法实施例二中记录的降级数据的示意图,如图4A所示,以故障磁盘的条带编号为单位,记录需要写入故障磁盘的数据的物理起始地址(P)、数据长度(LEN),对于同一个条带上的多次数据修改以链表的形式按照时间顺序记录。
图4B为本发明提供的独立冗余磁盘阵列的重构方法实施例二中记录降级数据的流程图,如图4B所示,本实施例记录降级数据的过程可以包括:
S301、判断写入RAID组中的第一数据是否需要写入故障磁盘中的第一条带,若是,则执行S302,否则,执行S307。
S302、判断内存中是否记录有第一条带的降级数据,若是,则执行S303,否则,执行S304。
S303、根据第一数据更新第一条带的降级数据。
S304、判断拷贝处理是否完成,若是,则执行S305,否则,执行S306。
S305、将第一数据写入备用磁盘。
S306、在内存中记录第一条带的编号和第一数据。
S307、将第一数据写入除故障磁盘以外的成员磁盘。
具体来说,若内存中记录有第一条带的降级数据,则按照数据写入的时间顺序,在第一条带的降级数据后记录第一数据,否则,则判断拷贝处理是否完成,若是,则直接将第一数据写入备用磁盘,而不需要再记录在内存中;若否,则表明内存中没有记录有需要写入第一条带的数据,在内存中记录第一条带的编号和第一数据。
S204、将内存中的降级数据按照条带的编号和降级数据写入的时间顺序写入备用磁盘。
具体来说,由于降级数据记录至内存中的时间顺序不同,所以需要将内存中的降级数据按照条带的编号和降级数据写入的时间顺序写入备用磁盘。
本实施例的独立冗余磁盘阵列的重构方法,通过执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理,以故障磁盘的条带为单位,按照降级数据写入的时间顺序将降级数据记录在RAID中控制器的内存中,再将内存中的降级数据按照条带的编号和降级数据写入的时间顺序写入备用磁盘,可以有效提升数据获取速率,提升数据重构效率,在数据重构过程中避免对除故障磁盘以外的其它成员磁盘的全盘数据读区,可以减少其它成员磁盘的I/O压力,减少对正常业务I/O的影响,进而减小RAID组系统的开销,并且可以避免在重构中其它成员磁盘上有坏道导致数据无法重构出来,保障重构数据的有效性和完整性,减少对业务应用的影响。
图5为本发明提供的独立冗余磁盘阵列的重构方法实施例三的流程图,如图5所示,本实施例的独立冗余磁盘阵列的重构方法对重构过程中故障磁盘中的条带出现故障的场景进行说明,包括:
S401、对故障磁盘停止供电之后,再重新供电。
S402、执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理。
S403、判断在执行拷贝处理的过程中,故障磁盘中的第二条带中是否存在坏道,若是,则执行S404,否则,执行S405。
S404、读取RAID中除故障磁盘之外的成员磁盘中与第二条带组成分条的条带中的第二数据,在第二数据之间执行异或运算,得到第三数据,将第三数据写入备用磁盘。
S405、拷贝处理完成。
具体来说,在拷贝处理完成之后,可以将RAID组的状态记录为重构即将完成状态。
S406、将记录的降级数据刷写入备用磁盘。
具体来说,将记录的降级数据刷写入备用磁盘之后,可以调整RAID组状态为重构完成状态,并上报告警提示客户更换故障磁盘。
本实施例的独立冗余磁盘阵列的重构方法,通过在执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理中,若确定在拷贝处理过程中故障磁盘中的第二条带中存在坏道,则读取RAID中除故障磁盘之外的成员磁盘中与第二条带组成分条的条带中的第二数据;在第二数据之间执行异或运算,得到第三数据;将第三数据写入备用磁盘,可以有效提升数据获取速率,提升数据重构效率,在数据重构过程中避免对除故障磁盘以外的其它成员磁盘的全盘数据读区,可以减少其它成员磁盘的I/O压力,减少对正常业务I/O的影响,进而减小RAID组系统的开销,并且可以避免在重构中其它成员磁盘上有坏道导致数据无法重构出来,保障重构数据的有效性和完整性,减少对业务应用的影响。
图6为本发明提供的独立冗余磁盘阵列的重构装置实施例一的结构示意图,如图6所示,本实施例的独立冗余磁盘阵列的重构装置,可以包括:处理模块61和写入模块62,其中,处理模块61用于执行RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理;写入模块62用于将降级数据写入备用磁盘,降级数据包括在RAID降级之后、拷贝处理完成之前,需要写入故障磁盘的数据。
在本发明的一个实施例中,处理模块61还用于在执行RAID中的故障磁盘上的数据到RAID中的备用磁盘上的拷贝处理之前,对故障磁盘停止供电之后,再重新供电。
本实施例的装置,可以用于执行图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在本发明的一个实施例中,处理模块61还用于在将降级数据写入备用磁盘之前,以故障磁盘的条带为单位,按照降级数据写入的时间顺序将降级数据记录在RAID中控制器的内存中;
写入模块62还用于:
将内存中的降级数据按照条带的编号和降级数据写入的时间顺序写入备用磁盘。
在本发明的一个实施例中,处理模块61还用于:
若确定第一数据需要写入故障磁盘中的第一条带,则判断内存中是否记录有第一条带的降级数据;
若是,则根据第一数据更新第一条带的降级数据;
若否,则判断拷贝处理是否完成;
若是,则将第一数据写入备用磁盘;
若否,则在内存中记录第一条带的编号和第一数据。
本实施例的装置,可以用于执行图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在本发明的一个实施例中,处理模块61还用于在执行拷贝处理的过程中,若确定在拷贝处理过程中故障磁盘中的第二条带中存在坏道,则读取RAID中除故障磁盘之外的成员磁盘中与第二条带组成分条的条带中的第二数据;
在第二数据之间执行异或运算,得到第三数据;
将第三数据写入备用磁盘。
本实施例的装置,可以用于执行图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本发明提供的独立冗余磁盘阵列的重构装置实施例二的结构示意图,如图7所示,本实施例的独立冗余磁盘阵列的重构装置,可以包括:至少一个总线71、与总线71相连的至少一个处理器72以及与总线71相连的至少一个存储器73,其中,处理器72通过总线71,调用存储器73中存储的代码,以用于:
执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到RAID中的备用磁盘的拷贝处理;
将降级数据写入备用磁盘,降级数据包括在RAID降级之后、拷贝处理完成之前,需要写入故障磁盘的数据。
本实施例的装置,可以用于执行图2、图3或图5所示方法实施例的技术方案中的任意一种,其实现原理和技术效果类似,此处不再赘述。
需要说明的是,上述各实施例对应的结构示意图仅为一种示意,各部分或模块的连接关系不限于图中示出的形式,可以以实际应用中的情况为准。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(RandomAccessMemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种独立冗余磁盘阵列的重构方法,其特征在于,包括:
执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘的拷贝处理;
将降级数据写入所述备用磁盘,所述降级数据包括在所述RAID降级之后、所述拷贝处理完成之前,需要写入所述故障磁盘的数据;
所述将降级数据写入所述备用磁盘之前,还包括:
以所述故障磁盘的条带为单位,按照所述降级数据写入的时间顺序将所述降级数据记录在所述RAID中控制器的内存中;
所述降级数据写入所述备用磁盘,包括:
将所述内存中的降级数据按照所述条带的编号和所述降级数据写入的时间顺序写入所述备用磁盘。
2.根据权利要求1所述的方法,其特征在于,所述执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘上的拷贝处理之前,还包括:
对所述故障磁盘停止供电之后,再重新供电。
3.根据权利要求1所述的方法,其特征在于,所述以所述故障磁盘的条带为单位,按照所述降级数据写入的时间顺序将所述降级数据记录在所述RAID中控制器的内存中,包括:
若确定第一数据需要写入所述故障磁盘中的第一条带,则判断所述内存中是否记录有所述第一条带的降级数据;
若是,则根据所述第一数据更新所述第一条带的降级数据;
若否,则判断所述拷贝处理是否完成;
若是,则将所述第一数据写入所述备用磁盘;
若否,则在所述内存中记录所述第一条带的编号和所述第一数据。
4.根据权利要求1-3任一项所述的方法,其特征在于,在执行所述拷贝处理的过程中,若确定在所述拷贝处理过程中所述故障磁盘中的第二条带中存在坏道,则读取所述RAID中除所述故障磁盘之外的成员磁盘中与所述第二条带组成分条的条带中的第二数据;
在所述第二数据之间执行异或运算,得到第三数据;
将所述第三数据写入所述备用磁盘。
5.一种独立冗余磁盘阵列的重构装置,其特征在于,包括:
处理模块,用于执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘的拷贝处理;
写入模块,用于将降级数据写入所述备用磁盘,所述降级数据包括在所述RAID降级之后、所述拷贝处理完成之前,需要写入所述故障磁盘的数据;
所述处理模块,还用于在所述将降级数据写入所述备用磁盘之前,以所述故障磁盘的条带为单位,按照所述降级数据写入的时间顺序将所述降级数据记录在所述RAID中控制器的内存中;
所述写入模块,还用于:将所述内存中的降级数据按照所述条带的编号和所述降级数据写入的时间顺序写入所述备用磁盘。
6.根据权利要求5所述的装置,其特征在于,所述处理模块,还用于在所述执行独立冗余磁盘阵列RAID中的故障磁盘上的数据到所述RAID中的备用磁盘上的拷贝处理之前,对所述故障磁盘停止供电之后,再重新供电。
7.根据权利要求5所述的装置,其特征在于,所述处理模块,还用于:
若确定第一数据需要写入所述故障磁盘中的第一条带,则判断所述内存中是否记录有所述第一条带的降级数据;
若是,则根据所述第一数据更新所述第一条带的降级数据;
若否,则判断所述拷贝处理是否完成;
若是,则将所述第一数据写入所述备用磁盘;
若否,则在所述内存中记录所述第一条带的编号和所述第一数据。
8.根据权利要求5-7任一项所述的装置,其特征在于,所述处理模块,还用于在执行所述拷贝处理的过程中,若确定在所述拷贝处理过程中所述故障磁盘中的第二条带中存在坏道,则读取所述RAID中除所述故障磁盘之外的成员磁盘中与所述第二条带组成分条的条带中的第二数据;
在所述第二数据之间执行异或运算,得到第三数据;
将所述第三数据写入所述备用磁盘。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310496672.1A CN103513942B (zh) | 2013-10-21 | 2013-10-21 | 独立冗余磁盘阵列的重构方法及装置 |
PCT/CN2014/080499 WO2015058542A1 (zh) | 2013-10-21 | 2014-06-23 | 独立冗余磁盘阵列的重构方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310496672.1A CN103513942B (zh) | 2013-10-21 | 2013-10-21 | 独立冗余磁盘阵列的重构方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103513942A CN103513942A (zh) | 2014-01-15 |
CN103513942B true CN103513942B (zh) | 2016-06-29 |
Family
ID=49896742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310496672.1A Active CN103513942B (zh) | 2013-10-21 | 2013-10-21 | 独立冗余磁盘阵列的重构方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103513942B (zh) |
WO (1) | WO2015058542A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103513942B (zh) * | 2013-10-21 | 2016-06-29 | 华为技术有限公司 | 独立冗余磁盘阵列的重构方法及装置 |
CN104461791B (zh) * | 2014-11-28 | 2017-02-01 | 华为技术有限公司 | 一种信息处理方法及处理装置 |
US10001944B2 (en) | 2015-08-28 | 2018-06-19 | Qualcomm Incorporated | Systems and methods for data organization in storage systems using large erasure codes |
US20170063399A1 (en) * | 2015-08-28 | 2017-03-02 | Qualcomm Incorporated | Systems and methods for repair redundancy control for large erasure coded data storage |
CN105117172B (zh) * | 2015-08-31 | 2019-04-02 | 深圳神州数码云科数据技术有限公司 | 一种磁盘阵列历史掉盘记录的保存方法 |
US10007587B2 (en) * | 2015-09-18 | 2018-06-26 | Qualcomm Incorporated | Systems and methods for pre-generation and pre-storage of repair fragments in storage systems |
CN109213428B (zh) * | 2017-06-30 | 2021-05-28 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法和设备 |
CN111858189A (zh) * | 2019-04-29 | 2020-10-30 | 伊姆西Ip控股有限责任公司 | 对存储盘离线的处理 |
CN111007992B (zh) * | 2020-03-04 | 2020-08-04 | 广东电网有限责任公司佛山供电局 | 一种磁盘数据存储表示方法、系统、存储介质 |
CN112181298B (zh) * | 2020-09-25 | 2022-05-17 | 杭州宏杉科技股份有限公司 | 阵列访问方法、装置、存储设备及机器可读存储介质 |
CN115344205A (zh) * | 2022-08-15 | 2022-11-15 | 超聚变数字技术有限公司 | 一种针对磁盘固件升级过程中的读写数据方法及计算设备 |
CN117472292B (zh) * | 2023-12-27 | 2024-03-12 | 苏州元脑智能科技有限公司 | 独立磁盘冗余阵列的数据重构方法及存储系统、控制器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521058A (zh) * | 2011-12-01 | 2012-06-27 | 北京威视数据系统有限公司 | Raid组磁盘数据预迁移方法 |
CN102981778A (zh) * | 2012-11-15 | 2013-03-20 | 浙江宇视科技有限公司 | 一种raid阵列重建方法及装置 |
CN103019894A (zh) * | 2012-12-25 | 2013-04-03 | 创新科存储技术(深圳)有限公司 | 一种独立冗余磁盘阵列的重建方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101609420A (zh) * | 2009-07-17 | 2009-12-23 | 杭州华三通信技术有限公司 | 实现磁盘冗余阵列重建的方法和磁盘冗余阵列及其控制器 |
US8812901B2 (en) * | 2011-09-23 | 2014-08-19 | Lsi Corporation | Methods and apparatus for marking writes on a write-protected failed device to avoid reading stale data in a RAID storage system |
CN103513942B (zh) * | 2013-10-21 | 2016-06-29 | 华为技术有限公司 | 独立冗余磁盘阵列的重构方法及装置 |
-
2013
- 2013-10-21 CN CN201310496672.1A patent/CN103513942B/zh active Active
-
2014
- 2014-06-23 WO PCT/CN2014/080499 patent/WO2015058542A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521058A (zh) * | 2011-12-01 | 2012-06-27 | 北京威视数据系统有限公司 | Raid组磁盘数据预迁移方法 |
CN102981778A (zh) * | 2012-11-15 | 2013-03-20 | 浙江宇视科技有限公司 | 一种raid阵列重建方法及装置 |
CN103019894A (zh) * | 2012-12-25 | 2013-04-03 | 创新科存储技术(深圳)有限公司 | 一种独立冗余磁盘阵列的重建方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2015058542A1 (zh) | 2015-04-30 |
CN103513942A (zh) | 2014-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103513942B (zh) | 独立冗余磁盘阵列的重构方法及装置 | |
JP4754852B2 (ja) | ストレージ制御装置および方法 | |
CN109213618B (zh) | 用于管理存储系统的方法、设备和计算机程序产品 | |
US8392752B2 (en) | Selective recovery and aggregation technique for two storage apparatuses of a raid | |
US8843782B2 (en) | Method and apparatus for reconstructing redundant array of inexpensive disks, and system | |
CN104035830A (zh) | 一种数据恢复方法和装置 | |
CN113407122A (zh) | Raid重建的方法和设备 | |
US20070088990A1 (en) | System and method for reduction of rebuild time in raid systems through implementation of striped hot spare drives | |
CN101567211A (zh) | 一种提高磁盘可用性的方法和磁盘阵列控制器 | |
CN103793182A (zh) | 可扩展存储保护 | |
CN102902602B (zh) | 数据热备份的方法、装置及存储系统 | |
CN103761058A (zh) | Raid1和raid4混合结构网络存储系统及方法 | |
CN103534688A (zh) | 数据恢复方法、存储设备和存储系统 | |
CN103593260B (zh) | 一种元数据的保护方法和装置 | |
CN103019894B (zh) | 一种独立冗余磁盘阵列的重建方法 | |
CN103092765B (zh) | 固态存储系统、装置及数据写入方法 | |
CN104503781A (zh) | 硬盘的固件升级方法和存储系统 | |
CN102135862B (zh) | 一种磁盘存储系统及其数据访问方法 | |
CN109032513B (zh) | 基于ssd和hdd的raid架构及其备份、重建方法 | |
CN103678025B (zh) | 一种磁盘阵列中的磁盘故障处理方法 | |
CN103019623A (zh) | 存储盘处理方法及装置 | |
CN104572374B (zh) | 存储的处理方法、装置和存储设备 | |
US10860446B2 (en) | Failed storage device rebuild using dynamically selected locations in overprovisioned space | |
CN102314322A (zh) | 一种基于raid阵列的数据处理方法和设备 | |
EP2889751B1 (en) | Method and apparatus for determining redundant array of independent disks |
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 |