CN100573464C - 恢复多卷数据集的装置、系统和方法 - Google Patents
恢复多卷数据集的装置、系统和方法 Download PDFInfo
- Publication number
- CN100573464C CN100573464C CNB2007101492997A CN200710149299A CN100573464C CN 100573464 C CN100573464 C CN 100573464C CN B2007101492997 A CNB2007101492997 A CN B2007101492997A CN 200710149299 A CN200710149299 A CN 200710149299A CN 100573464 C CN100573464 C CN 100573464C
- Authority
- CN
- China
- Prior art keywords
- data set
- data
- recovered
- module
- volume
- 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 - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/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/1469—Backup restoration techniques
-
- 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/1456—Hardware arrangements for backup
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)
Abstract
本发明提供了一种在没有数据集的备份卷元数据的情况下从备份卷恢复数据集的装置、系统和方法,其中装置包括:检索模块,配置为从目录检索数据集的元数据,其中所述元数据指定了所述数据集的实例在多个源卷上的位置;定位模块,配置为使用所述元数据在多个备份卷上定位所述数据集;以及恢复模块,配置为从所述多个备份卷将所述数据集恢复为恢复的数据集。
Description
技术领域
本发明涉及恢复数据集,更具体地说,涉及恢复多卷数据集。
背景技术
数据处理系统通常存储大量重要数据。例如,数据处理系统可以存储交易数据、库存数据、客户服务配置、账户信息等。可以跨一个或多个物理存储卷(在本文中称为源卷)将数据存储为多个数据集。数据集可以是文件、数据库和/或数据的其他逻辑组织。
数据集对使用数据处理系统的组织可以是至关重要的。因此,通常复制数据集以防止丢失。数据处理系统可以将数据集复制到一个或多个备份物理存储卷来备份数据集。备份物理存储卷在本文中称为备份卷。
通过频繁地进行备份复制(在本文中称为备份)可以最佳地保护数据以最小化数据丢失的可能。不幸的是,备份数据集消耗数据处理系统带宽。因此,理想的备份操作应既快速又频繁以降低其对数据处理系统的影响。
通常使用逻辑备份或使用物理备份来备份数据。在逻辑备份中,数据处理系统备份数据集并将数据集的关联元数据捕获到备份卷。元数据指定物理卷上数据集的特性。源卷的元数据指定数据集在源卷上的位置连同数据集的特性。还可以捕获备份卷的元数据并将其存储到库存数据集中。因此,备份卷上的数据集的捕获的元数据可用于定位数据集并从备份卷恢复数据集。不幸的是,逻辑备份要求大量的数据处理系统带宽,因为必须捕获和组织元数据。
相比之下,在使用物理备份时,使用物理备份的数据处理系统盲目地将数据块从源卷复制到备份卷,使备份卷物理地等价于源卷。物理备份的执行可以比逻辑备份的执行快得多,这降低了对数据处理系统的影响。
不幸的是,物理备份并不捕获已备份的数据集的元数据。结果,数据处理系统可能没有所需的信息来将存储的单个数据集从备份卷恢复到目标物理卷。目标物理卷在本文中称为目标卷。具体地说,数据处理系统可能缺少恢复存储在多个存储卷上的数据集的信息。存储在多个存储卷上的数据集在本文中称为多卷数据集。
发明内容
从上述讨论可知,需要一种在没有数据集的备份卷元数据的情况下从备份卷恢复数据集的装置、系统和方法。有利地,此类装置、系统和方法将允许在没有捕获数据集的元数据且使用物理备份的增强性能来备份数据集的情况下恢复数据集。
开发本发明以响应本领域的现状,具体地说,响应本领域中尚未完全通过当前可用的数据恢复方法解决的问题和需要。因此,开发了本发明以提供恢复多卷数据的克服本领域中上面介绍的许多或全部缺点的装置、系统和方法。
所述恢复多卷数据的装置具备多个模块,所述模块配置为功能地执行以下步骤:从目录检索元数据,定位数据集,并恢复所述数据集。在所述实施例中的这些模块包括检索模块、定位模块和恢复模块。所述装置还可以包括验证模块、备份模块和数据集大小模块。
在一个实施例中,所述备份模块将多个源卷作为所述多个源卷的物理副本备份到多个备份卷。在所述备份操作期间没有捕获元数据。所述多个源卷可以包括备份到所述多个备份卷的数据集。在一个实施例中,存储在所述多个备份卷中的数据基本等于存储在所述多个源卷中的数据。
在一个实施例中,所述数据集大小模块通过所述源卷到所述备份卷的数据块复制(在本文中称为逐块复制)来作为物理数据块的一部分捕获所述数据集的数据集大小。所述数据集大小可以包括每个数据集的数据部分大小和索引部分大小。备选地,如果将所述数据集作为条装数据存储在所述多个源卷上,则所述数据集大小模块可以捕获所述数据集的每个条的数据集条大小以及所述数据集的条数。
所述检索模块从目录检索所述数据集的元数据。所述元数据在所述多个源卷上定位所述数据集的实例。在一个实施例中,将所述目录存储在存储卷上。在特定实施例中,将所述目录存储在源卷上。
所述定位模块使用所述元数据在所述多个备份卷上定位所述数据集。在一个实施例中,所述定位模块使用位于所述源卷上的数据集实例的数据块的物理地址来定位位于所述备份卷上的数据集的数据块。
所述恢复模块从所述多个备份卷将所述数据集恢复为恢复的数据集。在一个实施例中,所述恢复模块将已定位的数据集从所述多个备份卷复制到多个目标卷。在特定实施例中,所述多个目标卷是所述多个源卷。
在一个实施例中,所述验证模块验证成功恢复了所述恢复的数据集。所述验证模块可以通过确定所述恢复数据集的总分配空间基本等于数据集大小来验证成功恢复了所述数据集。所述装置使用所述目录的元数据从所述多个备份卷恢复所述数据集。此外,所述装置可以验证成功恢复了所述数据集。在一个实施例中,所述装置可以恢复多个数据集。
还提出了本发明的恢复多卷数据的系统。所述系统可以包含在数据处理系统中。具体地说,在一个实施例中,所述系统包括多个源卷、多个备份卷、目录以及存储控制器。所述存储控制器包括检索模块、定位模块、恢复模块和验证模块。在一个实施例中,所述存储控制器还包括备份模块和数据集大小模块。
所述多个源卷存储数据处理系统的数据集。所述目录存储在所述源卷上存储的所述数据集的实例的元数据。此元数据描述了所述数据集在所述多个源卷上的位置。
所述备份模块将所述多个源卷的数据集备份到所述多个备份卷。在一个实施例中,所述备份模块将所述多个源卷物理地备份到所述多个备份卷。此外,所述数据集大小模块可以在物理备份期间捕获每个数据集的数据集大小。
所述检索模块从所述目录检索所述数据集的元数据。在一个实施例中,所述数据集跨多个备份卷。所述定位模块使用所述元数据在所述多个备份卷上定位所述数据集。所述恢复模块从所述多个备份卷将所述数据集恢复为恢复的数据集。所述验证模块验证成功恢复了所述恢复的数据集。所述系统从所述多个备份卷恢复所述数据集,尽管没有任何指定所述数据集在所述备份卷上的位置的元数据。
还提出了本发明的用于恢复多卷数据的方法。在公开的实施例中的方法主要包括执行有关所述装置和系统的操作的上述功能的步骤。在一个实施例中,所述方法包括从目录检索元数据,定位数据集以及恢复所述数据集。所述方法还可以包括备份所述数据集、捕获数据集大小,以及验证成功恢复了所述恢复的数据集。
在一个实施例中,备份模块将多个源卷物理地备份到多个备份卷。数据集大小模块还可以在物理备份期间捕获数据集的数据集大小。检索模块从目录检索所述数据集的元数据。定位模块使用所述元数据在所述多个备份卷上定位所述数据集。恢复模块从所述多个备份卷将所述数据集恢复为恢复的数据集。在一个实施例中,验证模块验证成功恢复了所述恢复的数据集。所述方法使用目录元数据来定位数据集并从所述多个备份卷恢复所述数据集。
本说明书中对功能、优点的参考或类似语言并非暗示可以与本发明一起实现的所有功能和优点应在本发明的任何单个实施例中。相反,应当理解,引用所述功能和优点的语言指与实施例一起描述的特定功能、优点或特性包括在本发明的至少一个实施例中。因此,本说明书中对功能、优点的讨论和类似语言可以(但并不一定)指相同的实施例。
此外,本发明的所述功能、优点和特性可以以任何适当的方式组合在一个或多个实施例中。相关领域的技术人员将认识到,可以在没有特定实施例的一个或多个特定功能或优点的情况下实现本发明。在其他情况下,可以在特定实施例中认识到可能不存在于本发明的所有实施例中的其他功能和优点。
本发明的实施例在没有定位数据集的备份卷元数据的情况下在多个备份卷上定位数据集。此外,本发明的实施例使用位于多个源卷上的数据集的实例的元数据来恢复数据集。从以下说明,本发明的这些功能和优点将变得更加显而易见,或者通过实现如下文所述的本发明,可以了解本发明的这些功能和优点。
附图说明
为了容易地理解本发明的优点,将通过参考附图中示出的特定实施例说明上面简要介绍的本发明的更具体的说明。应当理解,这些附图仅示出了本发明的典型实施例,并且因此不应被视为限制其范围,将通过使用附图以其他特性和详细信息来介绍和说明本发明,这些附图是:
图1是示出根据本发明的数据处理系统的一个实施例的示意性方块图;
图2是示出本发明的多卷恢复装置的一个实施例的示意性方块图;
图3是示出本发明的存储控制器的一个实施例的示意性方块图;
图4是示出本发明的多卷恢复方法的一个实施例的示意性流程图;
图5是示出本发明的存储卷的一个实施例的示意性方块图;以及
图6是示出本发明的备份卷的一个实施例的示意性方块图。
具体实施方式
将本说明书中描述的多个功能单元标记为模块,以便更具体地强调它们的实现无关性。例如,模块可以被实现为包括定制VLSI电路或门阵列、诸如逻辑芯片、晶体管或其他分离组件之类的现用半导体的硬件电路。模块还可以在诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备之类的可编程硬件设备中实现。
模块还可以在软件中实现,以便由各种类型的处理器执行。例如,标识的可执行代码的模块可以包括一个或多个物理或逻辑的计算机指令块,所述块可以例如组织为对象、过程或功能。然而,标识的模块的可执行代码不需要在物理上位于一起,但是可以包括存储在不同位置的不同指令,当所述指令被逻辑地结合时,将包括所述模块并实现模块的所述目的。
实际上,可执行代码的模块可以是单个指令或多个指令,并且甚至可以分布在数个不同的代码段上、多个不同的程序中,以及跨多个存储器设备。同样,操作数据可以在模块中被标识和在此示出,并且可以包括在任何适当的形式中并组织在任何适当类型的数据结构中。操作数据可以被收集为单个数据集,或可以分布在包括不同存储设备的不同位置上,并且可以至少部分地仅作为电子信号存在于系统或网络中。
本说明书中对“一个实施例”、“实施例”或类似语言的引用指结合该实施例描述的特定功能、结构或特性被包括在本发明的至少一个实施例中。因此,本说明书中出现的短语“在一个实施例中”、“在实施例中”和类似语言可以(但是并非一定)都指相同的实施例。
此外,本发明的所述功能、结构或特性可以以任何适当的形式组合在一个或多个实施例中。在以下说明中,提供了大量特定的详细信息,如编程、软件模块、用户选择、网络事务、数据库查询、数据库结构、硬件模块、硬件电路、硬件芯片等的实例,以便彻底理解本发明的实施例。但是,本领域的技术人员将认识到,可以在没有一个或多个特定的细节的情况下实现本发明,或者可以通过其他方法、组件、材料等实现本发明。在其他情况下,未详细示出或描述公知的结构、材料或操作以避免使本发明的各方面变得模糊不清。
图1是示出根据本发明的数据处理系统100的一个实施例的示意性方块图。系统100包括客户机120、存储控制器105、一个或多个源卷110,以及一个或多个备份卷115。尽管为了简洁,示出系统100具有一个客户机120、一个存储控制器105、三个源卷110以及三个备份卷115,但是可以采用任何数量的客户机120、存储控制器105、源卷110以备份卷115。
源卷110和备份卷115可以是物理存储卷,例如,独立磁盘冗余阵列(RAID)存储系统、硬盘驱动器、磁带驱动器、光存储设备、微机械存储设备、半导体存储器等。在一个实施例中,源卷110和备份卷115在物理上等价。例如,第一源卷110a和第一备份卷115a可以是具有等同的扇区和轨道结构的相同型号的硬盘驱动器,如本领域的技术人员所公知的。
存储控制器105在通信通道125上与源卷110及备份卷115通信。可以将通信通道125配置为以太网连接、光纤通道连接、小型计算机系统接口(SCSI)连接等。尽管将源卷110和备份卷115示为在单独的通信通道125上与存储控制器105通信,但是源卷110和备份卷115可以在一个或多个共享通信通道125上通信。实际上,源卷110和备份卷115只是这样逻辑地命名,否则可能难以区分。
存储控制器105将数据存储到客户机120的源卷110并从中检索数据。所述数据可以组织为数据集,例如,文件、数据库等。数据集可以存储在一个或多个源卷110上或跨一个或多个源卷110。例如,可以将数据库数据集存储在第一、第二和第三源卷110a、110b、110c上。元数据可以描述每个数据集在源卷110中的位置,以及描述所述数据集的特性。可以将元数据组织到目录中。可以将所述目录存储在存储卷上。
存储控制器105可以管理源卷110。此外,存储控制器105还可以将源卷110的数据集备份到备份卷115,以便在一个或多个源卷110出现故障时防止数据集丢失。在一个实施例中,存储控制器105通过将源卷110的每个数据块复制到备份卷115上的相应数据块位置来将源卷110的数据集物理地备份到备份卷115。例如,存储控制器105可以将第一源卷110a的轨道的数据块复制到第一备份卷115a的等价轨道,依此类推,以使第一源卷110a和第一备份卷115a的相应轨道等价。
存储控制器105可以在不捕获数据集的元数据的情况下将数据集物理地备份到备份卷115。例如,存储控制器105可以不记录指定备份卷115上数据集的位置的元数据。因此,尽管可以将数据集备份到备份卷115上,但是存储控制器105在过去经常无法寻址备份数据集,特别是数据集跨多个备份卷时。
图2是示出本发明的多卷恢复装置200的一个实施例的示意性方块图。装置200包括备份模块205、检索模块210、定位模块215、恢复模块220、验证模块225,以及数据集大小模块230。对装置200的描述引用了图1的元素,相同的标号表示相同的元素。装置200可以包含在图1的存储控制器105中。
在一个实施例中,如针对图1所述,备份模块205将源卷110作为源卷110的物理备份来备份到备份卷115。备份模块205在不捕获元数据的情况下备份源卷110。
在一个实施例中,数据集大小模块230作为源卷110到备份卷115的逐块复制的一部分来捕获数据集的数据集大小。在特定实施例中,数据集大小模块230捕获每个数据集的数据部分大小和索引部分大小。数据集可以包括一个或多个数据部分。每个数据部分可以存储一个或多个记录。数据部分大小可以是数据集的数据部分的单位为字节、字、数据块等的大小。索引部分可以将每个数据部分记录的密钥与所述记录在数据集中的位置相关联。索引部分大小可以是数据集的索引部分的单位为字节、字、数据块等的大小。
备选地,可以将数据集作为条状数据存储在多个源卷110上。条可以是存储到源卷110的数据集的一部分。可以将数据集作为多个条存储在多个源卷110间。数据集大小模块230可以捕获数据集的每个条的数据集条大小以及数据集的条数。例如,组织为条状卷的源卷110可以将数据集存储为同时在两个或更多个源卷110间写入的多个条,如本领域的技术人员所公知的。在备份模块205作为源卷110到备份卷115的逐块复制的一部分备份数据集时,数据集大小模块230可以捕获数据集的每个条的数据集条大小。数据集条大小可以是数据集条的单位为字节、字、数据块等的大小。在一个实施例中,每个数据集条大小包括数据部分大小和索引部分大小。
检索模块210从目录检索数据集的元数据,这将在下文中描述。目录存储在源卷110上存储的数据集的实例的元数据。在一个实施例中,检索模块210检索元数据以响应命令将数据集从备份卷115恢复或复制到目标卷的恢复请求。
定位模块215使用元数据在备份卷115上定位数据集,这将在下文中说明。在一个实施例中,定位模块215使用来自元数据的位于源卷110上的数据集实例的数据块的物理地址来定位位于备份卷115上的数据集的数据块。
恢复模块220从备份卷115将数据集恢复为恢复的数据集,这将在下文中说明。在一个实施例中,恢复模块将已定位的数据集从备份卷115复制到多个目标卷。在特定实施例中,所述多个目标卷是源卷110。
在一个实施例中,验证模块225验证成功恢复了恢复的数据集,这将在下文中说明。装置200使用目录的元数据从备份卷115恢复数据集。此外,装置200可以验证成功恢复了数据集。
图3是示出本发明的存储控制器105的一个实施例的示意性方块图。控制器105的描述引用了图1-2的元素,相同的标号表示相同的元素。控制器105包括处理器模块305、存储器模块310、桥接模块315、网络接口模块320,以及存储接口模块325。此外,示出了存储控制器105与客户机120、源卷110以及备份卷115通信。
处理器模块305、存储器模块310、桥接模块315、网络接口模块320,以及存储接口模块325可以由一个或多个半导体衬底上的半导体门来形成。每个半导体衬底可以封装到一个或多个安装在电路卡上的半导体器件中。可以通过半导体金属层、衬底到衬底布线、电路卡线,和/或连接所述半导体器件的导线来进行处理器模块305、存储器模块310、桥接模块315、网络接口模块320,以及存储接口模块325之间的连接。
存储器模块310存储软件指令和数据。处理器模块305执行软件指令并操纵数据,如本领域的技术人员所公知的。在一个实施例中,存储器模块310存储而处理器模块305执行一个或多个包含备份模块205、检索模块210、定位模块215、恢复模块220、验证模块225和数据集大小模块230的软件过程。
处理器模块305通过桥接模块315与网络接口模块320及存储接口模块325通信。此外,处理器模块305可以通过网络接口模块320及存储接口模块325与客户机120通信。
通常作为逻辑流程图说明以下的示意性流程图。同样,所示顺序和标记的步骤指示所提供方法的一个实施例。可以构想其他步骤和方法,它们在功能、逻辑或效果上与所示方法的一个或多个步骤或其各部分等效。另外,提供所使用的格式和符号以说明所述方法的逻辑步骤,并且应理解它们并非限制所述方法的范围。尽管可以在流程图中使用不同的箭头类型和线条类型,但是应理解,它们并非限制相应方法的范围。实际上,某些箭头或其他连接符可用来仅指示所述方法的逻辑流。例如,箭头可以指示所示方法的枚举步骤之间的未指定持续时间的等待或监视周期。另外,出现特定方法的顺序可以或可以不严格地依照所示的相应步骤的顺序。
图4是示出本发明的多卷恢复方法400的一个实施例的示意性流程图。方法400实质上包括执行上述与图1-3的装置200、300和系统100的操作有关的功能的步骤。方法400的说明引用了图1-3的元素,相同的标号表示相同的元素。说明了方法400来恢复单个数据集,尽管方法400可应用于任何数量的数据集。
在一个实施例中,备份模块205将源卷110物理地备份405到备份卷115。备份模块205可以在指定的时间备份405源卷110。备选地,备份模块205可以按照管理员的命令来备份405源卷110。在特定实施例中,备份模块205备份405源卷110以响应指定的事件,例如,到数据集的写入。
在一个实施例中,数据集大小模块230还捕获作为源卷110到备份卷115的逐块物理复制的一部分备份到备份卷115的数据集的数据集大小。如果将数据集存储为条状数据,则数据集大小模块230捕获405数据集的每个条的数据集条大小。数据集大小模块230还可以捕获405数据集的条数。在一个实施例中,数据集大小模块230在将数据集备份到备份卷115时标识数据集并捕获405所标识的数据集的大小。数据集大小模块230可以将捕获的数据集大小与数据集一起存储在备份卷115上。备选地,数据集大小模块230可以将捕获的数据集大小存储在存储器模块310中。
在一个实施例中,检索模块210接收415从备份卷115恢复数据集的恢复请求。客户机120可以将恢复请求传输到存储模块105和在存储模块105上执行的检索模块210。在备选实施例中,存储控制器105检测一个或多个源卷110的故障和/或潜在故障。存储控制器105可以将恢复请求传输到检索模块210以恢复受一个或多个源卷110的故障和/或潜在故障影响的数据集。
在一个实施例中,检索模块210判定420数据集的元数据是否可用。检索模块210可以定位在源卷110上存储的数据集实例的目录并搜索目录以查找数据集实例的元数据。如果检索模块210判定420元数据不可用,则检索模块210发送445错误消息且方法400结束。在特定实施例中,检索模块210将错误消息发送445到客户机120。备选地,检索模块210将错误消息发送445给管理员。
如果检索模块210判定420数据集的元数据可用,则检索模块210从目录检索425数据集的元数据。在一个实施例中,恢复请求使用标识符(例如,名称、逻辑地址等)来标识存储在源卷110上的数据集实例。备选地,标识符可以标识在备份卷115上存储的数据集。检索模块210可以使用标识符来从目录检索425元数据。
定位模块215使用元数据在备份卷115上定位430数据集。在特定实施例中,所检索的元数据包括在源卷110上定位数据集的定位数据。定位数据可以指定数据集的实例在源卷110上的位置。例如,定位数据可以包括数据集实例在一个或多个源卷110上的物理地址。定位模块215可以通过分析在源卷110上定位数据集实例的物理地址的一部分来在备份卷115上定位430数据集的实例。例如,定位模块215可以分析位于第一源卷110a上的数据集实例的第一数据块的扇区和轨道地址。
定位模块215还可以将相应备份卷115的地址附加到分析的物理地址以形成备份卷115上的数据集实例的地址。继续上述实例,定位模块215可以将第一备份卷115a的物理地址标识符附加到第一源卷110a上的数据集实例的第一数据块的扇区和轨道地址,以形成位于第一备份卷115a上的第一数据块的地址,其中第一备份卷115a对应于第一源卷110a。所述地址可以在备份卷115上定位数据集。
在一个实施例中,定位模块215通过形成数据集的多个地址来定位430数据集。例如,定位模块215可以形成限定数据集的一部分在备份卷115上的界限的起始地址和结束地址。此外,定位模块215可以形成多个起始和结束地址对。起始和结束地址对可以寻址位于一个或多个备份卷115上的数据集的各部分。在特定实施例中,起始和结束地址对都指定了数据集的条。
恢复模块220从备份卷115将数据集恢复435为恢复的数据集。在一个实施例中,恢复模块220将由一个或多个起始和结束地址对指定的数据块复制到一个或多个目标卷。目标卷可以是源卷110。备选地,目标卷可以位于客户机120上。在一个实施例中,恢复模块220捕获并存储恢复的数据集的元数据。恢复模块220可以包括来自数据集的源卷实例的目录的元数据和/或在复制期间捕获以创建元数据的大小和位置数据。
在一个实施例中,验证模块225验证440成功恢复了恢复的数据集且方法400结束。在特定实施例中,验证模块225确定恢复的数据集的总分配空间。在一个实施例中,总分配空间是分配以容纳恢复的数据集的存储空间。在备选实施例中,总分配空间是由恢复的数据集占据的存储空间。验证模块225可以将总分配空间确定为用于在目标卷上存储恢复的数据集的字节、字和/或数据块的总数。在一个实施例中,如果由数据集大小模块230捕获405的数据集的数据集大小基本等于总分配空间,则验证模块225验证440成功恢复了数据集。
在一个实施例中,恢复的数据集的总分配空间包括数据部分大小和索引部分大小。如果备份卷的数据集数据部分大小的和基本等于总分配空间数据部分大小以及如果备份卷的数据集索引部分大小的和基本等于总分配空间索引部分大小,则验证模块225可以验证440成功恢复了数据集。
在一个实施例中,如果将数据集作为条状数据存储在源卷110上,则验证模块225捕获每个条的总分配空间。如果恢复的数据集的每个条的总分配空间基本等于每个相应的数据集条大小以及如果恢复的条的总数基本等于数据集的条数,则验证模块225可以验证440成功恢复了数据集。
在一个实施例中,验证模块225在逐块复制期间捕获数据集的总分配空间。如果恢复的数据集的总分配空间基本等于备份操作时数据集的总分配空间,则验证模块225可以验证440成功恢复了数据集。此外,验证模块225可以验证440成功恢复了数据集,即使并非所有编目了数据集的源卷110都在恢复435时包含数据集的备份数据。例如,如果在备份模块210将数据集备份405到备份卷之后,将一个或多个数据块添加到位于源卷110上的数据集的实例,则在备份405数据集时恢复的数据集的数据大小基本等于数据集的总分配空间的情况下,验证模块225可以验证440成功恢复了数据集。
在一个实施例中,如果恢复了数据集的卷序列的每个卷,恢复了卷序列的第一个卷,以及带有最高卷序列号的卷具有最后卷指示符集,则验证模块205验证440成功恢复了数据集。例如,卷序列可以包括第一、第二,和第三源卷110a、110b、110c。第一、第二和第三源卷110a、110b、110c在逐块复制中复制到备份卷115a、115b、115c。第三源卷110c可以包括最后卷指示符,该指示符配置为第三源卷110c(作为逐块复制的一部分复制到第三备份卷115c)的数据字段、数据标志等中的数据字。第一备份卷115a是卷序列的第一个卷,而第三备份卷115c是卷序列的最后卷。恢复模块220可以从第一、第二和第三备份卷115a、115b、115c恢复435数据集的各部分。验证模块225可以验证440成功恢复了数据集,因为恢复了第一、第二和第三备份卷115a、115b、115c,恢复了第一备份卷115a,卷顺序是连续的,并且至少一个恢复的卷具有最后卷指示符集。
如果验证模块225没有验证440成功恢复了数据集,则检索模块210传输445错误消息且方法400结束。检索模块210可以将所述错误消息发送445给客户机120、存储控制器105和/或管理员。方法400使用目录元数据来定位430数据集并从备份卷115恢复435数据集。
图5是示出本发明的存储卷500的一个实施例的示意性方块图。卷500的说明引用了图1-4的元素,相同的标号表示相同的元素。将图1的源卷110示为存储器映射。还示出了目录505。可以将目录505存储在存储控制器105的存储器模块310中。
将数据集510示为存储在第一、第二和第三源卷110a、110b、110c上。目录505包括可以指定数据集510在源卷110上的位置的元数据。所述元数据可以包括第一地址515a和第二地址515b,其中地址515指定了数据集510在源卷110上的位置。尽管为了简洁,两个地址515指定了数据集510的位置,但是可以使用任何数量的地址515。
图6是示出了本发明的备份卷600的一个实施例的示意性方块图。卷600的说明引用了图1-5的元素,相同的标号表示相同的元素。将图1的备份卷115示为存储器映射。此外,示出了作为图5的源卷110的物理副本复制到备份卷115的数据集510。因此,图5的第一和第二地址515a、515b还定位位于备份卷115上的数据集510的实例。定位模块215可以使用地址515来定位430数据集510,这允许恢复模块220将数据集510恢复435到多个目标卷。
本发明的实施例在没有备份卷元数据以便定位数据集510的情况下定位430位于多个备份卷115上的数据集510。此外,本发明的实施例使用存储在源卷110上的数据集510的实例的元数据来恢复435数据集510。
可以以其他特定形式实现本发明而不偏离本发明的精神和本质特性。所述实施例在所有方面都只是被视为示例性的而非限制性的。因此,本发明的范围由所附权利要求而非上述说明来指示。所有在权利要求的等效含义和范围之内的更改都旨在被包含在权利要求的范围内。
Claims (19)
1.一种用于恢复物理备份的多卷数据的装置,所述装置包括:
检索模块,配置为从目录检索数据集的元数据,其中所述元数据指定了所述数据集的实例在多个源卷上的位置;
定位模块,配置为使用所述元数据在多个备份卷上定位所述数据集;以及
恢复模块,配置为从所述多个备份卷将所述数据集恢复为恢复的数据集。
2.如权利要求1中所述的装置,还包括验证模块,该模块配置为验证成功恢复了所述恢复的数据集。
3.如权利要求2中所述的装置,还包括备份模块,该模块配置为将所述多个源卷物理地备份到所述多个备份卷,以及数据集大小模块,该模块配置为在所述物理备份期间捕获所述数据集的数据集大小。
4.如权利要求3中所述的装置,其中所述验证模块还配置为通过确定所述恢复的数据集的总分配空间等于所述数据集大小来验证成功恢复了所述数据集。
5.如权利要求3中所述的装置,其中所述数据集大小包括每个备份卷的数据部分大小和索引部分大小,所述恢复的数据集的所述总分配空间包括数据部分大小和索引部分大小,并且所述验证模块通过确定所述备份卷的数据集数据部分大小的和等于总分配空间数据部分大小以及确定所述备份卷的数据集索引部分大小的和等于总分配空间索引部分大小来验证成功恢复了所述数据集。
6.如权利要求3中所述的装置,其中将所述数据集实例作为多个条存储在所述多个源卷上,并且其中所述数据集大小模块配置为在所述物理备份期间捕获所述数据集的每个条的数据集条大小和所述数据集的条数,并且所述验证模块通过确定所述恢复的数据集的每个条的总分配空间等于每个相应的数据集条大小以及确定恢复的条数等于所述数据集的所述条数来验证成功恢复了所述数据集。
7.一种用于恢复物理备份的多卷数据的方法,所述方法包括:
从目录检索数据集的元数据,其中所述元数据指定了所述数据集的实例位于多个源卷上的位置;
使用所述元数据在多个备份卷上定位所述数据集;以及
从所述多个备份卷将所述数据集恢复为恢复的数据集。
8.如权利要求7中所述的方法,其中还验证成功恢复了所述恢复的数据集。
9.如权利要求8中所述的方法,其中还将所述多个源卷物理地备份到所述多个备份卷。
10.如权利要求9中所述的方法,其中还在不备份位于所述多个源卷上的所述数据集的元数据的情况下将所述多个源卷备份到所述多个备份卷。
11.如权利要求9中所述的方法,其中还在所述物理备份期间捕获所述数据集的数据集大小。
12.如权利要求11中所述的方法,其中还通过确定所述恢复的数据集的总分配空间等于所述数据集大小来验证成功恢复了所述数据集。
13.如权利要求11中所述的方法,其中所述数据集大小包括每个备份卷的数据部分大小和索引部分大小,并且所述恢复的数据集的所述总分配空间包括数据部分大小和索引部分大小,并且还通过确定所述备份卷的数据集数据部分大小的和等于总分配空间数据部分大小以及确定所述备份卷的数据集索引部分大小的和等于总分配空间索引部分大小来验证成功恢复了所述数据集。
14.如权利要求8中所述的方法,其中还在所述物理备份期间捕获所述数据集的每个条的数据集条大小和所述数据集的条数,并且还通过确定所述恢复的数据集的每个条的总分配空间等于每个相应的数据集条大小以及确定恢复的条数等于所述数据集的所述条数来验证成功恢复了所述数据集。
15.如权利要求8中所述的方法,其中还通过确定在备份操作时所述恢复的数据集的总分配空间等于所述数据集的总分配空间来验证成功恢复了所述数据集,即使并非所有编目了所述数据集的源卷都在恢复时包含所述数据集的备份数据。
16.如权利要求8中所述的方法,其中还通过确定恢复了所述数据集的卷序列的每个卷、确定恢复了所述卷序列的第一个卷、确定所述卷序列连续,以及确定至少一个卷具有最后卷指示符集来验证成功恢复了所述数据集。
17.一种用于恢复物理备份的多卷数据集的系统,所述系统包括:
多个源卷,配置为存储数据集的实例;
多个备份卷,配置为存储所述数据集;
目录,配置为存储在所述多个源卷上存储的所述数据集的所述实例的元数据;
存储控制器,配置为管理所述多个源卷、所述多个备份卷以及所述目录,并且包括:
检索模块,配置为从所述目录检索所述数据集的元数据;
定位模块,配置为使用所述元数据在所述多个备份卷上定位所述数据集;
恢复模块,配置为从所述多个备份卷将所述数据集恢复为恢复的数据集;以及
验证模块,配置为验证成功恢复了所述恢复的数据集。
18.如权利要求17中所述的系统,还包括备份模块,该模块配置为将所述多个源卷物理地备份到所述多个备份卷,以及数据集大小模块,该模块配置为在所述物理备份期间捕获所述数据集的数据集大小。
19.如权利要求18中所述的系统,其中所述验证模块配置为通过确定所述恢复的数据集的总分配空间等于所述数据集大小来验证成功恢复了所述数据集。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/531,857 | 2006-09-14 | ||
US11/531,857 US7613946B2 (en) | 2006-09-14 | 2006-09-14 | Apparatus, system, and method for recovering a multivolume data set |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101145120A CN101145120A (zh) | 2008-03-19 |
CN100573464C true CN100573464C (zh) | 2009-12-23 |
Family
ID=39207658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101492997A Expired - Fee Related CN100573464C (zh) | 2006-09-14 | 2007-09-11 | 恢复多卷数据集的装置、系统和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7613946B2 (zh) |
CN (1) | CN100573464C (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8190575B1 (en) * | 2008-08-27 | 2012-05-29 | Western Digital Technologies, Inc. | Disk drive maintaining multiple copies of code segments |
US8307878B2 (en) | 2009-01-14 | 2012-11-13 | Hunter Douglas Inc. | Noise dampening motor drive system for retractable covering for architectural openings |
US8522073B2 (en) * | 2009-02-03 | 2013-08-27 | Bittorrent, Inc. | Distributed storage of recoverable data |
AU2010211285B2 (en) * | 2009-02-09 | 2016-08-25 | Hunter Douglas Industries B.V. | Spring system for roller blinds |
US8554736B2 (en) * | 2009-04-30 | 2013-10-08 | Hewlett-Packard Development Company, L.P. | Backup method |
US8862816B2 (en) * | 2010-01-28 | 2014-10-14 | International Business Machines Corporation | Mirroring multiple writeable storage arrays |
NL1039407C2 (en) | 2012-02-27 | 2013-08-28 | Hunter Douglas Ind Bv | Architectural covering having a drive mechanism for extending and retracting a covering member between opposite first and second end positions. |
US8892941B2 (en) | 2012-06-27 | 2014-11-18 | International Business Machines Corporation | Recovering a volume table and data sets from a corrupted volume |
CN102915324B (zh) * | 2012-08-09 | 2016-08-03 | 深圳中兴网信科技有限公司 | 数据存储与检索装置和数据存储与检索方法 |
US9639428B1 (en) * | 2014-03-28 | 2017-05-02 | EMC IP Holding Company LLC | Optimized backup of clusters with multiple proxy servers |
US9753955B2 (en) | 2014-09-16 | 2017-09-05 | Commvault Systems, Inc. | Fast deduplication data verification |
US10435945B2 (en) | 2014-11-10 | 2019-10-08 | Hunter Douglas Inc. | Covering for an architectural opening including multiple stage spring assembly |
US9639274B2 (en) | 2015-04-14 | 2017-05-02 | Commvault Systems, Inc. | Efficient deduplication database validation |
US10185500B1 (en) * | 2015-06-26 | 2019-01-22 | EMC IP Holding Company LLC | Dynamic parallelism |
US10241703B2 (en) * | 2016-06-21 | 2019-03-26 | International Business Machines Corporation | Multivolume group management |
JP6150934B1 (ja) * | 2016-10-17 | 2017-06-21 | 三菱重工業株式会社 | 情報処理方法、情報処理装置、プログラム、及び情報処理システム |
US20200065198A1 (en) * | 2018-08-27 | 2020-02-27 | International Business Machines Corporation | Deleted data set preservation and recovery |
US11341106B2 (en) | 2019-07-19 | 2022-05-24 | Commvault Systems, Inc. | Deduplication system without reference counting |
CN112527566B (zh) * | 2020-12-24 | 2023-11-21 | 广东芬尼科技股份有限公司 | 设备掉电运行参数读写异常保护方法、系统和存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6530035B1 (en) | 1998-10-23 | 2003-03-04 | Oracle Corporation | Method and system for managing storage systems containing redundancy data |
JP3763992B2 (ja) | 1999-03-30 | 2006-04-05 | 富士通株式会社 | データ処理装置及び記録媒体 |
US6542972B2 (en) | 2000-01-31 | 2003-04-01 | Commvault Systems, Inc. | Logical view and access to physical storage in modular data and storage management system |
US6578121B1 (en) | 2001-02-05 | 2003-06-10 | Emc Corporation | File mapping system and related techniques |
JP2003202964A (ja) | 2002-01-09 | 2003-07-18 | Hitachi Ltd | 計算機システムの制御方法、計算機システム、記憶装置の制御方法及び記憶装置 |
US6829688B2 (en) | 2002-06-20 | 2004-12-07 | International Business Machines Corporation | File system backup in a logical volume management data storage environment |
US7814128B2 (en) | 2003-05-30 | 2010-10-12 | Symantec Operating Corporation | Multi-volume file support |
US7146475B2 (en) | 2003-11-18 | 2006-12-05 | Mainstar Software Corporation | Data set level mirroring to accomplish a volume merge/migrate in a digital data storage system |
US7185157B2 (en) | 2004-03-29 | 2007-02-27 | International Business Machines Corporation | Method, system, and article of manufacture for generating a copy of a first and a second set of volumes in a third set of volumes |
US7409494B2 (en) | 2004-04-30 | 2008-08-05 | Network Appliance, Inc. | Extension of write anywhere file system layout |
US7360113B2 (en) * | 2004-08-30 | 2008-04-15 | Mendocino Software, Inc. | Protocol for communicating data block copies in an error recovery environment |
JP2006309447A (ja) * | 2005-04-27 | 2006-11-09 | Hitachi Ltd | 記憶システム及びバックアップ方法 |
-
2006
- 2006-09-14 US US11/531,857 patent/US7613946B2/en not_active Expired - Fee Related
-
2007
- 2007-09-11 CN CNB2007101492997A patent/CN100573464C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20080126723A1 (en) | 2008-05-29 |
US7613946B2 (en) | 2009-11-03 |
CN101145120A (zh) | 2008-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100573464C (zh) | 恢复多卷数据集的装置、系统和方法 | |
CN101589371B (zh) | 向分级存储系统透明备份的方法和系统 | |
US8250033B1 (en) | Replication of a data set using differential snapshots | |
US7069466B2 (en) | Method and system for copying backup data | |
US7882081B2 (en) | Optimized disk repository for the storage and retrieval of mostly sequential data | |
US7761426B2 (en) | Apparatus, system, and method for continuously protecting data | |
CN104040481B (zh) | 用于融合、存储和检索增量式备份数据的方法和系统 | |
CN101535961B (zh) | 使用元数据检测连续远程复制中的不匹配的装置、系统和方法 | |
CN100524235C (zh) | 存储网络中的恢复操作 | |
US7774565B2 (en) | Methods and apparatus for point in time data access and recovery | |
JP3149325B2 (ja) | 災害復旧機能を提供するために整合性グループを形成する方法および関連するシステム | |
KR100890573B1 (ko) | 에뮬레이팅된 저장 시스템 | |
CA2178213C (en) | Incremental backup system | |
CN100561447C (zh) | 将存储卷呈现为虚拟卷的装置、系统和方法 | |
US20030014605A1 (en) | Data backup | |
CN100487665C (zh) | 按时间点拷贝关系切换卷地址关联的设备、系统和方法 | |
JPH07239799A (ja) | 遠隔データ・シャドーイングを提供する方法および遠隔データ二重化システム | |
US20060015767A1 (en) | Reducing data loss and unavailability by integrating multiple levels of a storage hierarchy | |
CN101105738A (zh) | 用于并行存储池迁移和备份的装置、系统和方法 | |
JP2006134217A (ja) | ライブラリシステム,仮想ライブラリ装置,及びキャッシュ復元方法 | |
JP2006059347A (ja) | ジャーナリングを使用した記憶システム | |
WO2014075586A1 (zh) | 一种jbod阵列自动恢复存储的方法和装置 | |
WO2017014814A1 (en) | Replicating memory volumes | |
CN105302665A (zh) | 一种改进的写时拷贝快照方法及系统 | |
US20080155319A1 (en) | Methods and systems for managing removable media |
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 |
Granted publication date: 20091223 Termination date: 20200911 |
|
CF01 | Termination of patent right due to non-payment of annual fee |