CN101105738A - 用于并行存储池迁移和备份的装置、系统和方法 - Google Patents
用于并行存储池迁移和备份的装置、系统和方法 Download PDFInfo
- Publication number
- CN101105738A CN101105738A CN200710128130.3A CN200710128130A CN101105738A CN 101105738 A CN101105738 A CN 101105738A CN 200710128130 A CN200710128130 A CN 200710128130A CN 101105738 A CN101105738 A CN 101105738A
- Authority
- CN
- China
- Prior art keywords
- storage pool
- pond
- data file
- storage
- data
- 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.)
- Pending
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/1464—Management of the backup or restore process for networked environments
-
- 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
-
- 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
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- 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
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- 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
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
Abstract
本发明披露了一种用于并行存储池迁移和备份的装置、系统和方法。关联模块将至少一个复制池与第二存储池关联。迁移模块将至少一个数据文件从第一存储池并行迁移到所述第二存储池,并将所述至少一个数据文件复制到每个与所述第二存储池关联且尚未存储所述至少一个数据文件的实例的复制池。在一个实施例中,所述迁移模块还将所述第二存储池无法接收的每个数据文件并行迁移到第三存储池。
Description
技术领域
本发明涉及存储池迁移,更具体地说,涉及并行存储池迁移和备份。
背景技术
数据处理系统通常将数据从系统的一个或多个元件备份到存储子系统。例如,数据处理系统可以包括多个客户端。客户端可以将数据存储在诸如与每个客户端位于一起的硬盘驱动器之类的存储设备中。数据处理系统可以将数据从客户端存储设备备份到存储子系统。
存储子系统可以包括一个或多个被组织到多个存储池中的存储设备。存储池可以被配置为包含一个或多个磁带驱动器、一个或多个硬盘驱动器、一个或多个光存储设备、一个或多个微机械存储设备等的各部分的一个或多个逻辑卷。可以通过将客户端数据存储在存储池中来对其进行备份。
存储池可以被组织为存储层次结构。在存储层次结构中处于较高位置的存储池可以存储频繁被访问的数据,而在存储层次结构中处于较低位置的存储池可以存储不经常被访问的数据。例如,第一存储池可以使用可更容易和更快速地访问的存储设备,并存储更可能被访问的数据(例如最近备份的数据)。第二和/或第三存储池可以使用不那么容易访问并且更经济有效的存储设备来存储不太可能被访问的数据(例如几周之前归档的数据)。
存储子系统可以在存储层次结构中的存储池之间迁移数据。例如,客户端可以将数据备份到第一存储池。可以定期在预定的时间执行备份操作。第一存储池可以包含多个硬盘驱动器。可以容易地获得备份的数据以便恢复到客户端。此后,随着备份数据变旧并且不太可能恢复到客户端,存储子系统可以将备份数据从第一存储池迁移到第二存储池。第二存储池可能不经常被访问并以较低的成本存储数据,从而降低了长期存储备份数据的成本。
存储子系统还可以将数据从存储备份到归档存储设备(在此被称为复制池)。复制池可以是以低成本存储大量数据的磁带驱动器。存储子系统可以将数据文件从存储池复制到复制池以备份存储池。
遗憾的是,存储子系统执行的大量迁移和复制可能会减少存储子系统的可用带宽。结果,存储子系统可能需要更昂贵的硬件,和/或为客户端提供较低级的服务。
根据上述讨论应显而易见的是,需要一种减少用于迁移和复制数据文件的带宽需求的装置、系统和方法。有益地,此类装置、系统和方法将减少执行存储池迁移和备份操作所需的带宽。
发明内容
已开发本发明以响应本领域的当前状况,具体地说,响应本领域中通过当前可用的并行复制方法尚未完全解决的问题和需求。相应地,已开发本发明以提供一种克服本领域中上述许多或全部缺点的用于并行存储池迁移和备份的装置、系统和方法。
用于并行存储池迁移和备份的装置具备多个模块,所述模块被配置为在功能上执行以下步骤:将至少一个复制池与第二存储池关联、将至少一个数据文件从第一存储池并行迁移到所述第二存储池,以及将所述至少一个数据文件复制到每个与所述第二存储池关联且尚未存储所述至少一个数据文件的实例的复制池。所述实施例中的这些模块包括关联模块和迁移模块。
所述关联模块将一个或多个复制池与第二存储池关联。所述第二存储池可以被组织在存储层次结构中并可以从属于第一存储池。在一个实施例中,所述复制池被配置为磁带驱动器。
所述迁移模块将一个或多个数据文件从所述第一存储池迁移到所述第二存储池。此外,所述迁移模块将每个数据文件并行复制到每个与所述第二存储池关联且尚未存储所述数据文件的实例的复制池。
在一个实施例中,所述迁移模块将所述第二存储池无法包含的每个数据文件并行迁移到第三存储池。所述第三存储池可以被组织在所述存储层次结构中并可以从属于所述第二存储池。在特定实施例中,所述第三存储池并不直接从属于所述第二存储池。例如,至少一个第四存储池可以直接从属于所述第二存储池,而所述第三存储池可以直接从属于所述第四存储池。所述装置将一个或多个数据文件从所述第一存储池并行迁移到所述第二存储池以及迁移到一个或多个复制池,从而减少迁移操作所需的带宽。
还提供了本发明的用于并行存储池迁移和备份的系统。所述系统可以被包含在存储子系统中。具体地说,在一个实施例中,所述系统包括包含第一存储池、第二存储池以及至少一个第一复制池的存储层次结构。所述系统还包括包含关联模块和迁移模块的存储管理器。此外,所述系统可以包括第三存储池。
所述第一存储池被配置为存储数据。在一个实施例中,所述第一存储池存储来自客户端的备份数据。所述第二存储池也被配置为存储数据并在所述存储层次结构中从属于所述第一存储池。所述至少一个第一复制池被配置为备份存储池。在一个实施例中,所述第三存储池也存储数据并在所述存储层次结构中从属于所述第二存储池。
所述存储管理器管理所述存储层次结构。所述关联模块将所述至少一个第一复制池与所述第二存储池关联。所述迁移模块将至少一个数据文件从所述第一存储池并行迁移到所述第二存储池,并将所述至少一个数据文件复制到每个与所述第二存储池关联且尚未存储所述至少一个数据文件的实例的第一复制池。在一个实施例中,所述迁移模块将所述第二存储池无法包含的每个数据文件迁移到所述第三存储池。所述系统并行执行一个或多个数据文件的迁移和存储池备份以减少这些操作所需的带宽。
还提供了本发明的用于并行存储池迁移和备份的方法。所披露的实施例中的方法实质上包括根据所述装置和系统的操作执行上述功能的步骤。在一个实施例中,所述方法包括将至少一个复制池与第二存储池关联、将至少一个数据文件从第一存储池并行迁移到所述第二存储池,以及将所述至少一个数据文件复制到每个与所述第二存储池关联且尚未存储所述至少一个数据文件的实例的复制池。
关联模块将至少一个复制池与第二存储池关联。迁移模块将至少一个数据文件从第一存储池并行迁移到所述第二存储池,并将所述至少一个数据文件复制到每个与所述第二存储池关联且尚未存储所述至少一个数据文件的实例的复制池。在一个实施例中,所述迁移模块还将所述第二存储池无法包含的每个数据文件并行迁移到第三存储池。所述方法将一个或多个数据文件从所述第一存储池并行迁移到存储池,并对所述数据文件执行存储池到复制池的备份,从而提高迁移操作的效率。
本说明书中对功能、优点的参考或类似语言并非暗示可以与本发明一起实现的所有功能和优点应在本发明的任何单个实施例中。相反,应当理解,引用所述功能和优点的语言指与实施例一起描述的特定功能、优点或特性包括在本发明的至少一个实施例中。因此,本说明书中对功能、优点的讨论和类似语言可以(但并不一定)指相同的实施例。
此外,本发明的所述功能、优点和特性可以以任何适当的方式组合在一个或多个实施例中。相关领域的技术人员将认识到,可以在没有特定实施例的一个或多个特定功能或优点的情况下实现本发明。在其他情况下,可以在特定实施例中认识到可能不存在于本发明的所有实施例中的其他功能和优点。
本发明的实施例将一个或多个数据文件从第一存储池并行迁移到第二存储池,并对数据文件执行存储池到一个或多个复制池的备份。此外,本发明的实施例可以通过将第二存储池无法接收的每个数据文件并行迁移到第三存储池,来缓解所述第二存储池无法包含一个或多个文件的状况。从以下说明,本发明的这些功能和优点将变得更加显而易见,或者通过实现如下文所述的本发明,可以了解本发明的这些功能和优点。
附图说明
为了容易地理解本发明的优点,将通过参考附图中示出的特定实施例说明上面简要介绍的本发明的更具体的说明。应当理解,这些附图仅示出了本发明的典型实施例,并且因此不应被视为限制其范围,将通过使用附图以其他特性和详细信息来介绍和说明本发明,这些附图是:
图1是示出根据本发明的数据处理系统的一个实施例的示意性方块图;
图2是示出本发明的存储层次结构的一个实施例的示意性方块图;
图3是示出本发明的迁移装置的一个实施例的示意性方块图;
图4是示出本发明的存储管理器的一个实施例的示意性方块图;
图5是示出本发明的并行迁移方法的一个实施例的示意性流程图;
图6是示出本发明的并行迁移之前的存储池的实例的一个实施例的示意性方块图;
图7是示出本发明的并行迁移之后的存储池的实例的一个实施例的示意性方块图;
图8是示出根据本发明的并行迁移之前的存储池的实例的一个备选实施例的示意性方块图;以及
图9是示出根据本发明的并行迁移之后的存储池的实例的一个备选实施例的示意性方块图。
具体实施方式
将本说明书中描述的多个功能单元标记为模块,以便更具体地强调它们的实现无关性。例如,模块可以被实现为包括定制VLSI电路或门阵列、诸如逻辑芯片、晶体管或其他分离组件之类的现用半导体的硬件电路。模块还可以在诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑器件之类的可编程硬件设备中实现。
模块还可以在软件中实现,以便由各种类型的处理器执行。例如,标识的可执行代码的模块可以包括一个或多个物理或逻辑的计算机指令块,所述块可以例如组织为对象、过程或功能。然而,标识的模块的可执行代码不需要在物理上位于一起,但是可以包括存储在不同位置的不同指令,当所述指令被逻辑地结合时,将包括所述模块并实现模块的所述目的。
实际上,可执行代码的模块可以是单个指令或多个指令,并且甚至可以分布在数个不同的代码段上、多个不同的程序中,以及跨多个存储器设备。同样,操作数据可以在模块中被标识和在此示出,并且可以包括在任何适当的形式中并组织在任何适当类型的数据结构中。操作数据可以被收集为单个数据集,或可以分布在包括不同存储设备的不同位置上,并且可以至少部分地仅作为电子信号存在于系统或网络中。
本说明书中对“一个实施例”、“实施例”或类似语言的引用指结合该实施例描述的特定功能、结构或特性被包括在本发明的至少一个实施例中。因此,本说明书中出现的短语“在一个实施例中”、“在实施例中”和类似语言可以(但是并非一定)都指相同的实施例。
此外,本发明的所述功能、结构或特性可以以任何适当的形式组合在一个或多个实施例中。在以下说明中,提供了大量特定的详细信息,如编程、软件模块、用户选择、网络事务、数据库查询、数据库结构、硬件模块、硬件电路、硬件芯片等的实例,以便彻底理解本发明的实施例。但是,本领域的技术人员将认识到,可以在没有一个或多个特定的细节的情况下实现本发明,或者可以通过其他方法、组件、材料等实现本发明。在其他情况下,未详细示出或描述公知的结构、材料或操作以避免使本发明的各方面变得模糊不清。
图1是示出根据本发明的数据处理系统100的一个实施例的示意性方块图。系统100包括一个或多个客户端105、存储管理器110、一个或多个磁带驱动器125、一个或多个独立磁盘冗余阵列(RAID)控制器115、一个或多个盘驱动器120以及一个或多个光存储设备130。虽然为了简洁,系统100被示为具有两个客户端105、一个存储管理器110、两个磁带驱动器125、两个RAID控制器115、六个盘驱动器120以及两个光存储设备130,但是可以使用任意数量的客户端105、存储管理器110、磁带驱动器125、RAID控制器115、盘驱动器120以及光存储设备130。
磁带驱动器125、RAID控制器115、盘驱动器120以及光存储设备130在此被统称为存储设备。此外,系统100可以包括一个或多个包括微机械存储设备、半导体存储设备等在内的备选存储设备。
在一个实施例中,存储管理器110可以从客户端105备份数据。在一个实例中,存储管理器110可以将一个或多个数据文件从第一客户端105a复制到诸如由第一RAID控制器115a控制的第一盘驱动器120a之类的存储设备。如果第一客户端105a随后需要数据文件,则存储管理器110可以将数据文件从第一盘驱动器120a复制到第一客户端105a以恢复第一客户端105a的数据文件。在一个实施例中,存储管理器110将所有数据文件从客户端105复制到存储设备。在备选实施例中,存储管理器110将在先前备份之后被修改的每个数据文件复制到存储设备。
存储设备还可以直接存储客户端105的数据。例如,第一RAID控制器115a可以将客户端105的数据库数据存储在盘驱动器120上。客户端105可以通过第一RAID控制器115a存储和接收数据。RAID控制器115可以将数据库数据存储为冗余数据,如本领域的技术人员所公知的那样。
系统100可以将存储设备组织为多个存储池。存储池可以包括诸如第一光存储设备130a、安装在第一磁带驱动器125a中的磁带之类的存储设备的一部分。系统100可以将存储池组织为存储层次结构,如下文将描述的那样。此外,系统100可以在池之间移动数据,以延长或缩短访问数据的等待时间以及降低或增加存储数据的成本。
图2是示出本发明的存储层次结构200的一个实施例的示意性方块图。层次结构200包括一个或多个存储池205以及一个或多个复制池210。此外,图1的数据处理系统100可以包含层次结构200。对层次结构200的描述引用图1的元素,相同的编号引用相同的元素。
每个存储池205可以包含一个或多个存储设备的一部分。例如,第一存储池205a可以包含第一RAID控制器115a以及第一、第二和第三盘驱动器120a-c,第二存储池205b可以包含第二RAID控制器115b以及第四、第五和第六盘驱动器120d-f。此外,第三存储池205c可以包含第一光存储设备130a,而第四存储池205d可以包含第二光存储设备130b。复制池210也可以包含一个或多个存储设备的一部分。
存储管理器110可以在存储池205之间迁移数据文件,以便更容易地提供更可能被访问的数据文件。例如,存储管理器110可以将前一天从客户端105备份到第一存储池205a的数据文件迁移到第二存储池205b。存储管理器110还可以将当前数据文件从客户端105备份到第一存储池205a。因此,可以从第一存储池205a访问当前的备份数据文件,而可以从第二存储池205b访问前一天的备份数据文件。在一个实施例中,在第二存储池205b中存储数据文件的单位成本低于在第一存储池205a中存储数据文件的单位成本。
第二和第三存储池205b、205c被示为与两个复制池210关联。但是,任何存储池205都可以具有任意数量的复制池210。例如,第一和第四存储池205a、205d也可以分别具有一个或多个复制池210。此外,存储池205可以具有一个或多个关联的复制池210,这些复制池210与和其他存储池205关联的复制池210相同。例如,图2中的复制池210a和210c实际上可以是与复制池210相同。复制池210可以被配置为复制存储池205的数据文件作为备份副本。在一个实例中,第一复制池210a可以被配置为磁带驱动器125。第一复制池210a被示为与第二存储池205关联,其中第一复制池210a可以接收存储在第二存储池205b中的所有数据文件的副本并存储副本。在特定实施例中,复制池210可以通过将数据写入磁带来存储数据。
存储管理器110可以在存储池205之间迁移数据文件并将数据文件复制到复制池210。由于存储管理器110可以迁移和复制大量数据,因此迁移和复制操作可能会占用大量存储层次结构带宽。
例如,存储管理器110可以将一个或多个数据文件从第一存储池205a迁移到第二存储池205b。迁移数据文件可以释放存储空间以便将新的客户端备份数据文件存储在第一存储池205a中。此外,存储管理器110可以将数据文件复制到第一和第二复制池210a、210b以备份第二存储池205b。本发明的实施例将第一存储池205a的数据文件并行迁移到第二存储池205b并将数据文件复制到复制池210,如下文将解释的那样。
图3是示出本发明的迁移装置300的一个实施例的示意性方块图。装置300包括关联模块310和迁移模块315。对装置300的描述引用图1-2的元素,相同的编号引用相同的元素。装置300可以被包含在存储管理器110中。
关联模块310将一个或多个复制池210与第二存储池210b关联。例如,关联模块310可以将第一和第二复制池210a、210b与第二存储池210b关联,如图2中所示。
迁移模块315将一个或多个数据文件从第一存储池205a迁移到第二存储池205b。此外,迁移模块315将数据文件并行复制到每个与第二存储池205b关联且尚未存储数据文件实例的复制池210。例如,迁移模块315可以将第一和第二数据文件从第一存储池205a迁移到第二存储池205b,并将第一数据文件并行复制到第一和第二复制池210a、210b。但是,如果第二复制池210b已存储第二数据文件的实例,则迁移模块315可以仅将第二数据文件复制到第一复制池210a。下文将描述迁移数据文件的实例。
在一个实施例中,迁移模块315将第二存储池205b无法包含的每个数据文件并行迁移到第三存储池205c。第三存储池205c可以直接从属于第二存储池205b,其中第三存储池205c被配置为接收直接从第二存储池205b迁移的数据文件。
在备选实施例中,第三存储池205c并不直接从属于第二存储池205b。例如,可以更改图2的存储池205的顺序,使第四存储池205d直接从属于第二存储池205b,而第三存储池205c可以直接从属于第四存储池205d。迁移模块315可以绕过如此配置的第四存储池205d,并将第二存储池205b无法接收的每个数据文件并行迁移到第三存储池205c。
装置300将一个或多个数据文件从第一存储池205a并行迁移到第二存储池205b,并将所述数据文件复制到一个或多个复制池210。通过并行迁移和复制数据文件,装置300可以减少存储池迁移和备份操作所需的带宽。例如,存储控制器110可以仅执行单个并行操作来进行将数据文件迁移到第二存储池205b和将数据文件复制到复制池210的两个操作。结果,存储控制器110处理占用的带宽、通信通道业务占用的带宽等将减少。
图4是示出本发明的存储管理器110的一个实施例的示意性方块图。存储管理器110和客户端105可以是图1的存储管理器110和客户端105,而存储设备430代表图1中所述的存储设备。虽然仅示出了一个存储设备430,但是可以使用任意数量的存储设备430。此外,对存储管理器110的描述引用图1-3的元素,相同的编号引用相同的元素。
存储管理器110包括处理器模块405、存储器模块410、桥接模块415、网络接口模块420以及存储接口模块425。此外,存储管理器110示为与客户端105和存储设备430通信。
处理器模块405、存储器模块410、桥接模块415、网络接口模块420以及存储接口模块425可以由一个或多个半导体衬底上的半导体门来制造。每个半导体衬底可以被封装在一个或多个安装在电路卡上的半导体器件中。处理器模块405、存储器模块410、桥接模块415、网络接口模块420以及存储接口模块425之间的连接可以通过半导体金属层、衬底到衬底布线、电路卡接线和/或连接半导体器件的导线来实现。
存储器模块410存储软件指令和数据。处理器模块405执行软件指令并处理数据,如本领域的技术人员所公知的那样。处理器模块405通过桥接模块415与网络接口模块420和存储接口模块425通信。网络接口模块420可以通过诸如以太网通道、令牌环通道之类的通信通道与客户端105通信。存储接口模块425可以通过诸如光纤通道通信通道、小型计算机系统接口(SCSI)通道、以太网通道之类的存储通道与存储设备430通信。
在一个实施例中,存储器模块410存储而处理器模块405执行一个或多个由关联模块310和迁移模块315组成的软件过程。存储器模块410可以维护将每个存储池205与一个或多个复制池210关联的数据表。在一个实施例中,所述数据表记录关联是主要关联还是临时关联,如下文将描述的那样。
关联模块310可以通过将指示关联的数据写入所述数据表来将复制池210与存储池205关联。此外,迁移模块315可以将数据文件迁移到存储池205和复制池210,方法是通过存储接口模块425发出命令以读取数据,在一个或多个通信通道中传送数据以及写入数据。
通常作为逻辑流程图说明以下的示意性流程图。同样,所示顺序和标记的步骤指示所提供方法的一个实施例。可以构想其他步骤和方法,它们在功能、逻辑或效果上与所示方法的一个或多个步骤或其各部分等效。另外,提供所使用的格式和符号以说明所述方法的逻辑步骤,并且应理解它们并非限制所述方法的范围。尽管可以在流程图中使用不同的箭头类型和线条类型,但是应理解,它们并非限制相应方法的范围。实际上,某些箭头或其他连接符可用来仅指示所述方法的逻辑流。例如,箭头可以指示所示方法的枚举步骤之间的未指定持续时间的等待或监视周期。另外,出现特定方法的顺序可以或可以不严格地依照所示的相应步骤的顺序。
图5是示出本发明的并行迁移方法500的一个实施例的示意性流程图。方法500实质上包括根据图1-4的所述装置300、400和系统100、200的操作执行上述功能的步骤。此外,对方法500的描述引用图1-4的元素,相同的编号引用相同的元素。
在一个实施例中,关联模块310将一个或多个复制池210关联505到一个或多个存储池205。例如,关联模块310可以将第一复制池210a关联到第二存储池205b。关联可以是主要关联,其中复制池210a被固定地与第二存储池205b关联。
在一个实施例中,迁移模块315判定515第二存储池205b是否可以包含一个或多个从第一存储池205a迁移的数据文件。为了简洁,方法500将被描述为迁移一个数据文件。但是,可以同时迁移多个数据文件。如果迁移模块315判定515第二存储池205b可以包含数据文件,则迁移模块315将数据文件迁移530到第二存储池205b。第一复制池210a可以保持与第二存储池205b关联,并且迁移模块315继续判定535数据文件是否位于复制池210中。
如果迁移模块315判定515第二存储池205b无法包含数据文件,则关联模块310将复制池210与第三存储池205c关联520。关联模块310可以将复制池210与第三存储池205c作为临时关联来进行关联520,其中复制池210在特定期间内(例如在迁移方法500、数据文件迁移等的持续时间内)与第三存储池205c关联。
迁移模块315将第二存储池205b无法包含的数据文件迁移525到第三存储池205c,如本领域的技术人员所公知的那样。虽然迁移模块315将数据文件迁移525到第三存储池205c,但是迁移模块315不能将数据文件复制到主要与第三存储池205c关联的复制池210。
例如,第三和第四复制池210c、210d可以主要与第三存储池205c关联,如图2中所示。第三和第四复制池210c、210d被配置为在数据文件迁移到第三存储池205c的过程中接收数据文件的副本。但是,迁移模块315不会将最初目的地为第二存储池205b而实际迁移525到第三存储池205c的数据文件并行迁移到第三和/或第四复制池210c、210d。
迁移模块315判定535数据文件是否位于复制池210中。如果迁移模块315判定535数据文件位于复制池210中,则迁移模块315判定545是否迁移所有数据文件。如果迁移模块315判定535数据文件尚未位于复制池210中,则迁移模块315将数据文件并行复制540到与第二存储池205b关联的复制池210。例如,如果第一复制池210a没有存储数据文件,则迁移模块315将数据文件复制540到第一复制池210a。
虽然将数据文件迁移530到第二存储池205b以及将数据文件复制540到复制池210的步骤被示为不同的步骤,但是迁移530和复制540数据文件并行地发生。在一个实施例中,存储管理器110向通信通道执行一次写入以迁移530和复制540数据文件。同样,将数据文件迁移525到第三存储池205c以及将数据文件复制540到复制池210的步骤也并行地发生。
迁移模块315判定545是否迁移了所有数据文件。如果未迁移所有数据文件,则迁移模块315循环以判定515第二存储池205b是否可以包含来自第一存储池205a的下一个迁移的数据文件。如果迁移模块315判定545迁移了所有数据文件,则方法500结束。
方法500并行地迁移和备份一个或多个数据文件。此外,方法500通过将复制池210与第三存储池205c关联以及将数据文件并行迁移到第三存储池205c和复制池210,来缓解在并行迁移过程中第二存储池205b无法接收数据文件的状况。通过并行地执行数据文件的迁移和存储池备份,方法500可以降低分层系统200的带宽需求。
图6是示出本发明的并行迁移之前的存储池600的一个实施例的示意性方块图。池600图示了图5的方法500的实例。对池600的描述引用图1-5的元素,相同的编号引用相同的元素。
如图所示,第一存储池205a存储一个或多个数据文件:文件A 620、文件B 625和文件C 630。虽然为了简单起见,所述实例迁移三个数据文件620、625、630,但是可以迁移任意数量的数据文件。关联模块310将第二存储池205b与第一复制池210a关联505以及将第三存储池205c与第三复制池210c关联505。关联被示为主要关联635。文件620、625和630被配置为要并行迁移到第二存储池205b和第一复制池210a,如图7将示出的那样。
图7是示出本发明的并行迁移之后的存储池700的一个实施例的示意性方块图。池700继续图6的实例。此外,对池700的描述引用图1-6的元素,相同的编号引用相同的元素。
迁移模块315可以判定515第二存储池205b可以包含文件B 625和文件C 630。此外,迁移模块315可以将文件B 625和文件C 630迁移530到第二存储池205b。迁移模块315还可以判定535文件B 625没有位于第一复制池210a中并将文件B 625复制540到第一复制池210a。此外,迁移模块315判定535文件C 630位于第一复制池210a中并且不将文件C 630复制到第一复制池210a。
但是,迁移模块315可以进一步判定515第二存储池205b无法包含文件A 620。关联模块310将第一复制池210a与第三存储池205c关联520。第一复制池210a与第二存储池205b的关联可以是临时关联705。
迁移模块315将文件A 620迁移525到第三存储池205c。此外,迁移模块315判定535文件A 620没有位于第一复制池210a中并将文件A并行复制540到第一复制池210a。
图8是示出本发明的并行迁移之前的存储池800的一个备选实施例的示意性方块图。池800图示了图5的方法500的备选实例。对池800的描述引用图1-7的元素,相同的编号引用相同的元素。
如图8所示,第一存储池205a存储一个或多个数据文件:文件A 620、文件B 625和文件C 630。关联模块310将第二存储池205b与第一复制池210a和第二复制池210b关联505。关联是主要关联635。关联模块310还将第三存储池205c与第三复制池210c和第四复制池210d关联505。第三存储池205c到第三和第四复制池210c、210d的关联是主要关联635。文件620、625和630被配置为要并行迁移到第二存储池205b以及第一和第二复制池210a、210b,如图9将描述的那样。
图9是示出本发明的并行迁移之后的存储池900的一个备选实施例的示意性方块图。池900继续图8的实例。此外,对池900的描述引用图1-8的元素,相同的编号引用相同的元素。
迁移模块315判定515第二存储池205b可以包含文件B 625和文件C630。此外,迁移模块315将文件B 625和文件C 630迁移530到第二存储池205b。迁移模块315还判定535第一和第二复制池210a、210b没有存储文件B 625并将文件B 625复制540到第一和第二复制池210a、210b。此外,迁移模块315判定535文件C 630位于第一复制池210a中并仅将文件C 630复制540到第二复制池210b。
但是,迁移模块315进一步判定515第二存储池205b无法包含文件A620。关联模块310将第一和第二复制池210a、210b与第三存储池205c关联520。第一和第二复制池210a、210b与第三存储池205c的关联可以是临时关联705。
迁移模块315将文件A 620迁移525到第三存储池205c。此外,迁移模块315判定535文件A 620没有位于第一和第二复制池210a、210b中并将文件A 620复制540到第一和第二复制池210a、210b。
本发明的实施例将一个或多个数据文件从第一存储池205a并行迁移到第二存储池205,并将数据文件复制到一个或多个复制池210。通过并行地将数据文件迁移到第二存储池205以及复制到复制池210,本发明可以减小分层系统200中的存储池迁移和备份操作的带宽需求。此外,本发明可以通过将第二存储池205b无法包含的每个数据文件迁移525到第三存储池205c以及通过将数据文件并行复制540到任何与第二存储池205b关联的复制池210,来缓解第二存储池205b无法包含至少一个数据文件的状况。通过缓解第二存储池205b无法包含数据文件的状况,本发明的实施例可以缩短并行迁移到存储池205以及将存储池备份到复制池210所需的时间。出现这种功效是因为无论文件实际上被迁移到第二还是第三存储池,都使用相同的复制池资源。
可以以其他特定形式实现本发明而不偏离本发明的精神和本质特性。所述实施例在所有方面都只是被视为示例性的而非限制性的。因此,本发明的范围由所附权利要求而非上述说明来指示。所有在权利要求的等效含义和范围之内的更改都旨在被包含在权利要求的范围内。
Claims (15)
1.一种用于并行存储池迁移和备份的装置,所述装置包括:
关联模块,其配置为将至少一个第一复制池与第二存储池关联;以及
迁移模块,其配置为将至少一个数据文件从第一存储池并行迁移到所述第二存储池以及将所述至少一个数据文件复制到每个尚未存储所述至少一个数据文件的实例的第一复制池。
2.根据权利要求1的装置,所述迁移模块还配置为将所述第二存储池无法包含的每个数据文件并行迁移到第三存储池。
3.根据权利要求2的装置,其中所述关联模块还配置为在所述第二存储池无法接收至少一个数据文件时,将所述至少一个第一复制池与所述第三存储池关联。
4.根据权利要求2的装置,其中所述第三存储池在存储层次结构中从属于所述第二存储池。
5.根据权利要求2的装置,其中所述迁移模块还配置为不将所述数据文件复制到与所述第三存储池关联的至少一个第二复制池。
6.一种用于并行存储池迁移和备份的方法,所述方法包括:
将至少一个第一复制池与第二存储池关联;以及
将至少一个数据文件从第一存储池并行迁移到所述第二存储池以及将所述至少一个数据文件复制到每个尚未存储所述至少一个数据文件的实例的第一复制池。
7.根据权利要求6的方法,所述方法还包括将所述第二存储池无法包含的每个数据文件并行迁移到第三存储池。
8.根据权利要求7的方法,还包括在所述第二存储池无法接收至少一个数据文件时,将所述至少一个第一复制池与所述第三存储池关联。
9.根据权利要求7的方法,其中所述第三存储池在存储层次结构中从属于所述第二存储池。
10.根据权利要求7的方法,还包括不将所述数据文件复制到与所述第三存储池关联的至少一个第二复制池。
11.一种用于并行存储池迁移和备份的系统,所述系统包括:
存储层次结构,包括
第一存储池,其配置为存储数据;
第二存储池,其配置为存储数据并在所述存储层次结构中从属于所述第一存储池;
至少一个第一复制池;
存储管理器,其配置为管理所述存储层次结构并且包括关联模块,其配置为将所述至少一个第一复制池与所述第二存储池关联;以及
迁移模块,其配置为将至少一个数据文件从所述第一存储池并行迁移到所述第二存储池以及将所述至少一个数据文件复制到每个尚未存储所述至少一个数据文件的实例的第一复制池。
12.根据权利要求11的系统,所述迁移模块还配置为将所述第二存储池无法包含的每个数据文件并行迁移到第三存储池。
13.根据权利要求12的系统,其中所述关联模块还配置为在所述第二存储池无法接收至少一个数据文件时,将所述至少一个第一复制池与所述第三存储池关联。
14.根据权利要求12的系统,其中所述第三存储池在存储层次结构中从属于至少一个第四存储池,并且所述至少一个第四存储池从属于所述第二存储池。
15.根据权利要求12的系统,其中所述迁移模块还配置为不将所述数据文件复制到与所述第三存储池关联的至少一个第二复制池。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/457,395 | 2006-07-13 | ||
US11/457,395 US20080016390A1 (en) | 2006-07-13 | 2006-07-13 | Apparatus, system, and method for concurrent storage pool migration and backup |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101105738A true CN101105738A (zh) | 2008-01-16 |
Family
ID=38950644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710128130.3A Pending CN101105738A (zh) | 2006-07-13 | 2007-07-06 | 用于并行存储池迁移和备份的装置、系统和方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080016390A1 (zh) |
CN (1) | CN101105738A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102073462A (zh) * | 2010-11-29 | 2011-05-25 | 华为技术有限公司 | 虚拟存储迁移方法、系统和虚拟机监控器 |
CN102340530A (zh) * | 2010-07-26 | 2012-02-01 | 杭州信核数据科技有限公司 | 一种存储空间接管和数据迁移的方法和系统 |
CN103052938A (zh) * | 2010-10-14 | 2013-04-17 | 株式会社日立制作所 | 数据迁移系统和数据迁移方法 |
CN105045681A (zh) * | 2015-07-10 | 2015-11-11 | 上海爱数软件有限公司 | 一种Oracle多通道并行备份及恢复方法 |
CN106325775A (zh) * | 2016-08-24 | 2017-01-11 | 北京中科开迪软件有限公司 | 一种数据冗余/加密的光存储硬件设备和方法 |
CN106658753A (zh) * | 2016-09-14 | 2017-05-10 | 广东欧珀移动通信有限公司 | 一种数据迁移方法及终端设备 |
CN107256184A (zh) * | 2017-06-05 | 2017-10-17 | 郑州云海信息技术有限公司 | 一种基于存储池的数据灾难备份方法及装置 |
WO2021103596A1 (zh) * | 2019-11-29 | 2021-06-03 | 浪潮电子信息产业股份有限公司 | 一种数据迁移方法、装置和计算机可读存储介质 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7716186B2 (en) * | 2007-01-22 | 2010-05-11 | International Business Machines Corporation | Method and system for transparent backup to a hierarchical storage system |
US8838932B2 (en) * | 2010-11-09 | 2014-09-16 | International Business Machines Corporation | Power economizing by powering down hub partitions |
GB2494437A (en) * | 2011-09-08 | 2013-03-13 | Hogarth Worldwide Ltd | The handling and management of media files |
US20140281301A1 (en) * | 2013-03-15 | 2014-09-18 | Silicon Graphics International Corp. | Elastic hierarchical data storage backend |
JP6248435B2 (ja) * | 2013-07-04 | 2017-12-20 | 富士通株式会社 | ストレージ装置、およびストレージ装置の制御方法 |
CN103914516B (zh) * | 2014-02-25 | 2017-09-08 | 深圳市中博科创信息技术有限公司 | 一种存储系统分层管理的方法与系统 |
USD831951S1 (en) | 2017-10-09 | 2018-10-30 | E. Mishan & Sons, Inc. | Umbrella handle with light |
USD830683S1 (en) | 2017-10-09 | 2018-10-16 | E. Mishan & Sons, Inc. | Umbrella handle with light |
CN111522792A (zh) * | 2020-04-20 | 2020-08-11 | 中国银行股份有限公司 | 文件迁移方法及装置 |
US11231866B1 (en) * | 2020-07-22 | 2022-01-25 | International Business Machines Corporation | Selecting a tape library for recall in hierarchical storage |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266784B1 (en) * | 1998-09-15 | 2001-07-24 | International Business Machines Corporation | Direct storage of recovery plan file on remote server for disaster recovery and storage management thereof |
US6959368B1 (en) * | 1999-06-29 | 2005-10-25 | Emc Corporation | Method and apparatus for duplicating computer backup data |
US6505216B1 (en) * | 1999-10-01 | 2003-01-07 | Emc Corporation | Methods and apparatus for backing-up and restoring files using multiple trails |
US6834324B1 (en) * | 2000-04-10 | 2004-12-21 | Storage Technology Corporation | System and method for virtual tape volumes |
US6889232B2 (en) * | 2001-02-15 | 2005-05-03 | Microsoft Corporation | System and method for data migration |
US7117324B2 (en) * | 2002-10-18 | 2006-10-03 | International Business Machines Corporation | Simultaneous data backup in a computer system |
US8205058B2 (en) * | 2004-12-10 | 2012-06-19 | International Business Machines Corporation | Resource management for data storage services |
US20070038821A1 (en) * | 2005-08-09 | 2007-02-15 | Peay Phillip A | Hard drive with integrated micro drive file backup |
-
2006
- 2006-07-13 US US11/457,395 patent/US20080016390A1/en not_active Abandoned
-
2007
- 2007-07-06 CN CN200710128130.3A patent/CN101105738A/zh active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102340530B (zh) * | 2010-07-26 | 2015-10-14 | 杭州信核数据科技有限公司 | 一种存储空间接管和数据迁移的方法和系统 |
CN102340530A (zh) * | 2010-07-26 | 2012-02-01 | 杭州信核数据科技有限公司 | 一种存储空间接管和数据迁移的方法和系统 |
CN103052938A (zh) * | 2010-10-14 | 2013-04-17 | 株式会社日立制作所 | 数据迁移系统和数据迁移方法 |
US9411620B2 (en) | 2010-11-29 | 2016-08-09 | Huawei Technologies Co., Ltd. | Virtual storage migration method, virtual storage migration system and virtual machine monitor |
CN102073462B (zh) * | 2010-11-29 | 2013-04-17 | 华为技术有限公司 | 虚拟存储迁移方法、系统和虚拟机监控器 |
CN102073462A (zh) * | 2010-11-29 | 2011-05-25 | 华为技术有限公司 | 虚拟存储迁移方法、系统和虚拟机监控器 |
CN105045681A (zh) * | 2015-07-10 | 2015-11-11 | 上海爱数软件有限公司 | 一种Oracle多通道并行备份及恢复方法 |
CN106325775A (zh) * | 2016-08-24 | 2017-01-11 | 北京中科开迪软件有限公司 | 一种数据冗余/加密的光存储硬件设备和方法 |
CN106325775B (zh) * | 2016-08-24 | 2019-03-22 | 北京中科开迪软件有限公司 | 一种数据冗余/加密的光存储硬件设备和方法 |
CN106658753A (zh) * | 2016-09-14 | 2017-05-10 | 广东欧珀移动通信有限公司 | 一种数据迁移方法及终端设备 |
CN106658753B (zh) * | 2016-09-14 | 2020-01-17 | Oppo广东移动通信有限公司 | 一种数据迁移方法及终端设备 |
US10880728B2 (en) | 2016-09-14 | 2020-12-29 | Guangdong Oppo Mobile Telecommuncations Corp., Ltd. | Method for data migration and terminal device |
CN107256184A (zh) * | 2017-06-05 | 2017-10-17 | 郑州云海信息技术有限公司 | 一种基于存储池的数据灾难备份方法及装置 |
WO2021103596A1 (zh) * | 2019-11-29 | 2021-06-03 | 浪潮电子信息产业股份有限公司 | 一种数据迁移方法、装置和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20080016390A1 (en) | 2008-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101105738A (zh) | 用于并行存储池迁移和备份的装置、系统和方法 | |
CN100517247C (zh) | 用于并行存储的装置、系统和方法 | |
US20230251797A1 (en) | Performing Low Latency Operations Using A Distinct Set Of Resources | |
CN101589371B (zh) | 向分级存储系统透明备份的方法和系统 | |
CN102713856B (zh) | 用于恢复在计算机系统内的文件系统的方法和系统 | |
CN100419664C (zh) | 存储网络中执行备份操作的方法 | |
CN100507821C (zh) | 用于存储区域网络内部的分配数据的方法和装置 | |
CN101566931B (zh) | 虚拟磁盘驱动系统和方法 | |
US8812446B2 (en) | Block level backup and restore | |
US8229897B2 (en) | Restoring a file to its proper storage tier in an information lifecycle management environment | |
CN100561447C (zh) | 将存储卷呈现为虚拟卷的装置、系统和方法 | |
CN100416508C (zh) | 一种存储网络中的数据备份方法 | |
CN100573464C (zh) | 恢复多卷数据集的装置、系统和方法 | |
US10528520B2 (en) | Snapshot management using heatmaps in a large capacity disk environment | |
CN100524235C (zh) | 存储网络中的恢复操作 | |
CN1300696C (zh) | 存储控制器及数据存储方法 | |
CN101398770A (zh) | 迁移一个或多个虚拟机的系统和方法 | |
JP2014520344A (ja) | リカバリーサイトにおけるレプリカされた仮想ストレージの管理 | |
US10809922B2 (en) | Providing data protection to destination storage objects on remote arrays in response to assignment of data protection to corresponding source storage objects on local arrays | |
US8140788B2 (en) | Apparatus, system, and method for selecting an input/output tape volume cache | |
CN100478865C (zh) | 虚拟磁盘驱动系统和方法 | |
Appuswamy et al. | Loris-a dependable, modular file-based storage stack | |
WO2022086816A1 (en) | View filtering for a file storage system | |
CN109766220A (zh) | 应用系统的备份恢复方法、装置及计算机可读存储介质 | |
WO2022164490A1 (en) | Optimizing storage device access based on latency |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |