CN104094236A - 防止数据丢失的***和方法 - Google Patents
防止数据丢失的***和方法 Download PDFInfo
- Publication number
- CN104094236A CN104094236A CN201380008069.2A CN201380008069A CN104094236A CN 104094236 A CN104094236 A CN 104094236A CN 201380008069 A CN201380008069 A CN 201380008069A CN 104094236 A CN104094236 A CN 104094236A
- Authority
- CN
- China
- Prior art keywords
- data
- technology
- memory device
- computer code
- series
- 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
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/1092—Rebuilding, e.g. when physically replacing a failing disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1461—Backup scheduling policy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
- G06F11/1662—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- 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/1059—Parity-single bit-RAID5, i.e. RAID 5 implementations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
提供了用于防止存储***中的数据丢失的方法和***。一种方法包括检测多个存储设备中的一个存储设备即将经历故障并确定故障类型。所述方法还包括根据所确定的故障类型选择SMART重建技术、正常重建技术、数据迁移技术或用户数据备份技术来保存该存储设备中的数据并针对该存储设备执行所选择的技术。一种***包括被配置为将数据存储在多个数据地址中的多个存储设备和被配置为执行上述方法的处理器。还提供了包括用于防止存储***中的数据丢失的计算机程序产品方法的物理计算机存储介质。一种物理计算机存储介质包括用于执行上述方法的计算机代码。
Description
技术领域
本发明一般地涉及计算***,更具体地说,涉及防止存储子***中数据丢失的方法和***。
背景技术
RAID技术广泛用于高端存储子***中。每种RAID类型都可以容忍有限数目的盘驱动器故障。例如,RAID 5阵列在任意给定时间至多可以具有一个盘驱动器故障而不会造成数据丢失。如果在重建期间另一盘驱动器发生故障,则会发生数据丢失。
特定RAID体系结构实施优先化重建算法,以便在I/O活动寻址到RAID中不受冗余保护的数据时,该I/O被排队或阻止,直到适当的RAID算法重新建立该数据的冗余。例如,如果数据受RAID 5奇偶校验冗余方案的保护并且主机或客户机对RAID阵列执行读取操作,则可以首先应用RAID 5算法,然后再为主机或客户机读取请求服务。
在RAID级别中,存在若干组件并且还存在冗余组件。在RAID 5配置中,使用奇偶校验组件,使得可以从另一盘重建数据丢失错误,该数据丢失错误被称为可以使用阈值跟踪恢复的可恢复错误。当发生其他错误(即,不可恢复错误)时,应尽快移除发生故障的盘。
当前主动移除可疑阵列组件成员的方法依赖于从RAID阵列中除去成员盘驱动器(就好像其已发生故障)以便通过奇偶校验触发RAID重建。漫长的阵列重建使阵列冗余暴露于可导致数据丢失的二次故障。此外,阵列重建还增加了遇到可引起条带(strip)数据丢失的二次故障的概率。尽管RAID提供了冗余,但是该体系结构不会以预防阵列重建的方式,在故障发生之前预测***中易于发生故障的成员或从***中移除易于发生故障的成员。
发明内容
各实施例提供了用于防止存储***中数据丢失的***。一种***包括被配置为将数据存储在多个数据地址中的多个存储设备和耦合到所述多个存储设备的处理器。所述处理器被配置为检测所述多个存储设备中的一个存储设备即将经历故障并确定故障类型。所述处理器还被配置为根据所确定的故障类型选择SMART重建技术、正常重建技术、数据迁移技术或用户数据备份技术来保存该存储设备中的数据以及针对该存储设备执行所选择的SMART重建技术、正常重建技术、数据迁移技术或用户数据备份技术。
其他实施例提供了用于防止存储***中的数据丢失的方法,所述存储***包括多个存储设备,每个存储设备均将数据存储在多个数据地址中。一种方法包括检测所述多个存储设备中的一个存储设备即将经历故障并确定故障类型。所述方法还包括根据所确定的故障类型选择SMART重建技术、正常重建技术、数据迁移技术或用户数据备份技术来保存该存储设备中的数据以及针对该存储设备执行所选择的SMART重建技术、正常重建技术、数据迁移技术或用户数据备份技术。
各种其他实施例提供了包括用于防止存储***中的数据丢失的计算机程序产品方法的物理计算机存储介质(例如,具有一条或多条线的电连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦写可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光存储设备、磁存储设备或它们的任何适当组合),所述存储***包括多个存储设备,每个存储设备均将数据存储在多个数据地址中。一种物理计算机存储介质包括用于检测所述多个存储设备中的一个存储设备即将经历故障的计算机代码以及用于确定故障类型的计算机代码。所述物理计算机存储介质还包括用于根据所确定的故障类型选择SMART重建技术、正常重建技术、数据迁移技术或用户数据备份技术来保存该存储设备中的数据的计算机代码以及用于针对该存储设备执行所选择的SMART重建技术、正常重建技术、数据迁移技术或用户数据备份技术的计算机代码。
附图说明
为了更容易理解本发明的优点,将参考附图中示出的特定实施例提供上面简要描述的本发明的更具体的说明。应该理解,这些附图仅示出本发明的典型实施例,因此并不能被视为对本发明范围的限制,将通过使用附图以额外特殊性和细节来描述和阐述本发明,这些附图是:
图1是用于防止存储子***中数据丢失的***的一个实施例的方块图;以及
图2是用于防止存储***中数据丢失的方法的一个实施例的流程图。
具体实施方式
各实施例提供了防止存储子***中数据丢失的***和方法。还提供了包括防止存储***中数据丢失的计算机程序产品方法的物理计算机存储介质(例如,具有一条或多条线的电连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦写可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光存储设备、磁存储设备或它们的任何适当组合)。
现在参考附图,图1是用于防止存储子***中数据丢失的***100的一个实施例的方块图。至少在所示实施例中,***100包括与管理节点120耦合的独立磁盘冗余阵列(RAID)存储子***110,管理节点120与网络130(例如,广域网(WAN)、局域网(LAN)、存储区域网络(SAN)、融合网络、企业内部网络、因特网和/或类似的网络)进行通信。
RAID存储子***110包括多个存储设备(例如,盘1110-111n)。盘1110-111n可以排列成任何RAID配置(例如,RAID 0、RAID 1、RAID 2、RAID 3、RAID 4、RAID 5、RAID 6、RAID 10等)。盘1110-111n中的每一个均被配置为将数据存储在盘1110-111n内的多个数据地址中。为了防止盘1110-111n内的数据丢失,***100包括管理节点120。
在一个实施例中,管理节点120包括被配置为防止盘1110-111n内的数据丢失的数据保留模块1210。管理节点120可以是任何能够执行形成数据保留模块1210的计算机代码的处理器、控制器和/或其他设备。
数据保留模块1210被配置为判定盘1110-111n中的一个或多个盘是否即将经历故障状况并确定故障状况类型。故障状况的实例包括但不限于简单错误或阈值错误(例如,介质错误、按键代码限定符(KCQ)错误以及类似的错误)、一个或多个故障盘、一个或多个故障RAID阵列以及类似的故障状况。
在一个实施例中,数据保留模块1210被配置为在数据保留模块1210确定盘1110-111n中的一个或多个盘即将经历简单错误或阈值错误时启动SMART重建技术。术语“SMART重建”适用于针对另一RAID体系结构的组件使用一个镜像RAID对。
例如,3+P RAID 5阵列包括组件D1、D2、D3和P。如果该阵列中的组件D2用作SMART重建的源,则建立基于D2的镜像(RAID 1)阵列并使用RAID镜像完成D2的一致镜像。在此,RAID 1镜像组件可被称为D2s和D2t,其中D2s是RAID 5阵列的组件2,而D2t是RAID 1镜像的目标。当重建时,可以从D1、D3、P重新构建或从D2s读取写入D2t的数据。
继续该实例,组件D2可以被选作SMART重建的源,建立短暂的RAID1镜像,并且当D2t变得与D2s一致时,可以在逻辑上从RAID 5阵列移除D2s。在此,D2t变为RAID 5阵列的组件2。
在一个实施例中,数据保留模块1210被配置为检测一个特定数据地址和/或一系列地址是否面临更大的丢失风险并按照优先顺序排列SMART重建。也就是说,数据保留模块1210被配置为首先针对该数据地址或一系列地址执行SMART重建,然后针对未被确定为面临数据丢失风险的其他地址执行SMART重建。
例如,可从外部恢复或不可从外部恢复的组件D3在与RAID 5阵列LBA范围Xa-Xb相关的LBA区域Ma-Mb中出现故障。另一可从外部恢复或不可从外部恢复的组件D2在与RAID 5阵列LBA范围Ya-Yb相关的LBA区域Na-Nb中出现故障。同时针对组件D2和D3启动SMART重建。RAID 5和RAID 1拓扑为D1、(D2s、D2t)、(D3s、D3t)以及P。
针对RAID LBA Xa-Xb以及针对与组件D2s Na-Nb相关的RAIDLBA触发或仿真客户机/主机“读取”。类似地,针对与组件D3s Ma-Mb相关的RAID LBA Ya-Yb触发或仿真“读取”。RAID算法通过从D2s读取或通过使用RAID 5从D1、D3s和P重新构建来对D2t执行操作以在D2t上重新构建LBA Xa-Xb。RAID算法通过从D3s读取或通过从D1、D2s和P重新构建来对D3t执行操作以在D3t上重新构建LBA Ma-Mb。读取操作的结果是为面临风险的阵列LBA范围Xa-Xb和Ya-Yb在重建周期中较早建立RAID***中的冗余。
在D2t和D3t上的SMART重建正常地继续,直到为该对建立RAID 1冗余。此外,D2t和D3t变为RAID 5阵列的主要组件,并且RAID 1短暂阵列关系终止。通过根据故障或错误阵列组件的先前历史按优先顺序排列对RAID阵列的读取,在重建周期中更早地实现了较高的数据冗余,并降低了逐步升级的故障导致条带数据丢失的风险。
当由于一个或多个组件出现故障以及RAID重建算法在RAID重建操作期间遇到阻止重新构建正确数据的不可恢复的读取错误而使阵列数据冗余遭受风险时,使用术语“条带数据丢失”。此情况可在各种RAID算法中发生:RAID 1(镜像)、RAID 5(奇偶校验)、RAID 6以及类似算法。
在另一实施例中,数据保留模块1210被配置为在数据保留模块1210确定盘1110-111n中的一个或多个盘即将或已经出现故障时执行“正常”重建技术。在一个实施例中,正常重建技术包括使用一个或多个新盘替换一个或多个即将或已经出现故障的盘并从其他未发生故障或正常运行的盘(多个)重建RAID阵列。
在又一实施例中,数据保留模块1210被配置为在数据保留模块1210确定RAID体系结构中的一个或多个阵列即将发生故障以及经过预定时间量之后一个或多个阵列会发生故障时,将数据从RAID体系结构中的一个阵列迁移到RAID体系结构中的另一阵列。所述预定时间量是允许将故障阵列(多个)中的数据迁移到RAID体系结构中的一个或多个其他阵列的时间量。预定时间量的实例包括但不限于一天、一周、一个月或任何其他允许将故障盘(多个)中的数据迁移到RAID体系结构中的一个或多个其他阵列的时间量。当所剩时间少于所述预定时间量时,数据保留模块1210被配置为执行其他数据保留技术。
在数据保留模块1210确定RAID体系结构中的一个或多个阵列即将发生故障并且在一个或多个阵列发生故障之前所剩的时间少于或等于所述预定时间量时,数据保留模块1210被配置为经由网络130将数据传输到远程位置进行备份。在一个实施例中,所述远程位置是与***100相关的其他存储子***。在另一实施例中,所述远程位置是例如包括客户和/或客户机的存储子***的其他存储子***。
现在参考图2,图2是用于防止存储***中的数据丢失的方法200的一个实施例的流程图,所述存储***包括多个存储设备(例如,盘1110-111n),每个存储设备将数据存储在多个数据地址中。至少在所示实施例中,方法200始于确定和/或检测一个或多个存储设备即将经历故障状况(方块210)并确定故障状况类型(方块220)。
当所确定的故障状况为简单故障或阈值故障(例如,介质错误)时(方块225),方法200包括针对所述存储设备(多个)启动SMART重建(方块230)。在启动SMART重建之后,方法200包括判定一个或多个数据地址或一系列地址是否面临更大的数据丢失风险(方块235)。
如果一个或多个数据地址或一系列地址比其他数据地址面临的数据丢失风险更大,则首先针对此/这些数据地址执行SMART重建(方块240),然后针对所述数据地址顺序执行SMART重建(方块245)。如果一个或多个数据地址或一系列地址面临的数据丢失风险并不大于其他数据地址,则针对所述数据地址顺序执行SMART重建(方块245)。
当所确定的故障状况为一个或多个存储设备即将或已经发生故障时(方块250),方法200包括针对所述存储设备(多个)执行正常重建(方块255)。在一个实施例中,执行正常重建包括使用一个或多个新的存储设备替换即将或已经发生故障的存储设备(多个)并从其他未发生故障或正常运行的存储设备(多个)重建RAID阵列。
当所确定的故障状况为一个或多个RAID阵列即将发生故障时(方块260),方法200包括判定在RAID阵列发生故障之前所剩的时间是否多于预定时间量(方块270)。如果在RAID阵列发生故障之前所剩的时间多于预定时间量,方法200包括将数据从RAID体系结构中即将发生故障的阵列迁移到RAID体系结构中的另一阵列(方块280)。所述预定时间量是允许将故障阵列(多个)中的数据迁移到RAID体系结构中的一个或多个其他阵列的时间量。预定时间量的实例包括但不限于一天、一周、一个月或任何其他允许将故障阵列(多个)中的数据迁移到RAID体系结构中的一个或多个其他阵列的时间量。
当RAID阵列发生故障之前所剩的时间少于或等于所述预定时间量时,方法200包括将故障RAID阵列中的数据传输到远程位置进行备份(方块290)。在一个实施例中,所述远程位置是其他RAID***。在另一实施例中,所述远程位置是例如包括客户和/或客户机的存储子***的其他存储子***。
尽管前面对本发明的详细说明介绍了至少一个示例性实施例,但应理解,存在多种变型。还应理解,一个或多个示例性实施例只是实例,并非旨在以任何形式限制本发明的范围、应用领域或配置。而且,前面的详细说明将为本领域的技术人员提供方便实现本发明的示例性实施例的指南。将理解,可以在不偏离所附权利要求及其法律等同物中阐述的本发明范围的情况下,对示例性实施例中描述的元素的功能和布置做出各种更改。
本领域的技术人员知道,本发明的各方面可以体现为***、方法或计算机程序产品。因此,本发明的各方面可以具体实现为以下形式,即,可以是完全的硬件、完全的软件(包括固件、驻留软件、微代码等)、或者本文一般称为“电路”、“模块”或“***”的软件部分与硬件部分的组合。此外,本发明的各方面还可以采取体现在一个或多个计算机可读介质中的计算机程序产品的形式,该介质中包含计算机可读程序代码。
可以使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或物理计算机可读存储介质,物理计算机可读存储介质例如可以是(但不限于)电的、磁的、光的、晶体的、聚合物的、电磁的、红外线的、或半导体的***、装置、器件、或前述各项的任何适当的组合。物理计算机可读存储介质的更具体的例子(非穷举的列表)包括以下:有一个或多个导线的电连接、便携式计算机磁盘、硬盘、RAM、ROM、EPROM、闪存、光纤、CD-ROM、光存储器件、磁存储器件、或前述各项的任何适当的组合。在本文语境中,计算机可读存储介质可以是任何含有或存储供指令执行***、装置或器件使用的或与指令执行***、装置或器件相联系的程序的有形介质。
可以使用任何适当的介质(包括但不限于无线、有线、光缆、射频(RF)等或它们的任何适当组合)来传输计算机可读介质中包含的计算机代码。用于执行本发明的各方面的操作的计算机代码可以使用诸如“C”编程语言或类似编程语言之类的任何静态语言进行编写。所述计算机代码可以完全地在用户的计算上执行、部分地在用户的计算机上执行、作为一个独立的软件包执行、部分在用户的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何种类的网络或通信***—包括但不限于局域网(LAN)、广域网(WAN)或融合网络—连接到用户的计算机,或者,可以(例如利用因特网服务提供商来通过因特网)连接到外部计算机。
上面参照按照本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述本发明的各方面。要明白的是,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而生产出一种机器,使得通过计算机或其他可编程数据处理装置的处理器执行的这些指令,产生实现流程图和/或框图中的方框中规定的功能/操作的装置。
也可以把这些计算机程序指令存储在能指令计算机、其他可编程数据处理装置或其他设备以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令产生一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置的制品。也可以将计算机程序指令加载到计算机、其他可编程数据处理装置或其他设备上,使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而在计算机或其他可编程装置上执行的指令就提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
尽管已详细示出本发明的一个或多个实施例,但是本领域的技术人员将理解,可以在不偏离以下权利要求中阐述的本发明的范围的情况下,对这些实施例做出修改和改变。
Claims (20)
1.一种用于防止存储***中的数据丢失的***,所述***包括:多个存储设备,其被配置为将数据存储在多个数据地址中;以及处理器,其耦合到所述多个存储设备,其中所述处理器被配置为:
检测所述多个存储设备中的一个存储设备即将经历故障,
确定故障类型,
选择SMART重建技术、正常重建技术、数据迁移技术以及用户数据备份技术中的一种技术来保存该存储设备中的数据,所述选择基于所确定的故障类型,以及
针对该存储设备执行在SMART重建技术、正常重建技术、数据迁移技术以及用户数据备份技术中所选择的一种技术。
2.如权利要求1中所述的***,其中所述存储***包括具有所述多个数据地址的RAID 5配置,并且其中所述处理器已确定所述故障类型为该存储设备即将经历介质错误,所述处理器配置为:
选择SMART重建技术;以及
执行所述SMART重建技术,所述SMART重建技术包括:
按照优先顺序排列该存储设备中的每个数据地址,以及
基于所述优先顺序重建该存储设备中的第一系列的数据地址。
3.如权利要求2中所述的***,其中在按照优先顺序排列每个数据地址时,所述处理器被配置为确定所述第一系列的数据地址比第二系列的数据地址更容易丢失。
4.如权利要求3中所述的***,其中在重建所述第一系列的数据地址时,所述处理器被配置为:
首先重建所述第一系列的数据地址;以及
在重建所述第一系列的数据地址之后,重建所述第二系列的数据地址以及该存储设备中的任何剩余数据地址。
5.如权利要求2中所述的***,其中所述处理器已确定所述故障类型为该存储设备已失效,所述处理器被配置为:
选择正常重建技术;以及
执行正常重建技术,所述正常重建技术包括使用新的存储设备替换该存储设备。
6.如权利要求5中所述的***,其中所述处理器已确定所述故障类型为所述多个存储设备将在预定时间量后失效,所述处理器被配置为:
选择数据迁移技术;以及
执行数据迁移技术,执行数据迁移技术包括将所述多个存储设备中的数据迁移到新的多个存储设备。
7.如权利要求6中所述的***,其中所述处理器已确定所述故障类型为所述多个存储设备将在所述预定时间量内失效,所述处理器被配置为:
选择用户数据备份技术;以及
执行用户数据备份技术,执行用户数据备份技术包括将所述多个存储设备中的数据迁移到远程存储***。
8.一种用于防止存储***中的数据丢失的方法,所述存储***包括多个存储设备,每个存储设备均将数据存储在多个数据地址中,所述方法包括:
检测所述多个存储设备中的一个存储设备即将经历故障;
确定故障类型;
选择SMART重建技术、正常重建技术、数据迁移技术以及用户数据备份技术中的一种技术来保存该存储设备中的数据,所述选择基于所确定的故障类型;以及
针对该存储设备执行在SMART重建技术、正常重建技术、数据迁移技术以及用户数据备份技术中所选择的一种技术。
9.如权利要求8中所述的方法,其中:
所述存储***包括具有所述多个数据地址的RAID 5配置;
确定故障类型包括确定该存储设备即将经历介质错误;
所述选择包括选择SMART重建技术;以及
执行所述SMART重建技术包括:
按照优先顺序排列该存储设备中的每个数据地址,以及
基于所述优先顺序重建该存储设备中的第一系列的数据地址。
10.如权利要求9中所述的方法,其中按照优先顺序排列每个数据地址包括确定所述第一系列的数据地址比第二系列的数据地址更容易丢失。
11.如权利要求10中所述的方法,其中重建所述第一系列的数据地址包括:
首先重建所述第一系列的数据地址;以及
在重建所述第一系列的数据地址之后,重建所述第二系列的数据地址以及该存储设备中的任何剩余数据地址。
12.如权利要求9中所述的方法,其中:
确定所述故障类型包括确定该存储设备已失效;
所述选择包括选择正常重建技术;以及
执行正常重建技术包括使用新的存储设备替换该存储设备。
13.如权利要求12中所述的方法,其中:
确定所述故障类型包括确定所述多个存储设备将在预定时间量后失效;
所述选择包括选择数据迁移技术;以及
执行数据迁移技术包括将所述多个存储设备中的数据迁移到新的多个存储设备。
14.如权利要求13中所述的方法,其中:
确定所述故障类型包括确定所述多个存储设备将在所述预定时间量内失效;
所述选择包括选择用户数据备份技术;以及
执行用户数据备份技术包括将所述多个存储设备中的数据迁移到远程存储***。
15.一种包括用于防止存储***中的数据丢失的计算机程序产品方法的物理计算机存储介质,所述存储***包括多个存储设备,每个存储设备均将数据存储在多个数据地址中,所述物理计算机存储介质包括:
用于检测所述多个存储设备中的一个存储设备即将经历故障的计算机代码;
用于确定故障类型的计算机代码;
用于选择SMART重建技术、正常重建技术、数据迁移技术以及用户数据备份技术中的一种技术来保存该存储设备中的数据的计算机代码,所述选择基于所确定的故障类型,以及
用于针对该存储设备执行在SMART重建技术、正常重建技术、数据迁移技术以及用户数据备份技术中所选择的一种技术的计算机代码。
16.如权利要求15中所述的物理计算机存储介质,其中所述存储***包括具有所述多个数据地址的RAID 5配置并且其中:
用于确定所述故障类型的计算机代码包括用于确定该存储设备即将经历介质错误的计算机代码;
用于选择的计算机代码包括用于选择SMART重建技术的计算机代码;以及
用于执行所述SMART重建技术的计算机代码包括:
用于按照优先顺序排列该存储设备中的每个数据地址的计算机代码,以及
用于基于所述优先顺序重建该存储设备中的第一系列的数据地址的计算机代码。
17.如权利要求16中所述的物理计算机存储介质,其中:
用于按照优先顺序排列每个数据地址的计算机代码包括用于确定所述第一系列的数据地址比第二系列的数据地址更容易丢失的计算机代码;以及
用于重建所述第一系列的数据地址的计算机代码包括:
用于首先重建所述第一系列的数据地址的计算机代码;以及
用于在重建所述第一系列的数据地址之后,重建所述第二系列的数据地址以及该存储设备中的任何剩余数据地址的计算机代码。
18.如权利要求16中所述的物理计算机存储介质,其中:
用于确定所述故障类型的计算机代码包括用于确定该存储设备已失效的计算机代码;
用于选择的计算机代码包括用于选择正常重建技术的计算机代码;以及
用于执行正常重建技术的计算机代码包括用于使用新的存储设备替换该存储设备的计算机代码。
19.如权利要求18中所述的物理计算机存储介质,其中:
用于确定所述故障类型的计算机代码包括用于确定所述多个存储设备将在预定时间量后失效的计算机代码;
用于选择的计算机代码包括用于选择数据迁移技术的计算机代码;以及
用于执行数据迁移技术的计算机代码包括用于将所述多个存储设备中的数据迁移到新的多个存储设备的计算机代码。
20.如权利要求19中所述的物理计算机存储介质,其中:
用于确定所述故障类型的计算机代码包括用于确定所述多个存储设备将在所述预定时间量内失效的计算机代码;
用于选择的计算机代码包括用于选择用户数据备份技术的计算机代码;以及
用于执行用户数据备份技术的计算机代码包括用于将所述多个存储设备中的数据迁移到远程存储***的计算机代码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/437,574 | 2012-04-02 | ||
US13/437,574 US8930749B2 (en) | 2012-04-02 | 2012-04-02 | Systems and methods for preventing data loss |
PCT/CN2013/073302 WO2013149558A1 (en) | 2012-04-02 | 2013-03-28 | Systems and methods for preventing data loss |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104094236A true CN104094236A (zh) | 2014-10-08 |
CN104094236B CN104094236B (zh) | 2017-07-21 |
Family
ID=49236729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380008069.2A Active CN104094236B (zh) | 2012-04-02 | 2013-03-28 | 防止数据丢失的***和方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US8930749B2 (zh) |
CN (1) | CN104094236B (zh) |
DE (1) | DE112013000881T5 (zh) |
GB (1) | GB2515709B (zh) |
WO (1) | WO2013149558A1 (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203442A (zh) * | 2016-03-16 | 2017-09-26 | 伊姆西公司 | 独立磁盘冗余阵列的重建性能的评估 |
CN107612719A (zh) * | 2017-08-29 | 2018-01-19 | 深圳市盛路物联通讯技术有限公司 | 物联网接入点的数据备份方法及装置 |
CN108334285A (zh) * | 2017-01-20 | 2018-07-27 | 三星电子株式会社 | 存储***和操作存储***的方法 |
CN110058785A (zh) * | 2018-01-18 | 2019-07-26 | 伊姆西Ip控股有限责任公司 | 用于管理存储***的方法和设备 |
CN110413216A (zh) * | 2018-04-28 | 2019-11-05 | 伊姆西Ip控股有限责任公司 | 用于管理存储***的方法、设备和计算机程序产品 |
CN111615686A (zh) * | 2018-01-24 | 2020-09-01 | 苹果公司 | 分布式冗余存储*** |
CN112685222A (zh) * | 2019-10-17 | 2021-04-20 | 伊姆西Ip控股有限责任公司 | 管理备份数据的方法、设备和计算机程序产品 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013157032A1 (en) * | 2012-04-16 | 2013-10-24 | Hitachi, Ltd. | Storage subsystem and data management method of storage subsystem |
US8775861B1 (en) * | 2012-06-28 | 2014-07-08 | Emc Corporation | Non-disruptive storage device migration in failover cluster environment |
CN104346234B (zh) * | 2013-08-09 | 2017-09-26 | 华为技术有限公司 | 一种内存访问的方法、设备及*** |
JP6213130B2 (ja) * | 2013-10-09 | 2017-10-18 | 富士通株式会社 | ストレージ制御装置、ストレージ制御プログラム及びストレージ制御方法 |
US9575846B2 (en) | 2014-07-24 | 2017-02-21 | At&T Intellectual Property I, L.P. | Distributed storage of data |
US9563524B2 (en) * | 2014-12-11 | 2017-02-07 | International Business Machines Corporation | Multi level data recovery in storage disk arrays |
US10176065B2 (en) | 2015-02-16 | 2019-01-08 | Seagate Technology Llc | Intelligent failure prediction and redundancy management in a data storage system |
US9665446B1 (en) | 2015-12-29 | 2017-05-30 | International Business Machines Corporation | Fully distributed intelligent rebuild |
US11249667B2 (en) | 2019-09-05 | 2022-02-15 | International Business Machines Corporation | Storage performance enhancement |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1435758A (zh) * | 2002-01-29 | 2003-08-13 | 松下电器产业株式会社 | 存储装置、数据处理方法以及数据处理程序 |
US20040153730A1 (en) * | 1991-04-01 | 2004-08-05 | Atsushi Tanaka | Data reconstruction method and system wherein timing of data of data reconstruction is controlled in accordance with conditions when a failure occurs |
US20040250017A1 (en) * | 2003-06-09 | 2004-12-09 | Patterson Brian L. | Method and apparatus for selecting among multiple data reconstruction techniques |
CN101866271A (zh) * | 2010-06-08 | 2010-10-20 | 华中科技大学 | 一种基于raid的安全预警***和方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6415189B1 (en) | 1999-07-23 | 2002-07-02 | International Business Machines Corporation | Method and system for predicting disk drive failures |
US6687791B2 (en) | 2002-01-07 | 2004-02-03 | Sun Microsystems, Inc. | Shared cache for data integrity operations |
US7421537B2 (en) * | 2004-03-22 | 2008-09-02 | Intel Corporation | Migrating data between storage volumes |
EP1810143A4 (en) | 2004-09-22 | 2011-03-16 | Xyratex Tech Ltd | SYSTEM AND METHOD FOR MONITORING NETWORK PERFORMANCE AND PREDICTIVE MALFUNCTION ANALYSIS |
US7574623B1 (en) | 2005-04-29 | 2009-08-11 | Network Appliance, Inc. | Method and system for rapidly recovering data from a “sick” disk in a RAID disk group |
JP4472617B2 (ja) | 2005-10-28 | 2010-06-02 | 富士通株式会社 | Raidシステム、raidコントローラ及びそのリビルド/コピーバック処理方法 |
US20070150651A1 (en) * | 2005-12-22 | 2007-06-28 | Intel Corporation | Method for dynamically exposing backup and restore volumes |
US7721157B2 (en) | 2006-03-08 | 2010-05-18 | Omneon Video Networks | Multi-node computer system component proactive monitoring and proactive repair |
GB0612482D0 (en) * | 2006-06-23 | 2006-08-02 | Ibm | Apparatus and method for controlling raid array rebuild |
GB0622224D0 (en) | 2006-11-08 | 2006-12-20 | Ibm | Apparatus and method for disk read checking |
US7624300B2 (en) | 2006-12-18 | 2009-11-24 | Emc Corporation | Managing storage stability |
US8751862B2 (en) * | 2007-08-10 | 2014-06-10 | Dell Products L.P. | System and method to support background initialization for controller that supports fast rebuild using in block data |
US8074112B1 (en) | 2007-12-27 | 2011-12-06 | Marvell International Ltd. | Memory backup used in a raid system |
US7877626B2 (en) * | 2007-12-31 | 2011-01-25 | Datadirect Networks, Inc. | Method and system for disk storage devices rebuild in a data storage system |
-
2012
- 2012-04-02 US US13/437,574 patent/US8930749B2/en active Active
- 2012-06-28 US US13/535,590 patent/US8930750B2/en not_active Expired - Fee Related
-
2013
- 2013-03-28 WO PCT/CN2013/073302 patent/WO2013149558A1/en active Application Filing
- 2013-03-28 GB GB1419385.8A patent/GB2515709B/en active Active
- 2013-03-28 CN CN201380008069.2A patent/CN104094236B/zh active Active
- 2013-03-28 DE DE112013000881.5T patent/DE112013000881T5/de active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040153730A1 (en) * | 1991-04-01 | 2004-08-05 | Atsushi Tanaka | Data reconstruction method and system wherein timing of data of data reconstruction is controlled in accordance with conditions when a failure occurs |
CN1435758A (zh) * | 2002-01-29 | 2003-08-13 | 松下电器产业株式会社 | 存储装置、数据处理方法以及数据处理程序 |
US20040250017A1 (en) * | 2003-06-09 | 2004-12-09 | Patterson Brian L. | Method and apparatus for selecting among multiple data reconstruction techniques |
CN101866271A (zh) * | 2010-06-08 | 2010-10-20 | 华中科技大学 | 一种基于raid的安全预警***和方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107203442A (zh) * | 2016-03-16 | 2017-09-26 | 伊姆西公司 | 独立磁盘冗余阵列的重建性能的评估 |
CN107203442B (zh) * | 2016-03-16 | 2020-04-21 | 伊姆西Ip控股有限责任公司 | 独立磁盘冗余阵列的重建性能的评估方法和设备 |
CN108334285A (zh) * | 2017-01-20 | 2018-07-27 | 三星电子株式会社 | 存储***和操作存储***的方法 |
CN108334285B (zh) * | 2017-01-20 | 2023-04-18 | 三星电子株式会社 | 存储***和操作存储***的方法 |
CN107612719B (zh) * | 2017-08-29 | 2021-03-19 | 深圳市盛路物联通讯技术有限公司 | 物联网接入点的数据备份方法及装置 |
CN107612719A (zh) * | 2017-08-29 | 2018-01-19 | 深圳市盛路物联通讯技术有限公司 | 物联网接入点的数据备份方法及装置 |
CN110058785B (zh) * | 2018-01-18 | 2022-07-05 | 伊姆西Ip控股有限责任公司 | 用于管理存储***的方法和设备 |
CN110058785A (zh) * | 2018-01-18 | 2019-07-26 | 伊姆西Ip控股有限责任公司 | 用于管理存储***的方法和设备 |
CN111615686A (zh) * | 2018-01-24 | 2020-09-01 | 苹果公司 | 分布式冗余存储*** |
CN111615686B (zh) * | 2018-01-24 | 2023-12-15 | 苹果公司 | 分布式冗余存储*** |
CN110413216A (zh) * | 2018-04-28 | 2019-11-05 | 伊姆西Ip控股有限责任公司 | 用于管理存储***的方法、设备和计算机程序产品 |
CN112685222A (zh) * | 2019-10-17 | 2021-04-20 | 伊姆西Ip控股有限责任公司 | 管理备份数据的方法、设备和计算机程序产品 |
US11983142B2 (en) | 2019-10-17 | 2024-05-14 | EMC IP Holding Company LLC | Method for managing backup data, electronic device and computer program product |
Also Published As
Publication number | Publication date |
---|---|
GB2515709A (en) | 2014-12-31 |
WO2013149558A1 (en) | 2013-10-10 |
DE112013000881T5 (de) | 2014-10-30 |
CN104094236B (zh) | 2017-07-21 |
GB2515709B (en) | 2017-01-04 |
US8930750B2 (en) | 2015-01-06 |
GB201419385D0 (en) | 2014-12-17 |
US20130262919A1 (en) | 2013-10-03 |
US20130262921A1 (en) | 2013-10-03 |
US8930749B2 (en) | 2015-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104094236A (zh) | 防止数据丢失的***和方法 | |
CN103970481B (zh) | 重建存储器阵列的方法和装置 | |
US20180081760A1 (en) | Managing raid parity stripe contention | |
US8341457B2 (en) | System and method for optimizing redundancy restoration in distributed data layout environments | |
CN106933708B (zh) | 有助于进行存储***恢复的方法、装置以及一种存储*** | |
US8171379B2 (en) | Methods, systems and media for data recovery using global parity for multiple independent RAID levels | |
US8230255B2 (en) | Blocking write acces to memory modules of a solid state drive | |
JP4754852B2 (ja) | ストレージ制御装置および方法 | |
US9372743B1 (en) | System and method for storage management | |
US20170115903A1 (en) | Shifting wearout of storage disks | |
US9104604B2 (en) | Preventing unrecoverable errors during a disk regeneration in a disk array | |
US9690651B2 (en) | Controlling a redundant array of independent disks (RAID) that includes a read only flash data storage device | |
US9740440B2 (en) | Separating a hybrid asymmetric mix of a RAID 1 mirror and a parity-based RAID array | |
US9858148B2 (en) | Raid data loss prevention | |
US20140304548A1 (en) | Intelligent and efficient raid rebuild technique | |
US20150286531A1 (en) | Raid storage processing | |
JP2013041443A (ja) | ストレージシステム、ストレージ制御装置およびストレージ制御方法 | |
US9766980B1 (en) | RAID failure prevention | |
US20170115902A1 (en) | Shifting wearout of storage disks | |
CN109725827B (zh) | 管理存储***的方法、***和计算机程序产品 | |
CN104503781A (zh) | 硬盘的固件升级方法和存储*** | |
CN115657965B (zh) | 一种元数据的配置方法、装置及介质 | |
US9940211B2 (en) | Resource system management | |
CN115129507A (zh) | 实现快速raid阵列重组的方法、装置、设备、介质 | |
US10942826B2 (en) | Method and device for managing storage system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |