CN104321756B - 用于源清理级联卷的方法和系统 - Google Patents

用于源清理级联卷的方法和系统 Download PDF

Info

Publication number
CN104321756B
CN104321756B CN201380026989.7A CN201380026989A CN104321756B CN 104321756 B CN104321756 B CN 104321756B CN 201380026989 A CN201380026989 A CN 201380026989A CN 104321756 B CN104321756 B CN 104321756B
Authority
CN
China
Prior art keywords
volume
copy
duplicate
region
write operation
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
Application number
CN201380026989.7A
Other languages
English (en)
Other versions
CN104321756A (zh
Inventor
C·B·比肯
J·P·艾格姆巴
C·F·福恩特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN104321756A publication Critical patent/CN104321756A/zh
Application granted granted Critical
Publication of CN104321756B publication Critical patent/CN104321756B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware 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

用于源清理级联卷的方法和系统
技术领域
本发明涉及管理计算机数据,以及更具体地,涉及清理级联卷。
背景技术
存储系统通常具有备份盘,以防止由于硬件故障和/或自然灾害造成的损失。可以通过各种技术来创建备份盘。例如,可以使用快照或克隆技术来制作备份盘。
快照是依赖于主盘的时间点拷贝(point-in-time copy)。例如,可以使用写时拷贝(copy-on-write)过程完成快照,在写时拷贝过程中当正在对主盘上的区域进行写操作时主盘上的该区域中当前存在的数据被写入到备份盘。由此,备份盘将包含主盘上已被覆写(overwrite)的数据,而不是主盘的完整拷贝。该类型的备份拷贝通常可以得到精简配置的卷,这减少了存储。一系列快照拷贝可以级联在一起,来表示各个时间处的主盘。然而,快照拷贝通常要一直依靠主盘来重组主盘的完整拷贝。
克隆是独立于主盘的时间点拷贝。例如,可以通过执行后台拷贝过程和执行写时拷贝过程来创建克隆,在后台拷贝过程中盘的区域被顺序拷贝到备份盘,写时拷贝过程用于立即拷贝由于写操作而即将被覆写并且还没有被后台拷贝过程处理的任何主盘区域。当需要拷贝并且对拷贝的输入/输出(I/O)必须无论如何都不影响对主卷的IO时,通常使用克隆。当拷贝不应受到源可用性的影响时,也可以使用克隆。还可以在级联中使用克隆。
发明内容
在一个实施例中,用于源清理级联卷的过程可以包括:存储主卷和主卷的多个级联备份卷,以及确定对备份卷中的一个备份卷的写操作是由于对级联中的另一个卷进行后台拷贝而引起的还是由于对级联中的另一个卷的写操作而引起的。如果写操作是由于级联中的另一个卷的后台拷贝而引起的,则过程可以包括调整备份卷的卷映射中的后台拷贝指示符。如果写操作是由于对级联中的另一个卷的写操作而引起的,则过程可以包括调整备份卷的卷映射中的写拷贝指示符。
将结合附图,通过下面的描述表述各种实施例的细节和特征。
附图说明
图1是示出了用于源清理级联卷的示例性系统的框图。
图2A-B是示出了用于源清理级联卷的示例性卷映射的框图。
图3是示出了用于源清理级联卷的示例性过程的流程图。
图4是示出了用于源清理级联卷的另一个示例性过程的流程图。
图5是示出了用于源清理级联卷的示例性计算机系统的框图。
具体实施方式
可以通过各种技术来实现源清理级联卷。在特定的实施例中,级联卷可以包括主卷和一些级联备份卷。对级联卷的源清理可以包括确定对备份卷的写操作是由于对级联中的另一个卷进行后台拷贝而引起的还是由于对级联中的另一个卷的写操作而引起的。对备份卷的写操作的原因可以记录在每个卷的卷映射中。当卷中的一个卷需要被清理时(例如因为该卷正被移除或重启),可以分析级联卷的卷映射以确定要被清理的卷上的哪些数据需要被移到另一个卷,以保持剩余卷的数据完整性。
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产 品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括例如在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言诸如Java、Smalltalk、C++等,和常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络— —包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
计算机程序指令还可以加载到计算机、其他可编程数据处理装置或其他设备上,以使一系列操作步骤在所述计算机、其他可编程装置或其他设备上执行,以产生计算机实施的过程,从而在计算机或其他可编程装置上执行的指令提供用于实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
图1示出了用于源清理级联卷的示例性系统100。系统100包括外部系统110、存储系统120和通信网络130。
外部系统110一般地可以是通过生成向存储系统120的写操作来存储其一些数据的任何计算机系统。外部系统110例如可以是生成需要存储的数据的服务器系统。示例性服务器系统包括Web服务器。如果外部系统为服务器系统,则服务器系统可以包括同位置或分布式的一个或多个服务器。
存储系统120可以为各种外部系统(例如,运行高级交互执行体 (AIX)或Windows的服务器系统)存储数据,该外部系统可以位于存储系统的本地或远程。在特定的实施例中,存储系统120可以提供对示例性系统的主存储,而其他存储系统(未示出)提供备份存储(例如,通过同步或异步复制)。存储系统120例如可以包括存储区域网络、独立磁盘冗余阵列、硬盘驱动器、磁带驱动器、或用于存储数据的任何其它设备。存储系统120例如可以以块阵列来存储数据。
存储系统120包括存储控制器122和存储单元124(例如,硬盘、磁带等)。存储控制器122负责将数据放到存储单元124中。为了讨论的方便,存储单元124包括主卷125和备份卷126-127。然而,存储单元124通常可以配置成包括任何数目的卷。卷125-127例如可以是存储单元124中的实际物理设备(例如,硬盘驱动器)、物理设备的一部分、或物理设备的表示。存储单元124还可以具有一些其正在存储的其他卷。
外部系统110和存储系统120通过通信网络130彼此通信耦合。通信网络130例如可以是局域网(LAN)、广域网(WAN)或因特网。外部系统110和存储系统120通过通信链路132耦合到通信网络130,通信链路132可以包括一个或多个有线(例如,电缆或光纤)和/或无线链路(例如,射频)。
备份卷126-127可以通过各种技术提供对主卷125的备份。例如,可以使用快照和/或克隆技术进行备份。如前所述,快照可以是时间点拷贝,其中,当正在向主卷上的区域进行写操作时,主卷上的该区域中的当前存在的数据被写入备份卷。从而,备份卷将包含主卷上已被覆写的数据,而不是主卷的完整拷贝。区域例如可以是扇区或卷的其他可寻址部分。在特定的实施例中,区域大小可以是大约64KB。
该类型的备份拷贝通常可以得到精简配置的卷,这减少了存储,并且在主卷上发生数据损坏的情况下可能是有用的。通常,同时存在单个源的许多快照,所以减小其大小是有利的。快照可以在卷的级联中存在相当长的时间(例如,数月或数年),但通常只保持数小时或数天。
克隆拷贝例如可以通过执行后台拷贝过程和执行写时拷贝过程来创建,在后台拷贝过程中卷的区域被顺序拷贝,写时拷贝过程用于立即拷贝由于写操作而即将被覆写并且还没有被后台拷贝过程处理的任何卷区域。当需要拷贝并且对拷贝的输入/输出(I/O)必须无论如何都不影响对主卷的IO时,通常使用克隆。当拷贝不应受到源可用性的影响时,也可以使用克隆。也就是,克隆可以从级联中移除并仍然正常工作。例如,克隆可以用来将数据库带到另一个站点。一旦完成克隆,克隆通常拷贝到磁带。
备份卷126-127可以通过彼此级联提供对主卷125的备份。存储控制器(诸如来自纽约州阿蒙克的国际商业机器公司的SAN卷控制器(SVC))可以使用级联的实施方式来增强源卷。
例如,假设备份卷126是为主卷125提供备份的两个备份卷126-127中较早的备份卷。备份卷126可以提供在时间T1开始的备份,备份卷127可以提供在时间T2开始的备份。在T1,级联将是主卷125->备份卷126。在T2,级联将是主卷125->备份卷127->备份卷126。级联方法运作以使得当开始新的备份卷时,现有的将主卷用作其源卷的备份卷被修改为将新备份的目标卷用作其源卷。
假设备份卷126通过快照技术操作,从在T1开始备份起,备份卷126通过存储主卷125的变化来提供备份。在该双元件级联中,主卷125是源,备份卷126是目标。从而主卷125可以被称为主卷125->备份卷126映射的有效源。如前所述,该备份可以通过使用写时拷贝来完成。从而,对主卷125的写操作可以包括将主卷125上要被写的区域中的数据拷贝到备份卷126,然后将新的数据写到主卷125的该区域。从而,当到备份卷126的备份在T1变得有效时位于主卷125上的数据将被存储在主卷125上(即,对于没有被写的卷区域)和备份卷126上(即,对于已被写的区域)。
如果需要在备份卷126上执行读操作(例如,用于确定T1时主卷125上的数据),可以通过首先尝试定位数据备份卷126来进行读操作。如果数据不在该卷上(即,因为该数据在主卷125上从未被覆 写),则可以从主卷125读取数据。
主卷125有时可能需要还原到其T1时的状态。例如,可能由于数据损坏而发生该情况。可以从备份卷126取回自从备份卷126变得有效起主卷125上被覆写的数据,从而将主卷125还原到其T1时的状态。
在随后的时间点T2,到备份卷127的备份可以变得有效,并存储在T2开始的主卷125的表示。此时,不再需要更新备份卷126,因为备份卷127将包含主卷125在T2时的数据。从而,备份链变成主卷125->备份卷127->备份卷126。并且,现在主卷125->备份卷126的映射具有源备份卷127作为有效源。该转换是有效的,因为备份卷127是主卷125在该时间点的精确拷贝(至少对于主卷存储的数据区域而言)。
备份卷127可以通过快照或克隆技术操作。如果备份卷127通过快照技术操作,则可以将对主卷125的写操作视为写操作是针对主卷125->备份卷126级联进行的,除了主卷125上被覆写的数据将被放在备份卷127上以外。如果备份卷127通过克隆技术操作,则主卷125的区域将通过顺序的读操作和按需写操作的组合被写到备份卷127(例如,由于数据因主卷125的写操作而被覆写),其中所述读操作可能需要相对长的时间段。
为了保持该级联的数据,可以使用IO算法。例如,对于读操作:1)如果请求对备份卷126的读取,那么,如果请求的数据在备份卷126上(例如,根据区域)则读取备份卷126,否则如果请求的数据在备份卷127上则读取备份卷127,否则读取主卷125;2)如果请求对备份卷127的读取,那么,如果请求的数据在备份卷127上则读取备份卷127,否则读取主卷125;3)如果请求对主卷125的读取,那么读取主卷125。
对于写操作:1)如果请求对备份卷126的写入,那么写入到备份卷126;2)如果请求对备份卷127的写入:a)如果备份卷126需要保存在主卷125上的数据,则读取主卷,将结果写入到备份卷126, 并将新的数据写入到备份卷127;b)否则,如果备份卷126需要保存在备份卷127上的数据,则读取备份卷127,将结果写入到备份卷126,并将新的数据写入到备份卷127;或者c)否则写入到备份卷127;以及3)如果请求到主卷125的写入:a)如果备份卷127需要保存在主卷125上的数据,则读取主卷125,将结果写入到备份卷127,然后将新的数据写入到主卷125;以及b)否则写入到主卷125。
该IO算法允许级联多个目标(例如,两个或更多个)。而且,不管主卷125的备份卷的数目如何,对主卷125的写操作导致最多一个对备份卷的额外写操作。从而,备份映射对源/生产IO性能的影响相对较小,而且是有界限的。
在T2之后的时间点,备份卷126通常依赖于备份卷127。例如,如果一数据区域没有在T1和T2之间被转移到备份卷126(因为在该时间期间没有对主卷125的写操作),但是在T2之后被转移到了备份卷127(例如,因为在T2之后存在对主卷125的写操作),则备份卷126将需要该数据以将主卷125还原到其T1时的状态。如果在该时间点之后备份卷127要被从级联移除而不影响备份卷126,则应该清理备份卷127。也就是,(例如来自外部系统的)对备份卷126的读操作所需的备份卷127上的数据必须首先被拷贝到备份卷126。该过程可能需要相对较长的时间。而且,如果备份卷127是通过克隆技术构建的(这可能导致了备份卷127已被完全分配)并且备份卷126是通过快照技术构建的,则清理操作可以确定备份卷127大部分需要被转移到备份卷126,这可能会大大增加备份卷126上存储的数据量,尤其是如果其已被完全分配。
在某些操作模式中,可以对卷上的数据区域进行分类以确定区域上保存的数据是否必须被清理,或是即使当中间卷(例如,备份卷127)被移除时,从属卷(例如,备份卷126)是否仍然可以访问(例如,主卷125上的)数据。跟踪目标卷区域中是否包含对于读操作要返回的数据所需要的最小元数据量为1比特。从而,每个目标卷所需的元数据量为包含用于卷上所有数据区域的足够比特的位图。然而,这没 有考虑到确定数据为何曾被放在卷区域中。例如,数据可能是由于写操作(例如,来自外部系统)、由于写操作的分裂、或由于对上游卷进行后台拷贝,而被写入到了卷中。“上游”卷是以当前卷作为参考朝向主卷的卷,而“下游”卷是以当前卷作为参考远离主卷的卷。
存储控制器122包括卷映射123,卷映射123可以存储关于备份卷126-127上的区域的元数据。特别地,卷映射123可以限定为什么区域中的数据位于该区域中。例如,卷映射可以规定数据是由于写操作(例如,源于快照技术或对卷的直接写)还是由于后台拷贝(例如,源于克隆技术)而被放在区域中。
在一些实施例中,每个卷映射123包括两个位图,每个位图对于卷上每个区域(无论是已分配的还是潜在的)具有一个比特。一个位图可以用来标记由于后台拷贝而具有数据的区域,而另一个位图可以被用来标记由于写操作(例如,写入卷本身或写入另一个卷)而具有数据的区域。
例如,假设有三个卷A、B和C,每个卷包含三个数据区域。而且,假设有卷映射A->B和B->C,每个卷映射有两个位图,分别是后台拷贝位图和写拷贝位图。当开始映射A->B时,级联可以由A->((0,0,0),(0,0,0))->B表示,其中->((0,0,0),(0,0,0))->表示卷映射的两个位图,因而就是->((后台拷贝位图),(写拷贝位图))->。
然后如果在区域0对卷A有写操作,则修改位图以反映上文的IO算法中描述的数据移动,即A->((0,0,0),(1,0,0))->B,这表示对于区域0,卷B保持其自己的数据,并且这不是由于后台拷贝引起的。如果从卷A到卷B的拷贝是克隆,则后台拷贝将不会再次尝试拷贝该区域。如果卷B没有已包含其自己的数据拷贝,则将仅从卷A向卷B拷贝区域。如果有区域1到卷B的后台拷贝,则这会使得位图看起来是A->((0,1,0),(1,0,0))->B,这表示对于区域1,卷B保持其自己的数据,并且这是由于后台拷贝引起的。
之后,如果开始卷B到卷C的备份拷贝,则级联看起来将会是A->((0,1,0),(1,0,0))->B->((0,0,0),(0,0,0))->C。对于在区域2对卷B的写 操作,级联变成A->((0,1,0),(1,0,1))->B->((0,0,0),(0,0,1))->C,这表示卷B和卷C包含其自己的数据拷贝,并且卷B和卷C获得这些数据拷贝是由于(例如,从外部系统的)写操作。卷C获得来自卷A的区域2的数据。例如,可以使用对卷B的写操作来提供测试和/或开发。
然后,如果从级联将卷B移除,则可能需要清理从卷B到卷C的备份。通过检查位图,可以确定区域0需要被清理,因为卷B包含数据,而该数据不会在卷A上。也就是,卷B的卷映射表示卷B由于写操作而获得了区域0的数据,这意味着该数据不再位于卷A上。然而,对于区域1,卷B的卷映射表示卷B由于后台拷贝而获得了数据,这意味着该数据应该还存在于卷A上。从而,不需要向卷C拷贝区域1。另外,虽然卷B的卷映射表示卷B由于写操作获得了区域2中的数据,但是卷C的卷映射表示卷C已经存储了该区域的数据,这意味着卷C不需要来自卷B的区域2中的数据。
然后可以通过将来自卷B的区域0的数据拷贝到卷C的区域0来清理B->C拷贝。可以将对卷C的清理写操作视为写操作,因为卷A不包含卷C所需的数据。可以将卷C的卷映射调整为显示卷A与卷C之间的关系,即A->((0,0,0),(1,0,1))->C,这表示卷C的区域0由于写操作获得了其数据,卷C的区域1没有数据,而卷C的区域2由于写操作获得了其数据。
在该示例中,清理量减少了一半。也就是说,如果没有卷映射,那么清理还必须将卷B的区域1写入卷C,因为不清楚该数据是为什么到达卷B的。对于更多数量的区域可能会更节省。通常,卷只有少量区域将被写入,而大部分数据将由于后台拷贝而被转移(如果适用的话)。
作为另一个例子,假设有三个卷D、E和F,每个卷含有四个数据区域。而且,假设卷D是主卷,卷E是较早的备份卷,卷F是较晚的备份卷,得到链D->F->E。另外,假设卷E通过使用写时拷贝技术提供备份,而卷F通过使用克隆技术提供备份,并且,具有对于卷E和F的卷映射,每个卷映射包括两个位图,即后台拷贝位图和写拷贝 位图。
当卷E对卷D的备份开始时,级联可以由D->((0,0,0,0),(0,0,0,0))->E表示,其中->((0,0,0,0),(0,0,0,0))->表示每个卷映射的两个位图,因而就是->((后台拷贝位图),(写拷贝位图))->。
如果在区域1对卷D有写操作,则修改位图以反映上文的IO算法中描述的数据移动,即D->((0,0,0,0),(0,1,0,0))->E,这表示对于区域1,卷E保持其自己的数据,并且这不是由于后台拷贝引起的。如果现在在区域2有对卷D的写操作,则再次修改位图以反映IO算法中描述的数据移动,即D->(0,0,0,0),(0,1,1,0)->E。现在,如果开始卷D到卷F的备份拷贝,则级联看起来将会是D->((0,0,0,0),(0,0,0,0))->F->((0,0,0,0),(0,1,1,0))->E。假设对卷D的区域1和3的写操作是在对这些区域的后台拷贝发生之前发生的,并且后台拷贝全面运行,则级联变成D->((1,0,1,0),(0,1,0,1))->F->((0,0,0,0),(0,1,1,0))->E。由于从卷D到卷F的拷贝是克隆,因此后台拷贝不会再次尝试拷贝区域1和3。如果卷F没有已包含其自己的数据拷贝,则后台拷贝从卷D向卷F拷贝区域。如果发生对区域的后台拷贝并且然后在上游卷上发生对该区域的写操作,则可以更新下游卷上的写拷贝指示符。否则,如果只设置后台指示符,则系统可能会确定数据仍然在主卷上。
如果随后要从级联移除卷F,则可能需要清理卷F。通过检查位图,可以确定区域3需要被清理,因为卷F包含数据,而该数据不会在卷D上。也就是,卷F的卷映射表示卷F由于写操作而获得了区域3的数据,这意味着该数据不再位于卷D上。而且,卷E的卷映射表示该数据不在卷E上。然而,对于区域1,虽然卷F的卷映射表示卷F由于写操作而获得了区域1中的数据,但是卷E的卷映射表示卷E已经存储了该区域的数据,这意味着卷E不需要来自卷F的区域1的数据。
对于区域0和区域2,卷F的卷映射表示卷F由于后台拷贝而获得了数据,这意味着数据应该还在卷D上。从而,不需要向卷F进行 这些区域的拷贝。而且,对于区域2,卷E的卷映射表示卷E早先从卷D获得了数据,这意味着卷E已经从卷D获得了其所需的数据。从而,不需要向卷F进行区域2的拷贝。
然后,可以通过将来自卷F的区域3的数据拷贝到卷E的区域3来清理卷F。可以将对卷E的清理写操作视为写操作,因为卷D不包括卷E所需的数据。可以将卷E的卷映射调整为显示卷D与卷E之间的关系,即D->((0,0,0,0),(0,1,1,1))->E,这表示卷E的区域1-3由于写操作获得了其数据,而卷3的区域0没有数据。
在该示例中,清理量减少了一半。也就是说,如果没有卷映射,那么清理还必须将卷F的区域0写入卷E,因为不清楚该数据是为什么到达卷F的。对于更多数量的区域可能会更节省,因为通常,卷只有少量区域将被写入,而大部分数据将由于后台拷贝而被转移(如果适用的话)。
在一些实施例中,可以大大减少卷映射的存储空间量。例如,如果预期的IO模式是随机的,则主要需要的是位图。对于外部系统IO通常是这样,但对于后台IO不是。对于后台IO,IO模式通常是顺序的,一般是从卷的起点到终点或者反过来。所以,可以用索引来代替后台位图(例如,从卷的起点开始的拷贝具有高水印(high watermark),从卷的终点开始的拷贝具有低水印(low watermark))。使用索引,在一侧的所有区域都被认为已拷贝,而在另一侧,它们被认为是未拷贝的,除非发生了写操作。
回到上面第一个示例,如果同时开始A->B和B->C,则A->(HMW=0,(0,0,0))->B->(HWM=0,(0,0,0))->C。随着后台拷贝的进行,假设没有发生对卷的写操作,则映射将更新为像这样:A->(hwm=1,(0,0,0))->B->(hwm=0,(0,0,0))->C,并且最终变成A->(hwm=3,(0,0,0))->B->(hwm=0,(0,0,0))->C。这时候,卷A上的数据已经通过后台拷贝被拷贝到卷B,在该状态下,从级联移除卷B不需要清理。通常,如果不用做什么,则索引迅速达到最大值,因为这是电子操作(例如,没有IO)。
如果有对卷A的区域0的写操作,则卷映射将变成A->(hwm=2,(1,0,0))->B->(hwm=0,(0,0,0))->C,即使不需要向卷B转移数据。然后,为了移除卷B,可以确定只有区域0需要被清理,这会得到A->(hwm=0,(1,0,0))->C。从而,通过使用索引,映射的存储空间量可以减少大约一半,同时仍然保持当卷从级联被移除时所需要转移的数据的准确账目(accounting)。在这种情况下,例如,当卷B被移除时仅一个区域被转移到卷C,而不是如果不存在卷B的映射则必须转移所有区域。
图2A-B分别示出了对于级联的卷的示例性的卷映射200和250。卷映射200包括写拷贝指示符210和后台拷贝指示符220。写拷贝指示符210包括位图212,其中每个比特214分别对应于目标卷(例如,拷贝正被发送到的卷)上的一个区域。在该示例中,如果区域接收到了写操作,则用1来表示,如果区域没有接收到写操作,则用0表示。在其他实施例中也可以用相反的方式来标记。类似地,后台拷贝指示符210包括位图222,其中每个比特224分别对应于目标卷上的一个区域。在该示例中,如果区域由于执行后台拷贝技术接收到了写操作,则用1表示,如果区域没有接收到写操作,则用0表示。在其他示例中可以用相反的方式来标记。
卷映射250包括写拷贝指示符260和后台拷贝指示符270。写拷贝指示符260包括位图262,其中每个比特264分别对应于目标卷(例如,拷贝正被发送到的卷)上的一个区域。通过将这些比特设置成不同的值,写拷贝指示符260可以指示卷的各个区域中的数据是否归因于写操作(例如,直接写到该卷或写到上游卷)。后台拷贝指示符270包括索引272。索引272是顺序指示符,其中指示符映射到卷上的区域。例如,索引272可以存储数字(例如,整数)或者一个或多个映射到卷上的区域的字母。通过检查索引272,存储控制器可以确定在将一个卷拷贝到另一个卷时后台拷贝进行到了什么程度。
虽然图2A-B示出了卷映射的两个示例,但是还存在卷映射的其他示例。例如,代替使用位图,指示符可以使用标志数组(例如,真/ 假)来指示条件是否已发生。一般地,可以使用任何类型的其中位置可被映射到卷的区域的数组或结构。另外,数组可以实现为单个数组(例如,2x N或N x 2)或分开的数组,并可以位于存储器的相同部分或不同部分中。而且,可以使用任何逻辑上可辨别的指示符。
对于本文而言,通常可以以下面的方式来修改卷映射123中的元数据,以确保数据被正确地跟踪。对于对卷的外部写操作,在卷的写位图中和下游卷(如果存在下游卷)的写位图中对区域做标记。例如,如果卷是最早的备份卷,则下游卷可能不存在。对于对卷的后台写操作,如果区域的后台拷贝成功,则调整指示符。对于后台位图,这可以包括设置与该区域相关联的比特。对于索引,这可以包括递增索引。如果已经对区域执行了写时拷贝,则可能不需要为后台拷贝执行写操作或调整后台位图。从而,可以跳过这些操作(例如,通过检查写拷贝指示符)。表示不需要执行更多工作的指示可能就足够了。
应该在对于读操作时间同步的卷处开始读操作。如果在卷上所考虑的区域处存在数据,则读取该卷。如果在卷上所考虑的区域处不存在数据,则进行到上游的下一个卷:1)如果该卷没有卷映射(例如,链已被遍历回到了主卷),则读取该卷;2)如果该卷的卷映射表示对感兴趣的区域发生了写操作,则读取该卷;以及3)如果该卷的卷映射表示后台拷贝过程处理了感兴趣的区域,则读取该卷。如果卷的映射不满足上述任何一个条件,则进行到下一个上游卷,并以同样的方式分析其卷映射。
对于当卷从级联被移除时的清理,首先分析正被移除的卷的卷映射。如果该映射表示卷里的区域曾由于写操作而被写入,则该区域是被移到级联下游方向的下一个卷的候选者。然后针对所考虑的区域检查下游卷的卷映射,以确定下游卷是否已经具有该区域的数据。如果下游卷不具有该区域的数据,则所考虑的区域从正被移除的卷拷贝到下游卷。另外,标记下游卷的卷映射。
系统100具有各种功能。例如,系统100减少了当卷从级联被移除时所需的清理量,这可以大大减少移除卷所需的时间和精力量。而 且,可以降低剩下的卷上所放的数据量。另外,这种减少可以通过对区域上保持的数据进行分类所需的元数据少量增加来实现。因此,可以用小的元数据代价来实现增强的清理结果。
虽然图1示出了用于源清理级联卷的系统的一种实施方式,但是其他系统可以包括更少的、附加的、和/或不同的组件布置。例如,多个外部系统可以向存储系统进行写操作。另外,存储系统可以具有多组级联卷。而且,多个目标级联将以完全相同的方式工作,如同本领域的普通技术人员可以理解的。
图3示出了用于源清理级联卷的示例性过程300。过程300例如可以由类似于系统100的系统执行。
过程300需要确定是否接收到了对卷的写操作(操作304)。如果没有接收到对卷的写操作,则过程300需要等待对卷的写操作。
一旦接收到了对卷的写操作,过程300就需要确定该写操作是否是由于在卷上创建后台拷贝而引起的(操作308)。例如,存储控制器可以以与跟踪其他配置数据(例如,元数据)一样的方式保持对卷之间的拷贝类型(例如,克隆还是快照)的跟踪。如果写操作是由于在卷上创建后台拷贝而引起的,则过程300需要调整卷的卷映射(即,正被克隆的卷与接收到写操作的卷之间的映射)中的后台拷贝指示符。例如,可以通过调整(例如,递增或递减)索引来调整卷映射。然后,过程300返回以等待另一个对卷的写操作。
如果写操作不是由于在卷上创建后台拷贝而引起的,则过程300需要确定写操作是否是由于在卷上创建快照拷贝而引起的(操作316)。如果写操作是由于在卷上创建快照拷贝而引起的,则过程300需要调整卷的卷映射中的写拷贝指示符(操作320)。例如,可以通过设置与区域相关联的比特来调整卷映射。如果在执行了后台拷贝之后发生对上游卷的写操作,则也可以调整写拷贝指示符。然后过程300返回以等待另一个对卷的写操作。
如果写操作不是由于在卷上创建快照拷贝而引起的(例如,因为写操作是从外部源直接到卷的),则过程300需要确定写操作是否是 由于对卷的直接写操作而引起的(操作324)。如果写操作不是由于对卷的直接写操作而引起的,则过程300需要等待对卷的另一个写操作(操作304)。
然而,如果写操作是由于对卷的直接写操作而引起的,则过程300需要确定下游卷是否需要数据(操作328)。例如,如果写操作是到正在存储下游卷的数据的区域或者写操作是到与上游卷上正在存储下游卷的数据的区域相对应的区域(例如,如果当主卷还在存储级联的更下游的卷的数据时,级联的中间卷上的区域正在被写入),则下游卷可能需要数据。如果下游卷不需要数据,则过程300需要等待对卷的另一个写操作(操作304)。
然而,如果下游卷不需要数据,则过程300需要针对与写操作相关联的区域执行对卷的读操作(操作332)。该读操作例如可以根据上文描述的IO规则来完成。从而,可以读取正被写入的卷,或者可以读取上游卷。
过程300还需要将读取的数据移到下游卷(操作336)。下游卷将接收该数据作为分离的写操作或拷贝。过程300还需要调整卷的卷映射的写拷贝指示符(操作340)和调整下游卷的卷映射的写拷贝指示符(操作344)。然后过程300返回以等待另一个对卷的写操作。
只要备份卷正在被拷贝,过程300就可以进行。从而,在正常操作期间过程300可以重复很多次。
图4示出了用于源清理级联卷的另一个示例性过程400。过程400例如可以由类似于系统100的系统来执行。而且,可以结合过程300使用过程400。
过程400需要确定卷是否要被清理(操作404)。例如,如果要从级联移除卷或者要重启卷,则卷可能需要被清理。如果卷不需要被清理,则过程400需要等待卷被清理。
一旦卷要被清理,则过程400需要选择卷上开始进行清理的区域(操作408)。这可以例如通过选择卷上的第一区域、卷上的最后区域、或中间的区域来进行。过程400还需要确定该区域在卷的卷映射 中的写拷贝指示符中是否被标记(操作412)。例如,如果为区域设置了指示符(例如,比特或标志),则该区域可以被标记。如果在卷的卷映射的写拷贝指示符中没有标记该区域,则过程400需要确定是否有卷的另一个区域要分析(操作416)。如果有另一个区域要分析,过程需要确定该区域在卷的卷映射的写拷贝指示符中是否被标记(操作412)。过程400可以继续循环进行操作412-416,直到卷的所有区域都已被分析(这时过程400结束),或者直到在卷的卷映射的写拷贝指示符中标记了区域。
如果在卷的卷映射的写拷贝指示符中标记了区域,则过程400需要确定该区域在下游卷的卷映射中的写拷贝指示符中是否被标记(操作420)。如果在下游卷的卷映射中的写拷贝指示符中标记了该区域,则过程400需要确定是否有卷的另一个区域要分析(操作416)。如果在下游卷的卷映射中没有标记该区域,则过程400需要将该区域中的数据拷贝到下游卷(操作424)。过程400还需要调整下游卷的卷映射中用于该区域的写拷贝指示符(操作428)。然后过程400需要确定是否有卷的另一个区域要分析(操作416)。
只要备份卷正在被拷贝,过程400就可以进行。从而,在正常操作期间过程400可以重复很多次。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,所示的两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
图5示出了用于管理级联拷贝的源清理的示例性计算机系统500。计算机系统500可以例如示出存储系统的存储控制器的一些组件。
系统500包括处理器510、输入/输出系统520和存储器530,它们通过网络540耦合在一起。如图所示,计算机系统500用作存储系统的存储控制器。
处理器500通常包括逻辑处理单元(例如,算术逻辑单元),该逻辑处理单元在(例如,来自软件的)程序指令的指导下处理数据。例如,处理器510可以是微处理器、微控制器或专用集成电路。处理器可以通过精简指令集计算机(RISC)或复杂指令集计算机(CISC)原理进行操作。在一般情况下,处理器可以是以逻辑方式操作数据的任何设备。
输入/输出系统520可以包括一个或多个通信接口和/或一个或多个其他用户接口。通信接口可以是例如网络接口卡(无论是有线还是无线)或调制解调器。用户接口可以例如是用户输入设备(例如,键盘、小键盘、触摸板、触笔或麦克风)或用户输出设备(例如,监视器、显示器或扬声器)。一般地,输入-输出系统520可以是计算机系统可以用以接收和输出数据的设备的任何组合。
存储器530可以例如包括随机存取存储器(RAM)、只读存储器(ROM)、闪存、和/或盘存储器。不同的项可以在各个时间存储在存储器的不同部分中。一般地,存储器530可以是用于存储数据的设备的任何组合。
存储器530包括指令532和数据536。指令532包括操作系统533(例如,Windows、Linux、或Unix)和应用534,应用534包括备份管理器535。数据536包括应用534所需和/或生成的数据,包括写操作数据537和卷映射538。
网络540负责在处理器510、输入/输出系统520和存储器530之间通信数据。网络540例如可以包括多个不同类型的总线(例如,串行总线和并行总线)。
在一些模式的操作中,处理器510能够(例如从外部系统)接收写操作并为计算机系统所管理的存储单元准备写操作。另外,根据备份管理器535,处理器510可以为存储单元中的卷生成备份卷。每个备份卷可以具有关联的卷映射538,卷映射可以逐个区域地指示数据为什么被放置在卷上。处理器510可以随着数据被写到卷上更新卷映射538。另外,当卷要从卷的级联被移除时,处理器510可以使用卷映射。处理器510例如可以通过实施上述任何技术,包括过程300-400的一个或多个部分,来完成这一点。
这里所使用的术语只是为了描述特定实施例的目的,而不用于限制。如这里所使用的,单数形式的“一”、“一个”和“该”意在也包括复数形式,除非上下文另有明确说明。还应该理解,术语“包括”和/或“包含”当在本说明书中使用时,表示所陈述的特征、整数、步骤、操作、元件和/或组件的存在,但不排除一个或多个其他特征、整数、步骤、操作、元件、组件和/或其组合的存在或添加。
在所附权利要求中所有装置或步骤加功能元件的相应结构、材料、动作以及等同物旨在包括用于与其它所主张元素相结合地执行功能的任何结构、材料或动作,如同明确主张的一样。为了说明和描述的目的已经给出了对所述实施例的描述,但并非意在穷举或限制为所公开形式的实施例。在不脱离本发明的范围的情况下,许多修改和变化对于本领域的普通技术人员将是明显的。这些实施例是为了解释本公开的原理和实际应用,并使得其他人或本领域的普通技术人员能够理解具有适合于预期特定用途的各种修改的各种实施例的公开而选择和描述的。
针对源清理级联卷描述了一些实施例,并且提到和建议了一些其他实施例。此外,本领域的技术人员将容易地认识到可以对这些实施例做出多种添加、删除、修改和替换,同时仍能实现源清理级联卷。因此,所保护主题的范围应根据所附权利要求来判断,权利要求可以充分体现一个或多个实施例的一个或多个概念。

