CN100369005C - 执行拷贝操作的方法和系统 - Google Patents
执行拷贝操作的方法和系统 Download PDFInfo
- Publication number
- CN100369005C CN100369005C CNB2005100738416A CN200510073841A CN100369005C CN 100369005 C CN100369005 C CN 100369005C CN B2005100738416 A CNB2005100738416 A CN B2005100738416A CN 200510073841 A CN200510073841 A CN 200510073841A CN 100369005 C CN100369005 C CN 100369005C
- Authority
- CN
- China
- Prior art keywords
- fresh target
- new source
- target
- copy
- snap back
- 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/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/2056—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 by mirroring
- G06F11/2069—Management of state, configuration or failover
-
- 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/2056—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 by mirroring
- G06F11/2082—Data synchronisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99955—Archiving or backup
Abstract
本发明提供了执行拷贝操作的技术。接收到指示为原目标的新源和为原源的新目标的快速反向恢复命令后,执行对新目标的同步扫描。用与新源关联的新源结构更新与新目标关联的新目标结构。此外,还提供了执行拷贝操作的技术,在从新目标到新源执行了即时虚拟拷贝后接收到快速反向恢复命令后,在即时虚拟拷贝完成后台拷贝前执行这个快速反向恢复命令。
Description
技术领域
本发明的实现与快速反向恢复操作(fast reverse restoreoperation)有关。
背景技术
计算系统通常包括一个或多个处理数据和运行应用程序的主计算机(“主机”)、一些存储数据的直接访问存储器(DASD)和一个控制主机与DASD之间的数据传送的存储控制器。存储控制器也称为控制单元或存储指示器,管理对一个由许多也称为直接访问存储器(DASD)的硬盘驱动器组成的存储空间的访问。主机可以通过存储控制器将输入/输出(I/O)请求传送给存储空间。
一些灾难恢复系统考虑了在一段时间内对数据存储器上的一些卷(volume)的写入可能丢失的数据丢失情况。写入可以更新数据、写新数据或再次写同样的数据。为了有助于恢复数据写入,可能在远地配置一份数据拷贝。这样的拷贝也可以称为对偶或镜像拷贝。国际商用机器公司(IBM),本专利申请的受让方,提供了一些远程镜像系统(remote mirroring systems),包括在企业存储服务器(EnterpriseStorage Serve,ESS)系统内的对等层远程拷贝(PPRC)业务(例如,PPRC扩展的远距业务或同步PPRC业务)和扩展的远程拷贝(XRC)业务。
远程镜像系统提供了镜像备份数据的技术,以便在系统故障后予以恢复。这样的数据镜像系统还可以提供另外一个远程拷贝供非恢复用,诸如供一个远程站点本地访问用。
在远程镜像系统内,数据保存在一些卷对(volume pair)内。一个卷对包括一个在一个主存储器内的卷和一个在一个副存储器内的对应卷,对应卷内含有一个保存在主卷内的数据的拷贝。通常,卷对的主卷保存在主直接访问存储器(DASD)内,而卷对的副卷保存在镜像备份主DASD上的数据的副DASD内。可以配置一个主存储控制器来控制对主DASD的访问和配置一个副存储控制器来控制对副DASD的访问。
副DASD内的卷在所有写入已经按它们的逻辑次序传送时是一致的,也就是说所有相关写入在写入相关前传送。就银行业务为例,这意味着存款写到副卷上后再提取。一个一致性组是一些需要保持在一致状态的有关卷的集合。一个一致性事务集是一些保证相关的写入处于一致状态的对主卷的更新。一致性组保持卷之间的数据的一致性。
在许多系统中,一个诸如DASD之类的存储器上的数据可以拷贝到同一个或另一个存储器上,因此可以从两个不同的存储器访问数据卷。一个时点拷贝(point-in-time copy)涉及将所有数据物理拷贝到目标卷上,使得目标卷具有一个到一个时点为止的数据的拷贝。时点拷贝也可以通过逻辑上进行一个数据拷贝,然后只是必要时才拷贝数据,从而实现延迟物理拷贝。执行这种逻辑拷贝操作,以尽量减少目标卷和源卷不可访问的时间。
许多直接访问存储器(DASD)子系统能执行也称为“快速拷贝功能”的“即时虚拟拷贝(instant virtual copy)”操作。即时虚拟拷贝操作通过修改在一些诸如关系表或指针之类的结构内的元数据(metadata)进行,以将源数据对象处理为原件和拷贝。响应一个主机拷贝请求,存储子系统立即报告生成了拷贝,没有对数据作任何物理拷贝。对于主机来说,完全不知道只是生成了一个“虚拟”拷贝而不存在一个另外的物理拷贝。
稍后,在存储系统接收到对原件或拷贝的更新时,将这些更新分开存储,与更新的数据对象只是交叉引用。此时,原件和拷贝数据对象开始分歧。最初的得益是即时虚拟拷贝几乎立即进行,比完成普通的物理拷贝操作快得多。这解放了主机和存储子系统,使它们可以执行其他任务。主机或存储子系统甚至可以在后台处理期间或在其他时间着手生成原始数据对象的一个实际物理拷贝。
一个这样的即时虚拟拷贝操作称为FlashCopy(闪速拷贝)操作。一个FlashCopy操作涉及建立同一个或不同的设备上的源卷与目标卷之间的逻辑时点关系。FlashCopy操作保证在一个FlashCopy关系内的一个轨道硬化(harden)到目标盘上它的位置上以前这个轨道一直驻留在源盘上。子系统内所有现有的FlashCopy关系的信息用一个关系表保存。在一个FlashCopy关系的建立阶段期间,将一个登录项(entry)记录在参与建立FlashCopy的源和目标的源和目标关系表内。每个所添加的登录项保存了涉及这个FlashCopy关系的所有必要信息。这关系的两个登录项在所有的FlashCopy轨道都已从源盘区(source extent)物理拷贝到目标盘区(target extent)上时或者在接收到一个撤消命令时从关系表中删除。在一定的情况下即使所有的轨道都已经从源盘区拷贝到目标盘区上,这关系还持续保存下来。
目标关系表还包括一个比特图,用来标识FlashCopy关系内所涉及的哪些轨道还没有拷贝,因此是所保护的轨道。目标设备内的每个轨道由比特图内的一个比特表示。目标比特在相应轨道建立为一个FlashCopy关系的目标轨道时置位(例如,在逻辑上或者在物理上)。目标比特在相应轨道由于源或目标设备上的一些写入或一个后台拷贝任务已经从源位置拷贝到和数据转到目标设备上时复位。
在1999年7月2日递交的共同待决和共同转让的美国专利申请No.09/347,344“维护到一个时点为止的电子数据的方法、系统和程序”(“Method,System,and Program for Maintaining Electronic Data asof a Point-in-Time”)中描述了FlashCopy操作的更为详细的情况,该专利申请在这里列为参考全面予以引用。
一旦建立了逻辑关系,主机就可以立即访问源卷和目标卷上的数据,而数据可以作为后台操作的一部分拷贝。读一个是在一个FlashCopy关系内而不在高速缓存器内的目标的轨道触发一个数据转入拦截(stage intercept),使得在源轨道还没有被拷贝时在提供从目标高速缓存器访问这轨道之前与所请求的目标轨道相应的源轨道转入目标高速缓存器。这保证了目标具有从源得到在FlashCopy操作的时点存在的拷贝。此外,任何对源设备上没有被拷贝的轨道的数据转出将触发一个数据转出拦截(destage intercept),使得源设备上这些轨道拷贝到目标设备上。
业已开发了一些即时虚拟拷贝技术,至少部分是用来迅速的生成数据的一个复写拷贝而不中断或减缓前台进程。诸如FlashCopy操作之类的即时虚拟拷贝技术提供了一个时点拷贝工具。即时虚拟拷贝技术可以用于各种应用,包括例如数据备份、数据迁移、数据筛选、测试等。例如,可以用即时虚拟拷贝技术来生成源数据的一个物理“备份”,以有助于灾难恢复。
虽然诸如FlashCopy操作之类的即时虚拟拷贝技术在拷贝数据上是有益的,但传统的即时虚拟拷贝技术还可以加以改善。
发明内容
所提供的是一种执行拷贝操作的制品、系统和方法。接收到一个指示一个为原目标的新源和一个为原源的新目标的快速反向恢复命令后,执行一个对新目标的同步扫描。用与新源关联的新源结构更新与新目标关联的新目标结构。
还提供了一种在已经执行即时虚拟拷贝后接收到从一个新目标到一个新源的快速反向恢复命令后执行拷贝操作的制品、系统和方法,这个快速反向恢复命令在即时虚拟拷贝完成一个后台拷贝前执行。
附图说明
下面将结合附图对本发明进行说明,在这些附图中同样的标号所标注的是相当的部分,其中:
图1以块图例示了本发明的一些实现的计算环境;
图2例示了本发明的一些实现中的存储块;
图3和4例示了本发明的一些实现中的各种结构;
图5A例示了本发明的一些实现的反向恢复过程中实现的逻辑
图5B例示了本发明的另一些实现的反向恢复过程中实现的逻辑。
图6以块图例示了本发明的一些实现的原始计算环境。
图7以块图例示了本发明的一些实现的故障排除处理。
图8以块图例示了本发明的一些实现的快速反向恢复处理。
图9以块图例示了本发明的一些实现的附加处理。
图10例示了本发明的一些实现中可用的计算机系统的体系结构。
具体实施方式
在以下说明中,将参考形成本发明的一部分、例示本发明的若干实现的附图。可以理解,可以使用其他一些实现方式,在不背离本发明的实现的专利保护范围在结构上和操作上都可以作出一些改变。
图1以块图例示了本发明的一些实现的计算环境。第一控制单元100提供一个或多个主计算机114对存储装置A 112的访问。这些主计算机114各可以在一个操作系统(未示出)的控制下在一个中央处理单元(CPU)(未示出)上执行一个或多个程序115。第一控制单元100从在一个或多个主计算机114上的一个或多个程序115(例如,通过网络)接收对配置成具有卷(例如,逻辑单元号,逻辑设备,等等)112a,b,...m(m表示可以有任何数量的卷)的存储装置A 112的输入/输出(I/O)请求
图2例示了按照本发明的一些实现设计的存储装置的块。存储装置A 112可以分成一些含有数据块的存储块250(图2),而存储块250进一步再分成一些含有子数据块的子存储块(250a-250p,其中p表示可以有任意数量的子块)。在一些实现中,这些数据块是轨道的内容,而子数据块是轨道的扇区的内容。
第一控制单元100包括一个高速缓存器116,对存储装置A 112内数据块的更新在写给存储装置A112前(也就是数据块数据转出之前)保存在那里。系统存储器101可以在一个与高速缓存器116分开的存储器内,也可以与高速缓存器116共享一个存储器。
此外,第一控制单元100还包括一个非易失性高速缓存器118。非易失性高速缓存器118可以例如是一个由电池支持的易失性存储器,以维护数据更新的一个非易失拷贝及其他信息。
第一控制单元100包括系统存储器101,其中驻留有读数据的读出过程102和写数据的写入过程104。系统存储器101还包括一个将数据从第一控制单元100传送给诸如处在第二控制单元120的存储装置之类的远程存储装置的远程镜像过程(remote mirroring process)106。也就是说,远程镜像过程106执行诸如PPRC拷贝操作之类的远程镜像拷贝操作。在两个存储装置之间正在执行一个远程镜像拷贝操作时,可以说这两个存储装置处在“远程镜像关系”内。在两个存储装置之间正在执行一个即时虚拟拷贝操作时,可以说这两个存储装置处在一个“即时虚拟拷贝关系”内,这是时点拷贝关系的一种。
第二控制单元120包括系统存储器121,其中驻留有读数据的读出过程122和写数据的写入过程124。系统存储器121还存有即时虚拟拷贝过程126和快速反向恢复过程128。快速反向恢复过程128反向恢复一个时点拷贝(即,恢复已用一个即时虚拟拷贝操作从一个原源拷贝给一个原目标的原数据)。在一个即时虚拟拷贝已经执行后接收到快速反向恢复命令时,可以在这个即时虚拟拷贝完成后台拷贝前执行快速反向恢复命令。
快速反向恢复过程128执行一个将数据从一个原目标传送给一个原源的反向恢复操作,将原源的数据恢复到在上次从原源即时虚拟拷贝给原目标时的数据。在本发明的一些实现中,可以有多个反向恢复过程。在本发明的一些实现中,反向恢复过程可以不在存储控制器120处执行而在连接到存储控制器120上的另一个存储控制器处执行,或者除了在存储控制器120处执行之外还在接到存储控制器120上的另一个存储控制器处执行。
第二控制单元120提供一个或多个主计算机130对保存存储装置A112和存储装置C 164的所有卷或其中一些卷的备份拷贝的诸如存储装置B154之类的存储装置的访问。这些主计算机130各可以在一个操作系统(未示出)的控制下在一个中央处理单元(CPU)(未示出)上执行一个或多个程序131。主计算机130可以与主计算机114相同,也可以与主计算机114不同,或者可以是主计算机114中的一些主计算机。
第二控制单元120还包括一个可以将对存储装置B 154内的数据块的更新一直保存到写给存储装置B154(即,数据块数据转出)的高速缓存器140,和一个可以将对存储装置C164内的数据块的更新一直保存到写给存储装置C164的高速缓存器142。高速缓存器140和高速缓存器142可以是独立的存储器,也可以是同一个存储器的不同部分。高速缓存器140和高速缓存器142可以用来缓存在主机114、130、存储装置B 154和存储装置C164之间发送的读数据和写数据。此外,高速缓存器140和142可以称为保存在一个时点拷贝关系(例如,即时虚拟拷贝关系)内的源或目标数据块的源和目标高速缓存器,从而高速缓存器140和142可以同时存储在不同的拷贝点关系内的源和目标数据块。
系统存储器121可以在一个与高速缓存器140和142分开的存储器内,也可以与高速缓存器140和142其中之一或这两个共享一个存储器。
此外,第二控制单元120包括一个非易失性高速缓存器144。非易失性高速缓存器144可以例如是一个由电池支持的易失性存储器,以维护数据更新的一个非易失拷贝及其他信息。
存储装置B 154保存存储装置A112的所有的卷112a,b,...m或其中一些卷的拷贝。此外,存储装置B154可以由例如分别在一个或多个主计算机114、130处的一个或多个程序115、131更新。存储装置B 154配置成具有卷(例如,逻辑单元号,逻辑设备,等等)154a,b,...n,其中n表示可能有任何数量的卷。卷154a,b,...n可以分成一些含有数据块的存储块250(图2),而存储块250进一步分成一些含有子数据块的子存储块(250a-250p,其中p可以是任何整数值)。一个卷可以是任何逻辑或物理的存储元。在一些实现中,数据块是轨道的内容,而子数据块是轨道的扇区的内容。
存储装置C164可以保存存储装置B154的所有的卷154a,b,..n或其中一些卷的拷贝。此外,存储装置C164可以由例如分别在主计算机114、130处的一个或多个程序115、131更新。存储装置C164配置成具有卷(例如,逻辑单元号,逻辑设备,等等)164a,b,...o,其中o表示可以有任何数量的卷。卷164a,b,...o可以分成一些含有数据块的存储块250(图2),而存储块250进一步分成一些含有子数据块的子存储块(250a-250p,其中p可以是任何整数值)。一个卷可以是任何逻辑或物理的存储元。在一些实现中,数据块是轨道的内容,而子数据块是轨道的扇区的内容。
在一些实现中,可以用可换存储装置(而不是或除了诸如存储装置B154之类的远程存储装置之外)来维护存储装置A112的所有的卷或其中一些卷的备份拷贝,而本发明的技术将数据传送给可换存储装置而不是远程存储装置。可换存储装置可以位于第一控制单元100处。
在一些实现中,第一控制单元100和第二控制单元120可以包括IBM3990、型号6存储控制器、企业存储服务器(Enterprise StorageServer)或任何在该技术领域内所知的其他控制单元。
在一些实现中,主计算机114、主计算机130、第一控制单元100和/或第二控制单元120可以包括任何在该技术领域内所知的计算设备,诸如大型机、服务器、个人计算机、工作站、膝上计算机、掌上计算机、电话设备、网络设备、虚拟化设备、存储控制器之类。
一个主站点可以包括多个第一控制单元、存储装置和主计算机。一个副站点可以包括多个第二控制单元、恢复系统和存储装置。
在本发明的一些实现中,数据保存在一些卷对内。一个卷对包括一个在一个第一存储装置(例如,存储装置A112)内的第一卷和一个在一个第二存储装置(例如,存储装置B154)内的包含一个与保存在第一卷内的数据一致的拷贝的对应卷。例如,在存储装置A112处的卷112a可以与在存储装置B154处的卷154a对应。
在一些实现中,第一控制单元100和第二控制单元120通过诸如直接高速传输线(例如,企业系统连接(ESCONR)链路)之类的通信通道进行通信。然而,通信通道可以包括任何其他在该技术领域内所知的其他通信装置,诸如网络传输线、光缆等。
对于存储装置112、154和164来说,m、n和o的值可以相同也可以不同。存储装置112、154和164可以各包括一个诸如直接访问存储器(DASD)之类的存储器阵列、就是一串盘(JBOD,Just a Bunch of Disk)、独立盘的冗余阵列、虚拟化设备等。
为了说明简便,在这里用轨道和扇区作为数据块和子数据块的例子,但这并不是意味着将本发明的技术局限于轨道和扇区。本发明的技术可适用于任何类型的存储装置、存储块或以任何方式划分的数据块。
本发明的一些实现适用于在任何两个存储媒体之间的数据传送,为了说明简便,在这里可以将两个存储媒体称为源存储装置和目标存储装置,或者称为第一存储装置和第二存储装置。例如,本发明的一些实现可以配合两个存储媒体位于单个存储控制器120处的情况使用,如图1所示。此外,本发明的另一些实现可以配合两个存储媒体位于不同的存储控制器、不同的物理场所等情况使用。同样,为了说明简便起见,一个在源存储装置内的数据块可以称为一个“源数据块”,而一个在目标存储装置内的数据块可以称为一个“目标数据块”。
在哪个存储装置应是一个源和哪个存储装置应是一个目标的指示倒置时,为了说明简便起见,“原源”可以称为一个“新目标”,“原目标”可以称为一个“新源”,一个“原源数据块”可以称为一个“新目标数据块”,而一个“原目标数据块”可以称为一个“新源数据块”。
图3例示了本发明的一些实现的结构310。高速缓存器116或非易失性高速缓存器118可以包括一个或多个不同步结构(out of sync.structure)310。可以用一个不同步结构310来确定哪些存储块(例如,轨道)从上次从一个存储装置到另一个存储装置的传送以来业已更新,而不考虑这个存储块中具体更新的子块(例如,扇区)。在一个指示符设置为一个第一值(例如为1)时,这个设置表明这个数据块从上次传送(例如,由于一个PPRC拷贝操作)以来已经更新。在一个指示符设置为一个第二值(例如为0)时,这个设置表明这个数据块从上次传送(例如,由于一个PPRC拷贝操作)以来没有更新。例如,如果存储装置A112与存储装置B154为远程镜像关系,对于存储装置A112就要保持不同步结构310。
图4例示了本发明的一些实现的各个结构410、420和430。存储装置B结构410用来监视对在存储装置B154内的一些在源存储装置的一个部分与目标存储装置的一个部分之间已经建立一个即时虚拟拷贝关系的部分的数据内的数据块的更新。在一些实现中,对于存储装置B154上的每个卷都有一个存储装置B结构410。存储装置B结构410包括为即时虚拟拷贝关系一部分的在源存储装置内每个数据块的指示符(例如为1比特)。在一个指示符设置为一个第一值(例如为1)时,这个设置表明这个数据块还没有从源存储装置的这个部分拷贝给目标存储装置。在一个指示符设置为一个第二值(例如为0)时,这个设置表明这个数据块已经从源存储装置的这个部分拷贝给目标存储装置的部分。
一个存储装置C结构420用来监视在源存储装置的一个部分与目标存储装置的一个部分之间已经建立一个即时虚拟拷贝关系后对目标C的一些部分的数据内的数据块的更新。在一些实现中,对于存储装置C 164上的每个卷都有一个存储装置C结构420。存储装置C结构420包括为即时虚拟拷贝关系的一部分在源存储装置内每个数据块的指示符(例如为1比特)。在一个指示符设置为一个第一值(例如为1)时,这个设置表明这个数据块还没有从源存储装置这个部分拷贝给目标存储装置。在一个指示符设置为一个第二值(例如为0)时,这个设置表明这个数据块已经从源存储装置的这个部分拷贝给目标存储装置的部分。
结构410、420各可以看作一个源结构或一个目标结构,这取决于每个所关联的存储装置154、164正在处理为一个拷贝操作的一个源还是目标。
一个不同步结构430用来确定哪些存储块(例如,轨道)从上次从一个存储装置到另一个存储装置的传送以来业已更新,而不考虑这个存储块中具体更新的哪个子块(例如,扇区)。在一个指示符设置为一个第一值(例如为1)时,这个设置表明这个数据块从上次传送(例如,由于一个PPRC拷贝操作)以来已经更新。在一个指示符设置为一个第二值(例如为0)时,这个设置表明这个数据块从上次传送(例如,由于一个PPRC拷贝操作)以来还没有更新。例如,如果存储装置B154与存储装置A112为远程镜像关系,就要保持对于存储装置B154的不同步结构430。
在本发明的一些实现中,结构300、310、400、410和420各包括一个比特图,而每个指示符包括1比特。在每个结构300、310、400、410和420内,第n个指示符与第n个数据块相应(例如,在每个结构400、410、和420内的第一个指示符与第一个数据块相应)。虽然结构300、310和结构400、410、420例示为三个分开的结构,但结构300、310可以在不背离本发明的专利保护范围的情况下以任何形式合并,结构400、410、420在不背离本发明的专利保护范围的情况下也可以以任何形式合并。在本发明的一些实现中,对于每个卷有每个结构的一个拷贝。在本发明的另一些实现中,对于所有的卷有每个结构的单个拷贝。
图5A例示了在按照本发明的一些实现设计的反向恢复过程310内实现的逻辑。为了说明简便起见,存储装置B154的一个卷154a可以处理为一个原源,而存储装置C 164的一个卷164a可以处理为一个原目标。一个快速反向恢复命令于是明确存储装置C164的卷164a应处理为一个新源而存储装置B154的卷154a应处理为一个新目标。
在本发明的一些实现中,在执行快速反向恢复过程128前,从对一个原目标(例如,卷164a)执行了一个即时虚拟拷贝操作以来对一个原源(例如,卷154a)已经进行的一些更新可以在高速缓存器140、非易失性高速缓存器144内和/或在存储装置B154上。如果这些更新已经转出给存储装置B154,于是在数据转出前会已从卷154a到卷164a作了原数据的拷贝。
此外,对于卷154可能有一些在建立即时虚拟拷贝关系时存在的数据块在高速缓存器140和/或非易失性高速缓存器144内。这些数据块属于原即时虚拟拷贝关系。
此外,对于每个从卷154a拷贝给卷164a的数据块,在存储装置C结构420的一个指示符(与卷164a关联的)被复位,以表示这个数据块已经从卷154a拷贝给卷164a。
卷164a是写入禁止的,以保护这个时点拷贝。也就是说,不允许主计算机114、130的程序115、131写所保护的由即时虚拟拷贝操作产生的时点拷贝。
在图5A中,控制开始于块500,接收到一个指出一个新源(例如为卷164a)和一个新目标(例如为卷154a)的快速反向恢复命令。在块502,快速反向恢复过程128执行一个对新目标(卷154a)的同步扫描。具体地说,用同步扫描,将新目标(卷154a)的在高速缓存器140内的在从原源(即,新目标)到原目标(即,新源)(例如,从卷154a到卷164a)建立一个即时虚拟拷贝关系时存在的一些数据块移动到物理存储装置。具体地说,将属于即时虚拟拷贝关系的数据块转出给新目标(卷154a)的物理存储装置而不拷贝给新源(卷164a)。同样,对于在即时虚拟拷贝操作后被更新的数据块,将新目标(卷154)的物理存储装置上的数据块的原内容拷贝给新源(卷164a)的物理存储装置,将所拷贝的数据块的相应指示符在结构420内复位,结构420可以称为一个新源结构,因为它与新源(卷164a)关联,以表明这些数据块已经拷贝。在块504,快速反向恢复过程128停止对新源(卷164a)和新目标(卷154a)的I/O。在一些实现中,I/O在执行块502的同步扫描前停止,从而不更新新目标的其他数据块。在块506,快速反向恢复过程128可按需要任选地将新目标(卷154a)设置为写入禁止。
在块508,快速反向恢复过程128通过将新源结构420内的值反转后拷贝给结构410更新结构410,结构410可以称为新目标结构,因为它与新目标(卷154a)关联。在一些实现中,块506的扫描一完成就执行块508的处理。在新源结构内的指示符为一些1和零的一些实现中,将值反转指的是将0变换为1和将1变换为0。新目标结构410于是表示需从新源(卷164a)拷贝回新目标(卷154a)的数据块。从块508,处理进至块514。
在块514,快速反向恢复过程128舍弃(discard)新目标(卷154a)的在高速缓存器140内的数据块,因为这些数据块是以前处理过的(例如,按需要拷贝给新源(卷164a))。在块516,快速反向恢复过程128可选地启动一个从新源(卷164a)到新目标(卷154a)的后台拷贝(即一种物理拷贝)。后台拷贝操作将数据块从卷164a拷贝给在存储装置B结构410内指示符置位的卷154a。在一些实现中,不是执行一个物理后台拷贝,而是执行一个逻辑拷贝。在块518,快速反向恢复过程128将对新目标(卷154a)的写入禁止复位,如果写入禁止已经在块506置位的话。在块520快速反向恢复过程128开放对新源(卷164a)和新目标(154a)的I/O。
此外,快速反向恢复过程128可以任选地执行从新目标(卷154a)到一个或多个存储装置(例如,到卷164a或到其他存储装置)的拷贝。在从新目标(卷164a)执行拷贝时,这个新目标可以称为“源”。具体地说,一旦后台拷贝完成(这应该是很快的,特别是对于一个在快速反向恢复命令前很短一段时间执行一个即时虚拟拷贝操作的异步PPRC拷贝操作来说),新目标(卷154a)就是一个物理恢复的拷贝,从而结束新源(164a)与新目标(154a)之间的即时虚拟拷贝关系。经更新的卷154a然后可以用一个新的即时虚拟拷贝操作重新拷贝给卷164a,这可以执行成使卷154a上的一个一致的数据拷贝驻留在卷164a上。在一些实现中,经更新的卷154a可以拷贝给多到十一个其他的卷,以生成一个或多个逻辑拷贝。
图5B例示了在本发明的另一些实现的反向恢复过程310中实现的逻辑。图5B包括图5A的处理,但块508进至块510,而不是块514。此外,在图5B中,块510或512进至块514(取决于在块510处理的结果)。在块510,快速反向恢复过程128确定新目标是否处在一个远程镜像关系内。例如,快速反向恢复过程128确定新目标(卷154a)是否也是一个远程镜像关系内的主镜像卷(例如,是否它属于一个异步PPRC拷贝操作或者已经发布了一个远程镜像故障排除命令)。一个主镜像卷可以表示为一个是一个远程镜像拷贝操作的源的卷,而一个副镜像卷可以表示为一个是这个远程镜像拷贝操作的一个目标的卷。一个远程镜像故障排除命令指出处理应该从一个存储装置(例如,存储装置A 112)至另一个存储装置(例如,存储装置B154)排除故障(failover)。如果新目标处于一个远程镜像关系,处理进至块512,否则处理进至块514。在块512,根据新目标结构410内的值更新与新目标(卷154a)关联的不同步结构430。在一些实现中,这更新执行一个新目标结构410与不同步结构430之间的OR(或)操作。所得到的经更新的新不同步结构430于是包括在目标结构410内所标识的需从新目标(卷154a)拷贝给在远程镜像关系内的存储装置(例如,卷112b)的数据块。
为了进一步例示本发明的实现,将结合图6-9来说明本发明的一些实现的例子。本发明的一些实现适用于已经从一个源到一个目标作了即时虚拟拷贝而需在源恢复数据的情况。这样的情况包括不执行PPRC拷贝操作的那些情况。例如,如果执行一个从源A到目标B的即时虚拟拷贝,然后,由于一些差错(例如,软件毁坏之类)源A被毁坏,于是用快速反向恢复命令将源A的内容恢复到在即时虚拟拷贝时的内容。
图6以块图例示了本发明的一些实现的初始计算环境。主控制单元600与副控制单元620相连接。主控制单元600包括存储装置A602,为它保存一个不同步结构606。副控制单元620包括存储装置B622,为它保存一个存储装置B结构624。副控制单元620还包括存储装置C630,为它保存一个存储装置C结构632。正在执行的是一种从存储装置A602到存储装置B622的远程镜像拷贝操作(例如,一个PPRC拷贝操作)。此外还在执行一个从存储装置B622到存储装置C630的即时虚拟拷贝操作(例如,一个FlashCopy操作)。
在一些实现中,图6的计算环境是一个异步PPRC环境,其中正在执行一个PPRC扩展的远距拷贝操作。主机I/O正在写存储装置A 602上的一个或多个卷。此外,在存储装置A602与存储装置B622之间存在一个异步PPRC关系(即,一种远程镜像拷贝关系)。在存储装置B 622与存储装置C630之间存在一个完全卷FlashCopy关系(即,一种即时虚拟拷贝关系),具有目标写禁止(即,对存储装置C630的写禁止)。开始,存储装置B 622是FlashCopy关系的一个源,而存储装置C 630是FlashCopy关系的一个目标卷。
在某些情况下,主控制单元600可能有故障,而在存储装置A 602与存储装置B622之间正在执行一个异步PPRC拷贝操作(即,一种远程镜像拷贝操作)和在存储装置B622与存储装置C630之间正在执行一个FlashCopy操作(即一种即时虚拟拷贝操作)。在这样的情况下,一旦主控制单元出现故障,异步PPRC拷贝操作不再能形成包括来自主控制单元600的更新的一致性组。
图7以块图例示了本发明的某些实现的故障排除处理。一个恢复程序将一个故障排除命令发给存储装置B622上的卷,强迫终止从存储装置A602到存储装置B622的远程镜像关系,建立从存储装置B622到存储装置A602的远程镜像关系(例如,见图7所示的远程镜像关系的方向)。就这个新的远程拷贝关系,为存储装置B622保存一个不同步结构700。在一些实现中,可以预期在进行进一步的恢复处理前存储装置B622上的这些卷接收和成功处理这个故障排除命令。
图8以块图例示了本发明的某些实现的快速反向恢复处理。在对主控制单元600进行故障排除时,存储装置C630具有一个一致的数据拷贝,而存储装置B 622从在存储装置C630上建立了这个一致拷贝以来可以具有另外一些更新。由于存储装置C630具有一致的数据拷贝,因此数据通过一个快速反向恢复命令从存储装置C630拷贝给存储装置B622。然后,一个远程镜像拷贝操作可以将这个一致的数据拷贝从存储装置B622传送给存储装置A602。这个操作可以稍后进行(例如,响应一个指出处理应从一个存储装置返回到另一个存储装置来排除故障的故障后退(failback)命令)。在另一些实现中,数据可以从存储装置B622以其他方式拷贝给存储装置A602。
在一些实现中,一个恢复程序将一个快速反向恢复命令发给与存储装置C630有即时虚拟拷贝关系的存储装置B622,指出需开始一个后台拷贝、目标卷可以是一个PPRC拷贝操作的主镜像卷和这个即时虚拟拷贝关系不是持久的(即,即时虚拟拷贝关系在即时虚拟拷贝操作完成时终止)。
快速反向恢复命令不要求在一个即时虚拟拷贝关系内所涉及的所有数据块在执行快速反向恢复前从源(存储装置B622)拷贝给目标(存储装置C630)。因此,存储装置C结构632可以具有一些置位的指示符,指出在快速反向恢复命令发布时仍需从存储装置B622拷贝的数据块。快速反向恢复命令保证对于在存储装置B622上的从上次即时虚拟拷贝操作以来已经修改的卷,原数据的物理拷贝从存储装置B 622传送给存储装置C630后,再将数据从存储装置C630拷贝回存储装置B622。此外,快速反向恢复命令还保证源(存储装置B622)物理恢复到在上次即时虚拟拷贝(例如,从存储装置B622到存储装置C630)时的数据。
在快速反向恢复命令执行后,存储装置C630上的一个卷可以不是可用的。例如,由于即时虚拟拷贝操作是一个逻辑操作,不是在这个拷贝操作中所涉及的所有数据块都可以已经从存储装置B622物理拷贝给存储装置C630。在这样的情况下,可以发布另一个将数据块从存储装置B622拷贝给存储装置C630的即时虚拟拷贝操作。
此外,快速反向恢复命令检测一个新目标卷是否为一个PPRC拷贝关系的主镜像卷。如果这个新目标卷是一个PPRC拷贝关系的主镜像卷,快速反向恢复命令就用存储装置B结构624更新存储装置B622的不同步结构700。
快速反向恢复命令通过启动一个对存储装置B上的卷的同步扫描执行,以保证将对于一个时点拷贝(例如,即时虚拟拷贝)的原数据移动到存储装置C630上。同步扫描转出高速缓存器内所有用于存储装置B622的数据。如果高速缓存器内的数据属于时点关系,就没有数据从存储装置B622拷贝给存储装置C630。如果数据在时点拷贝后被更新,这个数据转出就强迫将原数据从存储装置B622拷贝给存储装置C630。此外,将一个经反转的存储装置C结构632拷贝给存储装置B结构624。而且,舍弃高速缓存器内用于存储装置B622的卷的数据块。然后,启动一个后台拷贝,将对于存储装置C的目标写入禁止复位。此外,在这段时间内没有对存储装置B622和存储装置C622上的卷的I/O。
恢复程序一直等待到对存储装置B622上的卷的后台拷贝结束。然后,恢复程序发出询问,检验对存储装置B622上的卷的这些后台拷贝是否都已完成。在都已完成时,一致性组就已“硬化”到存储装置B622的这些卷上。在这些后台拷贝完成时,存储装置C630到存储装置B622的即时虚拟拷贝关系终止。
图9以块图例示了本发明的一些实现的其他处理。恢复程序可以按需要任选地发出一个新的即时虚拟拷贝操作(例如,一个FlashCopy操作),明确要启动改变记录和/或FlashCopy操作的目标是写入禁止的。这个新的即时虚拟拷贝操作根据存储装置B 622上的数据在存储装置C630上生成一个一致性组的备份拷贝。此外,可以通过发出一个从存储装置B622到例如测试存储装置D900(图9)的即时虚拟拷贝操作,可以在测试存储装置D900上产生一个一致性组的测试拷贝。
在副控制单元620上激活这些主计算机(例如,主计算机可以由恢复程序激活)。恢复一致性组保存在存储装置C630的卷上。副控制单元620上的主计算机的活动作出的改变记录在存储装置622的卷上和与存储装置B622关联的不同步结构700内。
FlashCopy、IBM、Enterprise Storage Server和ESCON为国际商用机器公司在美国和/或其他国家的注册商标或合法标志。
其他实现情况
所描述的这些实施例可以实现为一种方法、设备或制品,用编程和/或工程技术产生软件、固件、硬件或这些的任何组合。所谓“制品”和“电路”在这里是指一种状态机、代码或逻辑,体现为硬件逻辑(例如,集成电路片、可编程门阵列(PGA)、专用集成电路(ASIC)等)或者一种计算机可读媒体,诸如磁存储媒体(例如,硬盘驱动器、软盘、磁带等)、光存储器(CD-ROMs、光盘等)、易失和非易失性存储器(例如,EEPROMs、ROM、PROM、RAM、PRAM、SRAM、固件、可编程序逻辑等)。处理器访问计算机可读媒体内的代码予以执行。在代码或逻辑由一个处理器执行时,所述电路可以包括媒体(包括代码或逻辑)以及执行从媒体装入的代码的处理器。实现一些实施例的代码也可以是可通过传输媒体或者从网络上的一个文件服务器访问的。在这种情况下,实现代码的制品可以包括传输媒体,诸如网络传输线路、无线传输媒体、通过空间传播的信号、无线电波、红外信号之类。因此,所述“制品”可以包括体现代码的媒体。此外,所述“制品”可以包括一些体现、处理和执行代码的硬件和软件的组合。当然,熟悉该技术的人员可以看到,对这种配置可以进行许多修改,而制品可以包括任何在该技术领域内已知的任何信息承载媒体。
图5A和5B所例示的逻辑示出了以一个特定的顺序发生的一些具体操作。在另一些实现中,这些逻辑操作中的某些可以用不同的顺序执行、更新或舍弃。此外,以上所描述的逻辑还可以添加一些操作,而仍符合所描述的实现。此外,在这里所描述的操作可以顺序进行,某些操作也可以并行进行,而示为由单个过程执行的操作也可以由分布过程执行。
图5A和5B所例示的逻辑可以用软件、硬件、可编程和非可编程门阵列逻辑实现,也可以用硬件、软件或门阵列逻辑的某个组合实现。
图10例示了可以用于本发明的一些实现的计算机系统的体系结构。主计算机114、主计算机130、第一控制单元100和/或副控制单元120可以用计算机体系结构1000实现。计算机体系结构1000可以包括处理器1002(例如,为一个微处理器)、存储器1004(例如,为一个易失性存储器)和存储装置1010(例如,为一个非易失性存储区,诸如磁盘驱动器、光盘驱动器、磁带驱动器之类)。操作系统1005可以在存储器1004内执行。存储装置1010可以包括内部存储装置或者外接存储装置或通过网络可访问的存储装置。存储装置1010内的计算机程序1006可以由处理器1002用在该技术领域内的已知的方式装入存储器1004予以执行。这个体系结构还包括一个可以与一个网络通信的网卡1008。输入装置1012用来向处理器1002提供用户输入,可以包括键盘、鼠标、触笔、拾音器、触敏显示屏,或者任何在该技术领域内已知的激活或输入机构。输出装置1014能表现来自处理器1002或其他组件的信息,诸如监视器、打印机、存储装置之类。这些计算机系统的计算机体系结构1000可以包括比所示出的少的组件、在这里没有示出的其他组件,或者所示出的组件和其他组件的一些组合。
计算机体系结构1000可以包括任何在该技术领域内已知的计算设备,诸如大型机、服务器、个人计算机、工作站、膝上计算机、掌上计算机、电话设备、网络设备、虚拟化设备、存储控制器之类,任何在该技术领域内已知的处理器1002和操作系统1005都可以使用。
作为例示和说明,以上介绍了本发明的一些实现的情况。这些情况并不是穷举性的,或者要将本发明的实现局限于所描述的确切形式。根据以上所述,许多修改和变动都是可行的。本发明的实现的专利保护范围并不由以上详细说明限制,而是由所附权利要求书给出。以上说明、实例和数据提供了对制造和使用本发明的这些实现的构造的完整说明。由于在不背离本发明的实现的精神和专利保护范围的情况下有许多实现方式都可以实现本发明,因此在以下权利要求书或任何以后递交的权利要求书和它们的等效权项中给出了本发明涵盖的所有实现。
Claims (26)
1.一种执行拷贝操作的方法,所述方法包括:
接收指出新源和新目标的快速反向恢复命令,其中所述新源是原目标,而所述新目标是原源;
执行对新目标的同步扫描;以及
用与新源关联的新源结构更新与新目标关联的新目标结构,
其中所述同步扫描被执行使得在新目标的高速缓存器内的在从原源到原目标建立即时虚拟拷贝关系时存在的数据块移动到新目标的物理存储装置。
2.如权利要求1所述的方法,其中执行同步扫描进一步包括:
对于属于即时虚拟拷贝关系的数据块,将这些数据块转出给新目标的物理存储装置;以及
对于在即时虚拟拷贝操作后被更新的数据块,
将新目标的物理存储器上的经更新的数据块的原内容拷贝给新源的物理存储装置;以及
在新源结构内将每个所拷贝的数据块的相应指示符置位,以指出这个数据块已经拷贝。
3.如权利要求2所述的方法,所述方法还包括:
响应于更新新目标结构,舍弃新目标高速缓存器内的数据块。
4.如权利要求1所述的方法,其中更新新目标结构进一步包括:在新源结构内将指示符反转;以及
将经反转的指示符拷贝给新目标结构。
5.如权利要求1所述的方法,所述方法还包括:
响应于更新新目标结构,确定新目标是否处在远程镜像关系内;以及
在新目标处在远程镜像关系内时,根据新目标结构内的值更新与新目标关联的不同步结构。
6.如权利要求1所述的方法,所述方法还包括:
响应接收到快速反向恢复命令,将新目标的写入禁止置位;以及在执行了快速反向恢复命令之后,将新目标的写入禁止复位。
7.如权利要求1所述的方法,所述方法还包括:
响应接收到快速反向恢复命令,停止对新源和新目标的输入/输出操作;以及
响应已执行快速反向恢复命令,开放对新源和新目标的输入/输出操作。
8.如权利要求1所述的方法,所述方法还包括:
响应于更新新目标结构,执行从新目标到新源的即时虚拟拷贝操作。
9.如权利要求1所述的方法,所述方法还包括:
响应于更新新目标结构,执行从新目标到测试存储装置的即时虚拟拷贝操作。
10.如权利要求1所述的方法,其中所述快速反向恢复命令是在从新目标到新源执行了即时虚拟拷贝后接收的,以及其中所述快速反向恢复命令是在这个即时虚拟拷贝完成后台拷贝前执行的。
11.如权利要求1所述的方法,所述方法还包括:
响应于更新新目标结构,用经更新的新目标结构执行从新源到新目标的后台拷贝操作。
12.一种执行拷贝操作的方法,所述方法包括:
接收指出新源和新目标的快速反向恢复命令,其中所述新源是原目标,而所述新目标是原源;
执行对新目标的同步扫描,使得在新目标的高速缓存器内的在从原源到原目标建立即时虚拟拷贝关系时存在的数据块移动到新目标的物理存储装置;
通过将与新源关联的新源结构内的指示符反转和将经反转的指示符拷贝给与新目标关联的新目标结构,用新源结构更新新目标结构;
舍弃新目标的高速缓存器内的数据块;以及
其中所述快速反向恢复命令是在从新目标到新源执行了即时虚拟拷贝后接收的,以及其中所述快速反向恢复命令是在这个即时虚拟拷贝完成后台拷贝前执行的。
13.如权利要求12所述的方法,所述方法还包括:
响应接收到快速反向恢复命令,停止对新源和新目标的输入/输出操作;以及
在执行了快速反向恢复命令之后,开放对新源和新目标的输入/输出操作。
14.一种执行拷贝操作的系统,所述系统包括:
接收指出新源和新目标的快速反向恢复命令的装置,其中所述新源是原目标,而所述新目标是原源;
执行对新目标的同步扫描的装置;以及
用与新源关联的新源结构更新与新目标关联的新目标结构的装置,
其中所述执行对新目标的同步扫描的装置被配置成:执行同步扫描使得在新目标的高速缓存器内的在从原源到原目标建立即时虚拟拷贝关系时存在的数据块移动到新目标的物理存储装置。
15.如权利要求14所述的系统,其中所述执行对新目标的同步扫描的装置被配置成:在执行同步扫描时,
对于属于即时虚拟拷贝关系的数据块,将这些数据块转出给新目标的物理存储装置;以及
对于在即时虚拟拷贝操作后被更新的数据块,
将新目标的物理存储器上的经更新的数据块的原内容拷贝给新源的物理存储装置;以及
在新源结构内将每个所拷贝的数据块的相应指示符置位,以指出这个数据块已经拷贝。
16.如权利要求15所述的系统,还包括:
舍弃新目标的高速缓存器内的数据块的装置。
17.如权利要求14所述的系统,其中所述更新与新目标关联的新目标结构的装置被配置成:在更新新目标结构时,
在新源结构内将指示符反转;以及
将经反转的指示符拷贝给新目标结构。
18.如权利要求14所述的系统,还包括:
确定新目标是否处在远程镜像关系内的装置;以及
在新目标处在远程镜像关系内时,根据新目标结构内的值更新与新目标关联的不同步结构的装置。
19.如权利要求14所述的系统,还包括:
响应接收到快速反向恢复命令,将新目标的写入禁止置位的装置;以及
在执行了快速反向恢复命令之后,将新目标的写入禁止复位的装置。
20.如权利要求14所述的系统,还包括:
响应接收到快速反向恢复命令,停止对新源和新目标的输入/输出操作的装置;以及
在执行了快速反向恢复命令之后,开放对新源和新目标的输入/输出操作的装置。
21.如权利要求14所述的系统,还包括:
执行从新目标到新源的即时虚拟拷贝操作的装置。
22.如权利要求14所述的系统,还包括:
执行从新目标到测试存储装置的即时虚拟拷贝操作的装置。
23.如权利要求14所述的系统,其中所述快速反向恢复命令是在从新目标到新源执行了即时虚拟拷贝后接收的,以及其中所述快速反向恢复命令是在这个即时虚拟拷贝完成后台拷贝前执行的。
24.如权利要求14所述的系统,还包括:
用经更新的新目标结构执行从新源到新目标的后台拷贝操作的装置。
25.一种执行拷贝操作的系统,所述系统包括:
接收指出新源和新目标的快速反向恢复命令的装置,其中所述新源是原目标,而所述新目标是原源;
执行对新目标的同步扫描,使得在新目标的高速缓存器内的在从原源到原目标建立即时虚拟拷贝关系时存在的数据块移动到新目标的物理存储装置的装置;
通过将与新源关联的新源结构内的指示符反转和将经反转的指示符拷贝给与新目标关联的新目标结构,用新源结构更新新目标结构的装置;
舍弃新目标的高速缓存器内的数据块的装置;
其中所述快速反向恢复命令是在从新目标到新源执行了即时虚拟拷贝后接收的,以及其中所述快速反向恢复命令是在这个即时虚拟拷贝完成后台拷贝前执行的。
26.如权利要求25所述的系统,还包括:
响应接收到快速反向恢复命令,停止对新源和新目标的输入/输出操作的装置;以及
在执行了快速反向恢复命令之后,开放对新源和新目标的输入/输出操作的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/856,239 | 2004-05-27 | ||
US10/856,239 US7461100B2 (en) | 2004-05-27 | 2004-05-27 | Method for fast reverse restore |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1702627A CN1702627A (zh) | 2005-11-30 |
CN100369005C true CN100369005C (zh) | 2008-02-13 |
Family
ID=35461781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100738416A Expired - Fee Related CN100369005C (zh) | 2004-05-27 | 2005-05-24 | 执行拷贝操作的方法和系统 |
Country Status (4)
Country | Link |
---|---|
US (3) | US7461100B2 (zh) |
JP (1) | JP4701007B2 (zh) |
CN (1) | CN100369005C (zh) |
TW (1) | TWI349881B (zh) |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7409510B2 (en) * | 2004-05-27 | 2008-08-05 | International Business Machines Corporation | Instant virtual copy to a primary mirroring portion of data |
US7461100B2 (en) * | 2004-05-27 | 2008-12-02 | International Business Machines Corporation | Method for fast reverse restore |
US7640408B1 (en) * | 2004-06-29 | 2009-12-29 | Emc Corporation | Online data migration |
US7058731B2 (en) * | 2004-08-03 | 2006-06-06 | Hitachi, Ltd. | Failover and data migration using data replication |
US8812433B2 (en) | 2005-02-07 | 2014-08-19 | Mimosa Systems, Inc. | Dynamic bulk-to-brick transformation of data |
US8918366B2 (en) | 2005-02-07 | 2014-12-23 | Mimosa Systems, Inc. | Synthetic full copies of data and dynamic bulk-to-brick transformation |
US8799206B2 (en) | 2005-02-07 | 2014-08-05 | Mimosa Systems, Inc. | Dynamic bulk-to-brick transformation of data |
US8271436B2 (en) * | 2005-02-07 | 2012-09-18 | Mimosa Systems, Inc. | Retro-fitting synthetic full copies of data |
US7552295B2 (en) * | 2006-01-03 | 2009-06-23 | International Business Machines Corporation | Maintaining consistency when mirroring data using different copy technologies |
US7823007B2 (en) * | 2006-02-17 | 2010-10-26 | International Business Machines Corporation | Apparatus, system, and method for switching a volume address association in a point-in-time copy relationship |
US7941404B2 (en) * | 2006-03-08 | 2011-05-10 | International Business Machines Corporation | Coordinated federated backup of a distributed application environment |
JP4710688B2 (ja) * | 2006-03-28 | 2011-06-29 | 沖電気工業株式会社 | 冗長システムのファイル更新方法 |
JP4942418B2 (ja) | 2006-08-04 | 2012-05-30 | 株式会社日立製作所 | 計算機システム及びそのスナップショット作成方法 |
GB0616257D0 (en) * | 2006-08-16 | 2006-09-27 | Ibm | Storage management system for preserving consistency of remote copy data |
JP5057366B2 (ja) * | 2006-10-30 | 2012-10-24 | 株式会社日立製作所 | 情報システム及び情報システムのデータ転送方法 |
GB0625330D0 (en) * | 2006-12-20 | 2007-01-24 | Ibm | System,method and computer program product for managing data using a write-back cache unit |
US7793148B2 (en) * | 2007-01-12 | 2010-09-07 | International Business Machines Corporation | Using virtual copies in a failover and failback environment |
US7992036B2 (en) * | 2007-01-22 | 2011-08-02 | International Business Machines Corporation | Apparatus, system, and method for volume-level restoration of cluster server data |
US8818936B1 (en) * | 2007-06-29 | 2014-08-26 | Emc Corporation | Methods, systems, and computer program products for processing read requests received during a protected restore operation |
JP4898609B2 (ja) | 2007-09-11 | 2012-03-21 | 株式会社日立製作所 | ストレージ装置、データ回復方法及び計算機システム |
GB0813833D0 (en) | 2008-07-29 | 2008-09-03 | Transitive Ltd | Apparatus and method for handling page protection faults in a computing system |
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 |
US8255648B2 (en) * | 2008-10-30 | 2012-08-28 | International Business Machines Corporation | Maintaining storage device backup consistency |
WO2010049391A2 (en) | 2008-10-30 | 2010-05-06 | International Business Machines Corporation | Performing a data write on a storage device |
KR101522443B1 (ko) | 2008-10-30 | 2015-05-21 | 인터내셔널 비지네스 머신즈 코포레이션 | 플래시카피 처리방법 및 시스템 |
TWI514249B (zh) * | 2009-01-23 | 2015-12-21 | Infortrend Technology Inc | 遠端非同步資料卷複製的方法及執行該方法的儲存系統 |
US8805953B2 (en) * | 2009-04-03 | 2014-08-12 | Microsoft Corporation | Differential file and system restores from peers and the cloud |
US9256598B1 (en) | 2009-08-19 | 2016-02-09 | Emc Corporation | Systems, methods, and computer readable media for copy-on-demand optimization for large writes |
WO2011036015A1 (en) | 2009-09-24 | 2011-03-31 | International Business Machines Corporation | Data storage using bitmaps |
CN102511036B (zh) | 2009-09-25 | 2015-09-30 | 国际商业机器公司 | 数据存储 |
US8533411B2 (en) * | 2010-03-11 | 2013-09-10 | International Business Machines Corporation | Multiple backup processes |
US8812436B2 (en) * | 2010-05-04 | 2014-08-19 | Symantec Corporation | Schedule based data lifecycle management |
US8782360B2 (en) | 2010-05-13 | 2014-07-15 | International Business Machines Corporation | Preserving an existing volume map in re-initializing a data storage volume |
US8788770B2 (en) | 2010-05-25 | 2014-07-22 | International Business Machines Corporation | Multiple cascaded backup process |
US8433870B2 (en) | 2010-10-12 | 2013-04-30 | International Business Machines Corporation | Multiple incremental virtual copies |
US8479041B2 (en) | 2010-10-13 | 2013-07-02 | International Business Machines Corporation | Disaster recovery failback |
US8918607B2 (en) | 2010-11-19 | 2014-12-23 | International Business Machines Corporation | Data archiving using data compression of a flash copy |
US8555010B2 (en) * | 2011-03-24 | 2013-10-08 | Hitachi, Ltd. | Computer system and data backup method combining flashcopy and remote copy |
US8868860B2 (en) | 2011-09-23 | 2014-10-21 | International Business Machines Corporation | Restore in cascaded copy environment |
US8719523B2 (en) | 2011-10-03 | 2014-05-06 | International Business Machines Corporation | Maintaining multiple target copies |
US8825973B2 (en) * | 2012-01-17 | 2014-09-02 | International Business Machines Corporation | Caching source blocks of data for target blocks of data |
US20150019792A1 (en) * | 2012-01-23 | 2015-01-15 | The Regents Of The University Of California | System and method for implementing transactions using storage device support for atomic updates and flexible interface for managing data logging |
US9195403B2 (en) * | 2012-09-12 | 2015-11-24 | International Business Machines Corporation | Replicating tracks from a first storage site to a second and third storage sites |
US9405704B2 (en) * | 2012-10-16 | 2016-08-02 | International Business Machines Corporation | Establishing a point-in-time copy relationship between source logical addresses and target logical addresses |
US9135121B2 (en) * | 2012-10-16 | 2015-09-15 | International Business Machines Corporation | Managing updates and copying data in a point-in-time copy relationship expressed as source logical addresses and target logical addresses |
US9116852B2 (en) | 2012-10-16 | 2015-08-25 | International Business Machines Corporation | Processing a copy command directed to a first storage architecture for data that is stored in a second storage architecture |
US9317423B2 (en) * | 2013-01-07 | 2016-04-19 | Hitachi, Ltd. | Storage system which realizes asynchronous remote copy using cache memory composed of flash memory, and control method thereof |
US9430333B2 (en) | 2013-03-14 | 2016-08-30 | Microsoft Technology Licensing, Llc | Recovery of application from snapshot |
US10007602B2 (en) | 2014-05-06 | 2018-06-26 | International Business Machines Corporation | Flash copy relationship management |
US20160100004A1 (en) * | 2014-10-06 | 2016-04-07 | International Business Machines Corporation | Data replication across servers |
US10108352B2 (en) * | 2015-03-03 | 2018-10-23 | International Business Machines Corporation | Incremental replication of a source data set |
KR102370733B1 (ko) * | 2015-04-13 | 2022-03-08 | 에스케이하이닉스 주식회사 | 출력 커맨드들을 전송하는 컨트롤러 및 그것의 동작 방법 |
US10013316B2 (en) | 2015-08-10 | 2018-07-03 | International Business Machines Corporation | Replicating a source data set to a target data store |
US9830105B1 (en) * | 2015-12-21 | 2017-11-28 | EMC IP Holding Company LLC | Migrating data objects together with their snaps |
US10042581B2 (en) | 2016-12-07 | 2018-08-07 | International Business Machines Corporation | Releasing space allocated to a space efficient target storage in a copy relationship with a source storage |
US20180157697A1 (en) | 2016-12-07 | 2018-06-07 | International Business Machines Corporation | Updating change information for current copy relationships when establishing a new copy relationship having overlapping data with the current copy relationships |
US9983815B1 (en) | 2016-12-07 | 2018-05-29 | International Business Machines Corporation | Using a cascade flag to process a copy relationship having a backward cascade copy relationship |
US10558532B2 (en) | 2017-11-09 | 2020-02-11 | International Business Machines Corporation | Recovering from a mistaken point-in-time copy restore |
US10521139B2 (en) * | 2017-12-14 | 2019-12-31 | International Business Machines Corporation | Copy source to target management in a data storage system |
US10585767B2 (en) * | 2018-02-07 | 2020-03-10 | International Business Machines Corporation | Automatic data healing using a storage controller |
US10579285B2 (en) | 2018-02-07 | 2020-03-03 | International Business Machines Corporation | Automatic data healing by I/O |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5394539A (en) * | 1991-09-04 | 1995-02-28 | International Business Machines Corporation | Method and apparatus for rapid data copying using reassigned backing pages |
US6047294A (en) * | 1998-03-31 | 2000-04-04 | Emc Corp | Logical restore from a physical backup in a computer storage system |
US6490598B1 (en) * | 1999-12-20 | 2002-12-03 | Emc Corporation | System and method for external backup and restore for a computer data storage system |
US6611901B1 (en) * | 1999-07-02 | 2003-08-26 | International Business Machines Corporation | Method, system, and program for maintaining electronic data as of a point-in-time |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835954A (en) * | 1996-09-12 | 1998-11-10 | International Business Machines Corporation | Target DASD controlled data migration move |
US5884328A (en) * | 1997-08-29 | 1999-03-16 | Tandem Computers, Inc. | System and method for sychronizing a large database and its replica |
US6131148A (en) * | 1998-01-26 | 2000-10-10 | International Business Machines Corporation | Snapshot copy of a secondary volume of a PPRC pair |
US6253295B1 (en) * | 1998-07-20 | 2001-06-26 | International Business Machines Corporation | System and method for enabling pair-pair remote copy storage volumes to mirror data in another pair of storage volumes |
US6442709B1 (en) * | 1999-02-09 | 2002-08-27 | International Business Machines Corporation | System and method for simulating disaster situations on peer to peer remote copy machines |
US6058054A (en) * | 1999-03-31 | 2000-05-02 | International Business Machines Corporation | Method and system for providing an instant backup in a RAID data storage system |
US6446176B1 (en) * | 2000-03-09 | 2002-09-03 | Storage Technology Corporation | Method and system for transferring data between primary storage and secondary storage using a bridge volume and an internal snapshot copy of the data being transferred |
US6499112B1 (en) | 2000-03-28 | 2002-12-24 | Storage Technology Corporation | Automatic stand alone recovery for peer to peer remote copy (PPRC) operations |
US6557089B1 (en) * | 2000-11-28 | 2003-04-29 | International Business Machines Corporation | Backup by ID-suppressed instant virtual copy then physical backup copy with ID reintroduced |
JP2002189570A (ja) * | 2000-12-20 | 2002-07-05 | Hitachi Ltd | 記憶システムの二重化方法および記憶システム |
US6728736B2 (en) | 2001-03-14 | 2004-04-27 | Storage Technology Corporation | System and method for synchronizing a data copy using an accumulation remote copy trio |
US6640291B2 (en) * | 2001-08-10 | 2003-10-28 | Hitachi, Ltd. | Apparatus and method for online data migration with remote copy |
GB2382890B (en) | 2001-12-06 | 2005-04-20 | Ibm | Computer storage subsystem, method, software program and data carrier |
US7139932B2 (en) * | 2002-01-03 | 2006-11-21 | Hitachi, Ltd. | Data synchronization of multiple remote storage after remote copy suspension |
US7177356B2 (en) * | 2002-01-11 | 2007-02-13 | Webtv Networks, Inc. | Spatially transcoding a video stream |
US7747576B2 (en) * | 2002-02-20 | 2010-06-29 | International Business Machines Corporation | Incremental update control for remote copy |
US7082445B2 (en) * | 2002-04-01 | 2006-07-25 | International Business Machines Corporation | Fast data copy using a data copy track table |
JP2004046435A (ja) * | 2002-07-10 | 2004-02-12 | Hitachi Ltd | バックアップ方法、その方法に用いた記憶制御装置 |
US7000145B2 (en) * | 2003-06-18 | 2006-02-14 | International Business Machines Corporation | Method, system, and program for reverse restore of an incremental virtual copy |
US6996586B2 (en) * | 2003-06-18 | 2006-02-07 | International Business Machines Corporation | Method, system, and article for incremental virtual copy of a data block |
US7124323B2 (en) * | 2003-06-18 | 2006-10-17 | International Business Machines Corporation | Method, system, and program for recovery of a reverse restore operation |
US7461100B2 (en) * | 2004-05-27 | 2008-12-02 | International Business Machines Corporation | Method for fast reverse restore |
US7409510B2 (en) * | 2004-05-27 | 2008-08-05 | International Business Machines Corporation | Instant virtual copy to a primary mirroring portion of data |
-
2004
- 2004-05-27 US US10/856,239 patent/US7461100B2/en not_active Expired - Fee Related
-
2005
- 2005-05-02 TW TW094114082A patent/TWI349881B/zh not_active IP Right Cessation
- 2005-05-24 JP JP2005150607A patent/JP4701007B2/ja not_active Expired - Fee Related
- 2005-05-24 CN CNB2005100738416A patent/CN100369005C/zh not_active Expired - Fee Related
-
2008
- 2008-10-21 US US12/255,575 patent/US7856425B2/en not_active Expired - Fee Related
-
2010
- 2010-10-29 US US12/916,148 patent/US8005800B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5394539A (en) * | 1991-09-04 | 1995-02-28 | International Business Machines Corporation | Method and apparatus for rapid data copying using reassigned backing pages |
US6047294A (en) * | 1998-03-31 | 2000-04-04 | Emc Corp | Logical restore from a physical backup in a computer storage system |
US6611901B1 (en) * | 1999-07-02 | 2003-08-26 | International Business Machines Corporation | Method, system, and program for maintaining electronic data as of a point-in-time |
US6490598B1 (en) * | 1999-12-20 | 2002-12-03 | Emc Corporation | System and method for external backup and restore for a computer data storage system |
Non-Patent Citations (1)
Title |
---|
IBM TotalStorage Enterprise Storage Server:Implementing the ESS in Your Environment. Gustavo Castets,Donald(Chuck)Laing,etc.,全文. 2002 * |
Also Published As
Publication number | Publication date |
---|---|
CN1702627A (zh) | 2005-11-30 |
JP4701007B2 (ja) | 2011-06-15 |
US7461100B2 (en) | 2008-12-02 |
TW200617774A (en) | 2006-06-01 |
TWI349881B (en) | 2011-10-01 |
US20110047343A1 (en) | 2011-02-24 |
US20090187613A1 (en) | 2009-07-23 |
US8005800B2 (en) | 2011-08-23 |
JP2005339554A (ja) | 2005-12-08 |
US20050278391A1 (en) | 2005-12-15 |
US7856425B2 (en) | 2010-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100369005C (zh) | 执行拷贝操作的方法和系统 | |
US7577788B2 (en) | Disk array apparatus and disk array apparatus control method | |
US10346253B2 (en) | Threshold based incremental flashcopy backup of a raid protected array | |
EP3179359B1 (en) | Data sending method, data receiving method, and storage device | |
KR101054962B1 (ko) | 페일오버 및 페일백 환경에서 버추얼 카피의 사용 | |
US6463501B1 (en) | Method, system and program for maintaining data consistency among updates across groups of storage areas using update times | |
US7188222B2 (en) | Method, system, and program for mirroring data among storage sites | |
US7921273B2 (en) | Method, system, and article of manufacture for remote copying of data | |
EP1455275B1 (en) | Data restoring apparatus using journal data and identification information | |
CN100356336C (zh) | 用于增量虚拟复制的方法和系统 | |
CN101617295B (zh) | 集群对中的子系统控制器及集群操作方法 | |
US20160203055A1 (en) | Synchronized flashcopy backup restore of a raid protected array | |
US7216210B2 (en) | Data I/O system using a plurality of mirror volumes | |
WO2002052418A1 (en) | Write logging in mirrored disk subsystems | |
CN101755257A (zh) | 管理在不同的网络上将写入从首要存储器复制到次要存储器 | |
US7124323B2 (en) | Method, system, and program for recovery of a reverse restore operation | |
US7260739B2 (en) | Method, apparatus and program storage device for allowing continuous availability of data during volume set failures in a mirrored environment | |
US20050144500A1 (en) | Computer system having failure recovery function, and failure recovery method thereof | |
US20050071380A1 (en) | Apparatus and method to coordinate multiple data storage and retrieval systems |
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: 20080213 |
|
CF01 | Termination of patent right due to non-payment of annual fee |