Claims (16)

1.一种用于源清理级联卷的系统,包括:
存储单元,包括主卷和所述主卷的多个级联的备份卷;以及
存储控制器,适于从外部源接收对一个或多个卷的写操作并且为其中的存储准备写操作,其中所述存储控制器还适于:
确定对备份卷中的一个备份卷的写操作是否是由于对级联中的另一个卷进行后台拷贝而引起的;
如果写操作是由于对级联中的另一个卷的后台拷贝而引起的,则调整所述备份卷的卷映射中的后台拷贝指示符;
确定对备份卷中的一个备份卷的写操作是否是由于对级联中的另一个卷的写操作而引起的;以及
如果写操作是由于对级联中的另一个卷的写操作而引起的,则调整所述备份卷的卷映射中的写拷贝指示符。
2.根据权利要求1所述的系统,其中所述存储控制器还适于:
确定对备份卷中的一个备份卷的写操作是否是对该卷的直接写操作;
如果写操作是直接写操作,则确定数据是否需要被移动到级联中的下游卷;
如果数据需要被移动到级联中的下游卷,则执行对所述备份卷的读操作;
将读取的数据移动到所述下游卷;
调整所述下游卷的卷映射中的写拷贝指示符;以及
调整所述备份卷的卷映射中的写拷贝指示符。
3.根据权利要求1所述的系统,其中卷映射包括两个位图,每个位图包括分别对应于卷的区域的比特,所述位图中的一个位图表示区域是否由于写操作而包含数据,并且所述位图中的一个位图表示区域是否由于后台拷贝而包含数据。
4.根据权利要求1所述的系统,其中卷映射包括位图和索引,所述位图包括分别对应于卷的区域的比特并表示区域是否由于写操作而包含数据,并且所述索引表示卷中有多少由于对另一个卷的后台拷贝而包含数据。
5.根据权利要求1所述的系统,其中所述存储控制器还适于:
确定级联中的备份卷中的一个备份卷是否应该被清理;
如果备份卷应该被清理,则确定用于要被清理的卷的一个区域的写拷贝指示符在所述卷的卷映射中是否被标记;以及
如果用于所述区域的写拷贝指示符在所述卷的卷映射中没有被标记,则选择另一个区域来分析。
6.根据权利要求5所述的系统,其中所述存储控制器还可操作用于:
如果用于所述区域的写拷贝指示符在要被清理的卷的卷映射中被标记,则确定用于所述区域的写拷贝指示符在级联中的下游卷的卷映射中是否被标记;
如果用于所述区域的写拷贝指示符在所述下游卷的卷映射中被标记,则选择另一个区域来分析;以及
如果用于所述区域的写拷贝指示符在所述下游卷的卷映射中没有被标记,则将所述区域的数据从正被清除的卷拷贝到所述下游卷。
7.根据权利要求6所述的系统,其中所述存储控制器还适于调整所述下游卷的卷映射中用于所述区域的写拷贝指示符。
8.根据权利要求5所述的系统,其中所述存储控制器还适于基于卷正在从所述级联被移除而确定该卷应该被清理。
9.一种用于源清理级联卷的方法,包括:
存储主卷和所述主卷的多个级联的备份卷;
确定对备份卷中的一个备份卷的写操作是否是由于对级联中的另一个卷进行后台拷贝而引起的;
如果写操作是由于对级联中的另一个卷的后台拷贝而引起的,则调整所述备份卷的卷映射中的后台拷贝指示符;
确定对备份卷中的一个备份卷的写操作是否是由于对级联中的另一个卷的写操作而引起的;以及
如果写操作是由于对级联中的另一个卷的写操作而引起的,则调整所述备份卷的卷映射中的写拷贝指示符。
10.根据权利要求9所述的方法,还包括:
确定对备份卷中的一个备份卷的写操作是否是对该卷的直接写操作;
如果写操作是直接写操作,则确定数据是否需要被移动到级联中的下游卷;
如果数据需要被移动到级联中的下游卷,则执行对所述备份卷的读操作;
将读取的数据移动到所述下游卷;
调整所述下游卷的卷映射中的写拷贝指示符;以及
调整所述备份卷的卷映射中的写拷贝指示符。
11.根据权利要求9所述的方法,其中卷映射包括两个位图,每个位图包括分别对应于卷的区域的比特,所述位图中的一个位图表示区域是否由于写操作而包含数据,并且所述位图中的一个位图表示区域是否由于后台拷贝而包含数据。
12.根据权利要求9所述的方法,其中卷映射包括位图和索引,所述位图包括分别对应于卷的区域的比特并表示区域是否由于写操作而包含数据,并且所述索引表示卷中有多少由于对另一个卷的后台拷贝而包含数据。
13.根据权利要求9所述的方法,还包括:
确定级联中的备份卷中的一个备份卷是否应该被清理;
如果备份卷应该被清理,则确定用于要被清理的卷的一个区域的写拷贝指示符在所述卷的卷映射中是否被标记;以及
如果用于所述区域的写拷贝指示符在所述卷的卷映射中没有被标记,则选择另一个区域来分析。
14.根据权利要求13所述的方法,还包括:
如果用于所述区域的写拷贝指示符在要被清理的卷的卷映射中被标记,则确定用于所述区域的写拷贝指示符在级联中的下游卷的卷映射中是否被标记;
如果用于所述区域的写拷贝指示符在所述下游卷的卷映射中被标记,则选择另一个区域来分析;以及
如果用于所述区域的写拷贝指示符在所述下游卷的卷映射中没有被标记,则将所述区域的数据从正被清除的卷拷贝到所述下游卷。
15.根据权利要求14所述的方法,还包括调整所述下游卷的卷映射中用于所述区域的写拷贝指示符。
16.根据权利要求13所述的方法,还包括基于卷正在从所述级联被移除而确定该卷应该被清理。
CN201380026989.7A 2012-06-25 2013-06-14 用于源清理级联卷的方法和系统 Active CN104321756B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/532,687 2012-06-25
US13/532,687 US9047233B2 (en) 2012-06-25 2012-06-25 Source cleaning cascaded volumes using write and background copy indicators
PCT/IB2013/054877 WO2014001942A1 (en) 2012-06-25 2013-06-14 Source cleaning cascaded volumes

Publications (2)

Publication Number Publication Date
CN104321756A CN104321756A (zh) 2015-01-28
CN104321756B true CN104321756B (zh) 2017-02-22

Family

ID=49775442

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380026989.7A Active CN104321756B (zh) 2012-06-25 2013-06-14 用于源清理级联卷的方法和系统

Country Status (6)

Country Link
US (2) US9047233B2 (zh)
JP (1) JP6195614B2 (zh)
CN (1) CN104321756B (zh)
CA (1) CA2874239C (zh)
GB (1) GB2519256B (zh)
WO (1) WO2014001942A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8230185B2 (en) 2008-10-08 2012-07-24 International Business Machines Corporation Method for optimizing cleaning of maps in FlashCopy cascades containing incremental maps
WO2014115184A1 (en) * 2013-01-24 2014-07-31 Hitachi, Ltd. Storage system and control method for storage system
US9760449B2 (en) 2015-09-16 2017-09-12 International Business Machines Corporation Restoring a point-in-time copy
US9747171B2 (en) 2015-09-16 2017-08-29 International Business Machines Corporation Point-in-time copy restore
US9760450B2 (en) 2015-09-16 2017-09-12 International Business Machines Corporation Restoring a clone point-in-time copy
US10394491B2 (en) * 2016-04-14 2019-08-27 International Business Machines Corporation Efficient asynchronous mirror copy of thin-provisioned volumes
US10430121B2 (en) 2016-08-22 2019-10-01 International Business Machines Corporation Efficient asynchronous mirror copy of fully provisioned volumes to thin-provisioned volumes
US10083087B1 (en) * 2017-07-14 2018-09-25 International Business Machines Corporation Managing backup copies in cascaded data volumes
US10795776B2 (en) * 2017-11-06 2020-10-06 International Business Machines Corporation Multiple point-in-time copies on a remote system
US10698631B2 (en) 2018-02-13 2020-06-30 International Business Machines Corporation Point-in-time copy with target write optimization
JP7530783B2 (ja) 2020-09-15 2024-08-08 日清紡マイクロデバイス株式会社 パワーグッド回路

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1794161A (zh) * 2004-12-23 2006-06-28 国际商业机器公司 具有多个拷贝目标的存储系统
CN1794199A (zh) * 2004-12-23 2006-06-28 国际商业机器公司 具有多个拷贝目标和盘故障保护的存储系统

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3260923B2 (ja) 1993-09-20 2002-02-25 富士通株式会社 データ処理システムのバックアップ制御装置及び方法
JP2006510984A (ja) 2002-12-20 2006-03-30 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 事前設定されたバックアップ用dvd−rws
US7133982B2 (en) 2003-06-18 2006-11-07 International Business Machines Corporation Method, system, and article of manufacture for consistent copying of storage volumes
WO2005096570A1 (en) 2004-03-31 2005-10-13 Telefonaktiebolaget Lm Ericsson (Publ) A method and an arrangement for avoiding unnecessary retransmissions
CN100359476C (zh) 2004-06-03 2008-01-02 华为技术有限公司 一种快照备份的方法
US7296129B2 (en) 2004-07-30 2007-11-13 International Business Machines Corporation System, method and storage medium for providing a serialized memory interface with a bus repeater
US7395378B1 (en) 2005-01-04 2008-07-01 Symantec Operating Corporation System and method for updating a copy-on-write snapshot based on a dirty region log
GB0504390D0 (en) * 2005-03-02 2005-04-06 Ibm Storage system with cascaded copy targeting and enhanced integrity
US7873809B2 (en) * 2007-03-29 2011-01-18 Hitachi, Ltd. Method and apparatus for de-duplication after mirror operation
US8195620B2 (en) 2007-10-19 2012-06-05 International Business Machines Corporation Storage system with improved multiple copy targeting
US8051259B2 (en) 2008-06-23 2011-11-01 International Business Machines Corporation Space efficient de-allocation for cascade/multiple target flash copy cleaning
US8195906B2 (en) 2008-08-06 2012-06-05 International Business Machines Corporation Method and system for cascaded flashcopy zoning and algorithm and/or computer program code and method implementing the same
US8230185B2 (en) 2008-10-08 2012-07-24 International Business Machines Corporation Method for optimizing cleaning of maps in FlashCopy cascades containing incremental maps
CN102187317B (zh) 2008-10-30 2013-09-18 国际商业机器公司 闪速拷贝管理
US8560787B2 (en) 2009-03-30 2013-10-15 International Business Machines Corporation Incremental backup of source to target storage volume
US8468316B2 (en) 2009-06-15 2013-06-18 International Business Machines Corporation Apparatus and method for data backup
US8959300B2 (en) 2010-05-18 2015-02-17 International Business Machines Corporation Cascade ordering
JP5565157B2 (ja) * 2010-07-14 2014-08-06 富士通株式会社 データ処理装置、データ処理方法、データ処理プログラムおよびストレージ装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1794161A (zh) * 2004-12-23 2006-06-28 国际商业机器公司 具有多个拷贝目标的存储系统
CN1794199A (zh) * 2004-12-23 2006-06-28 国际商业机器公司 具有多个拷贝目标和盘故障保护的存储系统

Also Published As

Publication number Publication date
GB201501128D0 (en) 2015-03-11
GB2519256A (en) 2015-04-15
US20130346710A1 (en) 2013-12-26
CN104321756A (zh) 2015-01-28
CA2874239C (en) 2020-09-22
WO2014001942A1 (en) 2014-01-03
US9069711B2 (en) 2015-06-30
US20130346712A1 (en) 2013-12-26
US9047233B2 (en) 2015-06-02
JP2015525414A (ja) 2015-09-03
CA2874239A1 (en) 2014-01-03
JP6195614B2 (ja) 2017-09-13
GB2519256B (en) 2015-06-03

Similar Documents

Publication Publication Date Title
CN104321756B (zh) 用于源清理级联卷的方法和系统
US10140039B1 (en) I/O alignment for continuous replication in a storage system
US10409986B1 (en) Ransomware detection in a continuous data protection environment
US9087008B1 (en) Replicating a volume using snapshots
US10838912B1 (en) Intelligent selection of backup levels
CN103098016B (zh) 基于文件系统备份的去重
TWI307851B (en) Method, system, and program for handling a failover to a remote storage location
CN103514114B (zh) 源清除级联卷
US8554737B2 (en) Dynamic consistency group formation and systems using the same
US7689861B1 (en) Data processing recovery system and method spanning multiple operating system
US8706994B2 (en) Synchronization of replicated sequential access storage components
US8560507B2 (en) Generation of realistic file content changes for deduplication testing
US9720786B2 (en) Resolving failed mirrored point-in-time copies with minimum disruption
JP5940144B2 (ja) 協調式災害復旧のための方法、システム、およびコンピュータ・プログラム
US20100235326A1 (en) Method for mirroring a log file by threshold driven synchronization
US10235091B1 (en) Full sweep disk synchronization in a storage system
KR100734817B1 (ko) 싸이트간 데이타 미러링을 위한 방법, 시스템, 및 기록 매체
JP2005339554A (ja) 高速逆リストア
CN101784996A (zh) 仿效存储系统
CN101441582A (zh) 计算机数据对象的备份和恢复方法及实现该方法的系统和程序产品
JP2014526753A (ja) 多重ターゲット・コピーの維持
US9823976B2 (en) Optimization to permit block based incremental backup across system reboot or crash
US10613923B2 (en) Recovering log-structured filesystems from physical replicas
CN109739691A (zh) 数据库备份和恢复方法、装置、终端设备及存储介质
CN110688071A (zh) 一种减少数据同步量的数据同步方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant