CN101118507A - 计算机系统及其快照生成方法 - Google Patents

计算机系统及其快照生成方法 Download PDF

Info

Publication number
CN101118507A
CN101118507A CNA2007101055374A CN200710105537A CN101118507A CN 101118507 A CN101118507 A CN 101118507A CN A2007101055374 A CNA2007101055374 A CN A2007101055374A CN 200710105537 A CN200710105537 A CN 200710105537A CN 101118507 A CN101118507 A CN 101118507A
Authority
CN
China
Prior art keywords
volume
data
storage system
snapshot
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2007101055374A
Other languages
English (en)
Other versions
CN101118507B (zh
Inventor
圷弘明
江口贤哲
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN101118507A publication Critical patent/CN101118507A/zh
Application granted granted Critical
Publication of CN101118507B publication Critical patent/CN101118507B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2064Error 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 while ensuring consistency
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2058Error 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 using more than 2 mirrored copies
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2071Error 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 using a plurality of controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种能够使系统简单且高速运行的计算机系统。计算机系统包含第一存储系统和第二存储系统,第一存储系统具备数据传输部,将第一卷中存储的数据传输至第二存储系统的第二卷,第二存储系统具备快照生成部,根据快照生成指示,在第三卷中生成第二卷的快照,若快照生成部在通过数据传输部从第一卷向第二卷传输数据时接收到快照生成指示,则延迟向第三卷生成第二卷的快照,直到结束从第一卷向第二卷传输数据。

Description

计算机系统及其快照生成方法
技术领域
本发明涉及存储系统及其快照生成方法。
背景技术
以往,通过网络将主计算机与存储系统连接,经由网络收发由主计算机处理的数据并存储在存储系统中的计算机系统得到了应用。
在这样的计算机系统中,已知如下远程拷贝技术:本地站点的存储系统的卷组以及远程站点的存储系统的卷组,经由网络构成用于执行卷间拷贝的配对关系,通过从本地站点的存储系统的卷组向远程站点的存储系统的卷组进行数据拷贝(复制),即使在本地站点的存储系统中发生了灾难,也可以防止数据消失。
作为与远程拷贝技术相关的现有技术,例如在非专利文献1以及非专利文献2中公开了以下非同步远程拷贝技术:每到一定时间,汇总本地站点的存储系统的卷组的变更差分,非同步地传输至远程站点的存储系统,由此,在远程站点的存储系统的卷组中生成本地站点的存储系统的卷组的备份。
然而,在所述非同步远程拷贝技术中,当将本地站点的存储系统的卷组的变更差分传输至远程站点的存储系统的卷组时,无法保证主计算机向本地站点的存储系统的卷或卷组中写入的顺序的一致性(consistency)。
因此,通过所述非同步远程拷贝技术,在传输过程中本地站点的存储系统因灾难等发生故障的情况下,无法保证远程站点的存储系统的卷组的一致性,因此有时数据会损坏。
因此,公开了如下远程拷贝技术,其通过将所述非同步远程拷贝技术与本地拷贝技术相结合,在任意时刻均保证在远程站点的存储系统中存在取得主计算机的写入顺序的一致性的卷。具体而言,通过该远程拷贝技术,从本地站点的存储系统的第一卷组向远程站点的存储系统的第二卷组进行非同步远程拷贝,在传输了全部变更差分后,从第二卷组向远程站点的存储系统的第四卷组进行本地拷贝。如此,通过交替地实施非同步远程拷贝和本地拷贝,将本地站点的存储系统的第一卷组的变更差分传输至远程站点的存储系统的第二卷组时,在第四卷组中保证存在取得了一致性的卷组。
另外,在非专利文献3中公开了以下远程拷贝技术:在远程站点的存储系统中,通过首先在差分缓冲器(buffer)中保存差分数据,即使本地站点的存储系统由于灾难等发生故障而无法进行后续的数据传输的情况下,也可以通过远程站点的存储系统,构成取得主计算机向本地站点的存储系统写入的顺序的一致性的卷组。
【非专利文献1】IBM REDBOOKS-Disaster Recovery with BD2 UDB forzOS 2004年11月
【非专利文献2】IBM REDBOOKS-The IBM TotalStorage DS8000Series:Copy Services with IBM Eserver zSerises 2006年2月
【非专利文献3】Using Asynchronous Replication for Business ContinuityBetween Two or More Sites 2004年12月
然而,在结合了非同步远程拷贝技术和本地拷贝技术的上述远程拷贝技术中,在该远程拷贝技术的系统运行中,在远程站点的存储系统中,为测试(test)等用途而使用了第二卷组以及第四卷组的情况下,需要中断该远程拷贝技术的系统运行直到测试的执行结束。另外,若执行该测试时在第二卷组以及第四卷组中进行了写入,则可能无法得到正确的备份。
因此,考虑在远程站点的存储系统中准备新的第三卷组,生成第二卷组的快照来作为第三卷组。但是,当生成第二卷组的快照作为第三卷组时,由于有时第二卷组正处在拷贝变更差分的过程中,因此无法保证从主计算机向本地站点的存储系统的写入顺序的一致性。
此时,为了生成保证一致性的快照,需要中断上述远程拷贝技术的系统运行,在本地站点侧发出成为保证了一致性的状态的命令后,生成第二卷组的快照,然后在本地站点侧发出重新开始上述远程拷贝技术的系统运行的命令。所以在本地站点的存储系统中产生了停止、重新开始上述远程拷贝技术的系统运行等烦杂的操作,影响系统运行。
另外,关于非专利文献3中记载的远程拷贝技术,在该远程拷贝技术的系统运行中生成远程站点的存储系统中的第二卷组的快照的情况下,有时正在应用差分缓冲器的数据,有可能无法保证一致性。
发明内容
考虑以上问题而作出本发明,其提供能够使系统简单且高速运行的计算机系统及其快照生成方法。
为解决所述问题,在本发明中,计算机系统包含:具有存储从上位装置发送的数据的第一卷的第一存储系统、具有存储从第一存储系统发送的数据的第二卷的第二存储系统。在所述计算机系统中,第一存储系统具备将第一卷中存储的数据传输至第二存储系统的第二卷的数据传输部;第二存储系统具备根据快照生成指示,在第三卷中生成第二卷的快照的快照生成部;快照生成部,在通过数据传输部从第一卷向第二卷传输数据时接收到快照生成指示的情况下,延迟向第三卷中生成第二卷的快照,直到结束从第一卷向第二卷传输数据。
因此,即使在远程拷贝系统的运行时执行测试等情况下,也可以提前有效地防止该系统运行的停止、重新开始等烦杂的操作,可以不停止系统运行地生成取得了一致性的状态的快照。
另外,在本发明中,计算机系统包含:具有存储从上位装置发送的数据的第一卷的第一存储系统、具有存储从第一存储系统发送的数据的第二卷的第二存储系统。所述计算机系统的快照生成方法具有以下步骤:将第一卷中存储的数据传输至第二存储系统的第二卷的第一步骤;根据快照生成指示,在第三卷中生成第二卷的快照的第二步骤。在第二步骤中,若在第一步骤中从第一卷向第二卷传输数据时接收到快照生成指示,则延迟向第三卷生成第二卷的快照,直到结束从第一卷向第二卷传输数据。
因此,即使在远程拷贝系统运行时执行测试等的情况下,也可以提前有效地防止该系统运行的停止、重新开始等烦杂的操作,可以不停止系统运行地生成取得一致性的状态的快照。
根据本发明,在从第一卷向第二卷传输数据时接收到快照生成指示的情况下,延迟向第三卷生成第二卷的快照,直到结束从第一卷向第二卷传输数据,由此,即使在远程拷贝系统运行时执行测试等情况下,也可以提前有效地防止该系统的停止、重新开始等烦杂的操作,可以不停止系统运行地生成取得一致性的状态的快照,于是,可以实现能够使系统简单且高速运行的计算机系统及其快照生成方法。
附图说明
图1是表示第一实施方式的计算机系统的概略结构的框图。
图2是表示计算机系统的内部概略结构的框图。
图3是用于说明更新位图及差分位图的概念图。
图4是用于说明配对信息的概念图。
图5是用于说明端文件的概念图。
图6是用于说明本地拷贝控制信息的概念图。
图7是用于说明远程拷贝系统的动作的概念图。
图8是用于说明远程拷贝系统的动作的概念图。
图9是用于说明第一~第四卷组的更新状态的概念图。
图10是表示I/O访问处理过程的流程图。
图11是表示I/O访问处理过程的流程图。
图12是表示I/O访问处理过程的流程图。
图13是表示I/O访问处理过程的流程图。
图14是表示拷贝管理处理过程的流程图。
图15是表示拷贝管理处理过程的流程图。
图16是表示远程拷贝处理过程的流程图。
图17是表示本地拷贝处理过程的流程图。
图18是表示快照处理过程的流程图。
图19是表示后台拷贝处理过程的流程图。
图20是表示扩展快照处理过程的流程图。
图21是表示第二实施方式的计算机系统的概略结构的框图。
图22是表示计算机系统的内部概略结构的框图。
图23是用于说明差分缓冲器的概念图。
图24是用于说明第一~第三卷组及差分缓冲器的更新状态的概念图。
图25是表示I/O访问处理过程的流程图。
图26是表示I/O访问处理过程的流程图。
图27是表示I/O访问处理过程的流程图。
图28是表示拷贝管理处理过程的流程图。
图29是表示拷贝管理处理过程的流程图。
图30是表示远程拷贝处理过程的流程图。
图31是表示本地拷贝处理过程的流程图。
图32是用于说明标识的概念图。
图33是表示标识处理过程的流程图。
图34是表示拷贝管理处理过程的流程图。
图35是表示扩展快照处理过程的流程图。
符号说明
100计算机系统;101主计算机;102A第一存储系统;102B第二存储系统;103网络;104管理终端;111A~111D第一~第四卷组;112A、112C、112D更新位图;112B差分位图;121远程拷贝的配对关系;122、141远程拷贝;123本地拷贝的配对关系;124、142本地拷贝;125快照;201A、201B存储控制装置;202A、202B存储装置;224A、224B存储器;225A、225B处理器;231A、231B拷贝管理程序;232远程拷贝程序;233A、233B I/O控制程序;234标识控制程序;235A、235B配对信息;236端文件;237本地拷贝程序;238快照扩展程序;239快照程序;240本地拷贝控制信息
具体实施方式
以下,针对附图来详细描述本发明的一种实施方式。
(1)第一实施方式
图1表示本发明的第一实施方式中的计算机系统100的概略结构。经由网络103将主计算机101、第一存储系统102A以及第二存储系统102B相连而构成计算机系统100。另外,经由网络103或直接地将参照内部状态的管理终端104与第一存储系统102A以及第二存储系统102B相连而构成计算机系统100。
第一存储系统102A被设定在由后述一个或多个驱动器211A、221B提供的物理存储区域上,具有存储数据的一个或多个第一卷组111A。另外,第二存储系统102B具有与第一卷组111A同样地构成的第二卷组111B、第三卷组111C以及第四卷组111D。
第一卷组111A以及第二卷组111B形成用于执行远程拷贝的卷间拷贝的配对关系121。计算机系统100在第一卷组111A以及第二卷组111B之间执行远程拷贝122。另外,第二卷组111B以及第四卷组111D形成用于执行本地拷贝的卷间拷贝的配对关系123。计算机100在第二卷组111B以及第四卷组111D之间执行本地拷贝124。这样,在计算机系统100中通过两个配对关系而构成远程拷贝系统。
第三卷组111C是成为第二卷组111B的快照124的目标的卷组。在测试等用途中从主计算机101等计算机访问执行快照125后的卷组、即第三卷组111C。
第一存储系统102A具有与第一卷组111A对应的两个位图,即更新位图112A以及差分位图112B。更新位图112A表示通过向第一卷组111A进行数据写入而更新的部分。差分位图112B表示传输至第二存储系统102B的第二卷组111B的差分数据。另外,第二存储系统102B具有与第二卷组111B对应的更新位图112C,具有与第三卷组111C对应的更新位图112D。
一般地,第一存储系统102A被物理地设置在本地站点侧,第二存储系统102B为避免灾害等影响而被物理地设置在距离本地站点一定距离的远程站点侧。
图2表示计算机系统100中的内部概略结构。第一存储系统102A由存储控制装置201A、与该存储控制装置201A相连的存储装置202A构成。存储装置202A由多个驱动器211A构成。存储控制装置201A由与网络103相连的输入输出部221A、连接管理终端104和网络103的管理输入输出部222A、可以由用户等对存储控制装置201A进行指示的维护终端223A、配置有各种程序或数据的存储器224A、主要使存储器224A上的各种程序运行的处理器225A构成。此外,上述驱动器211A不仅是硬盘等磁性存储介质,也考虑使用半导体存储器等。另外,也考虑将存储器224A作为存储介质来构成存储控制装置。在这种情况下,可以不连接存储装置202A而构成存储系统。另外,也考虑代替存储装置202A,通过光纤通道等连接其他存储系统来作为存储装置工作。
第二存储系统102B,除存储器224B上存储的各种程序或信息等不同以外,与第一存储系统102A同样地构成,对于第二存储系统102B各构成要素中与第一存储系统102A的构成要素相同的部分,在相同符号中替代尾标“A”而添加尾标“B”。此外,在计算机系统100中,从第二存储系统102B是备份存储系统的观点出发,也可以由例如SCSI(Small Computer System Interface)盘等高价盘驱动器构成第一存储系统102A的驱动器211A,由例如SATA(Serial AT Attachment)盘或光盘等廉价盘设备构成第二存储系统102B的驱动器211B。
在第一存储系统102A的存储器224A上存储有:与后述拷贝管理程序231B联合来控制远程拷贝的执行等的拷贝管理程序231A、控制从第一存储系统102A的第一卷组111A向第二存储系统102B的第二卷组111B的差分数据间歇传输等的远程拷贝程序232、控制对第一卷组111A的数据访问(读写)的I/O(Input/Output)控制程序233A、控制后述标识(Marker)的写入的标识控制程序234、多个更新位图112A、多个差分位图112B、配对信息235A、用于保存写对象数据的端文件(Side file)236。
另外,第二存储系统102B的存储器224B上存储有:与拷贝管理程序231A联合来控制远程拷贝以及本地拷贝的执行等的拷贝管理程序231B、本地拷贝程序237、控制对第二~第四卷组111B~112D的数据访问的I/O控制程序233B、快照扩展程序238、快照程序239、本地拷贝控制信息240、多个更新位图112C、112D、配对信息235B。
图3~图6表示在第一以及第二存储系统102A、102B的内部保存的数据结构。
图3是更新位图112A、112C、112D以及差分位图112B的概略说明。更新位图112A、112C、112D以及差分位图112B,对应于第一~第三卷组111A~111C而存在,是与该第一~第三卷组111A~111C的全部存储区域中一定大小的存储区域302一一对应的位301的集合体。各个位301具有,第一~第三卷组111A~112C对应的存储区域302中存储的数据从某时刻起是否被更新的信息。更新位图112A、111C以及111D,用于记录在一定时间内向对应的第一~第三卷组111A~112C进行了数据写入的存储区域302、或者用于判断是否需要向存储区域302进行数据拷贝。差分位图112B用于从第一卷组111A的存储区域302中参照在执行远程拷贝中应该拷贝的数据。详细情况在后面通过程序的动作进行说明。
图4表示配对信息235A的表结构。配对信息235A以列表形式构成,具有以下项目:对识别符311A、作为拷贝源卷的源卷名312A、作为拷贝目的地卷的目标卷名313A、表示远程拷贝的配对关系的配对关系314A。此外,配对信息235B,关于配对关系314B,除了表示远程拷贝或本地拷贝、快照等配对关系以外,和配对信息235A同样地构成。
图5表示端文件236的表结构。端文件236以列表形式构成,具有以下项目:卷名321、存储区域地址322、存储数据323。端文件236主要出于保存写入目标存储区域前的数据的目的,而进行临时数据保存。例如,在参照差分位图112B的同时向第二存储系统102B传输数据时,并行地从主计算机101向第二卷111B写入数据的情况下,由于可能变更了差分位图112B所对应的存储区域,因此,考虑使用端文件236来临时存储当前在该存储区域中写入的数据,如有必要,在数据传输时进行参照。另外,端文件236不仅存在于存储器224A上,也可以存在于存储装置202A内的存储区域中。详细情况在后面通过程序的动作进行说明。
图6表示本地拷贝控制信息240的表结构。本地拷贝控制信息240以列表形式构成,有以下项目:卷名331、本地拷贝控制标志(flag)332、执行等待标志333。本地拷贝控制标志332用于判断是否可以针对相应卷生成快照。在这种情况下,若本地拷贝控制标志332为开(ON),则表示由于远程拷贝已结束,因而可以执行本地拷贝;若本地拷贝控制标志332为关(OFF),则表示由于远程拷贝正在执行中,因而不能执行本地拷贝。执行等待标志333用于防止在快照执行中向第一存储系统102A发送本地拷贝结束报告。另外,在这种情况下,若执行等待标志333为开(ON),则表示由于快照在执行中,因此不能执行远程拷贝(不能发送本地拷贝结束报告);若执行等待标志333为关(OFF),则表示由于快照已结束,因此可以执行远程拷贝(可以发送本地拷贝结束报告)。
图7和图8表示远程拷贝系统的动作的概要。如图7所示,第一存储系统102A执行将在一定期间内写入第一卷组111A的写对象数据汇总、并从第一卷组111A传输至第二卷组111B的远程拷贝122。接着,如图8所示,第二存储系统102B执行从第二卷组111B向第四卷组111D传输的本地拷贝124。在该计算机系统100中,通过交替地周期性执行上述远程拷贝122以及本地拷贝124,构成保证在第二存储系统中存在取得数据一致性的卷的远程拷贝系统。关于数据一致性,在后面进行详细说明。
图9以时间序列表示第一~第四卷组111A~111D的更新状态。在这种情况下,341A以时间序列表示了第一卷组111A的更新状态,341B以时间序列表示了第二卷组111B的更新状态,341C以时间序列表示了第三卷组111C的更新状态,341D以时间序列表示了第四卷组111D的更新状态。
第一存储系统102A在时刻T1执行第一卷组111A所对应的更新位图112A和差分位图112B的内容调换。假定第一存储系统102A中此时第一卷组111A的更新状态为A。
接下来,第一存储系统102A的远程拷贝程序232,为使第二卷组111B的更新状态为A,执行参照差分位图112B的内容并向第二存储系统102B传输差分数据的远程拷贝122A。在向该第二存储系统102B的第二卷组111B应用差分数据的期间、即差分应用期间D1,与从主计算机101的写入顺序无关地在第二卷组111B中写入数据,所以无法保证第二卷组111B的写入顺序的数据一致性。
随后,当远程拷贝122A结束,用于使更新状态成为A的差分数据的应用期间、即差分应用期间D1结束时(时刻T2),第二卷组111B的更新状态变为A,由此保证了第一卷组111A和第二卷组111B的数据一致性。
接下来,第二存储系统102B的本地拷贝程序221,为使第四卷组111D的更新状态为A,执行从第二卷组111B向第四卷组111D传输差分数据的本地拷贝124A。在向该第四卷组111D应用差分数据的期间、即差分应用期间D2,可能无法保证写入第四卷组111D的写对象数据的一致性。
随后,当本地拷贝124A结束,作为差分数据的应用期间的差分应用期间D2结束时(时刻T3),第四卷组111D的更新状态变为A,由此保证了第二卷组111B和第四卷组111D的数据一致性。
如上所述,在计算机系统100中,当第二卷组111B处在差分应用期间D1时,保证了第四卷组111D的数据一致性,当第四卷组111D处在差分应用期间D2时,保证了第二卷组111B的数据一致性,因此,在远程拷贝系统的运行中始终保证在第二存储系统102B中存在取得数据一致性的卷。
另外,在计算机系统100中,当本地拷贝124A结束时向第一存储系统102A发送本地拷贝结束报告(342),由此第一存储系统102A的远程拷贝程序232结束一次循环。此后,第一存储系统102A在时刻T4再次执行第一卷组111A所对应的更新位图112A与差分位图112B的内容调换。然后,当此时第一存储系统的第一卷组111A的更新状态为B时,第一存储系统102A以及第二存储系统102B和上述情况相同地,为使第二卷组111B以及第四卷组111D的更新状态为B而间歇地执行远程拷贝122B以及本地拷贝124B。
在此,在这样的远程拷贝系统的运行中,若在时刻T5(第二卷组111B的差分应用期间D1)从第二卷组111B向第三卷组111C发出快照生成指示,则第二存储系统102B延迟快照执行(延迟期间D3),直到对第二卷组111B的差分应用期间D1结束。然后,当对第二卷组111B的差分应用期间D1结束时,第二存储系统102B执行快照(343)。在这种情况下,第二存储系统102B立即结束快照执行本身,执行在有限时间内将第二卷组111B的全部数据拷贝到第三卷组111C的后台拷贝(backgroud copy)(344)。
另外,在后台拷贝中向第二卷组111B写入数据时,第二存储系统102B通过执行I/O控制程序216B,将第二卷组111B中的相应存储区域的数据拷贝至第三卷组111C对应的存储区域,然后,在第二卷组111B中的该存储区域中执行数据写入。关于I/O控制程序216B的动作,在后面通过流程图进行说明。
接着,对第一存储系统102A中的I/O访问处理(本地站点侧)的一例进行说明。图10是表示与该第一存储系统102A中的I/O处理相关的处理器225A的具体处理过程的流程图。
处理器225A,当从主计算机101接收I/O访问(写请求或读请求)时,通过执行I/O控制程序233A、即执行I/O访问的程序,按照图10所示的第一I/O访问处理过程RT1,检查该I/O访问的类别是否为写请求(S1)。
并且,当I/O访问的类别不是写请求时(S1:否),处理器225A判断I/O访问的类别为读请求,并从读请求所对应的卷的存储区域中读出读对象数据(S2),然后结束图10所示的第一I/O访问处理过程RT1(S8)。
反之,当该I/O访问的类别是写请求时(S1:是),处理器225A通过参照配对信息235A来检查写请求所对应的卷是否是远程拷贝的源卷(S3)。
并且,当写请求所对应的卷不是远程拷贝的源卷时(S3:否),处理器225A在写请求所对应的卷的存储区域中写入写对象数据(S7),然后结束图10所示的第一I/O访问处理过程RT1(S8)。
反之,当写请求所对应的卷是远程拷贝的源卷时(S3:是),处理器225A将写请求所对应的卷的存储区域所对应的更新位图112A的位301变更为“ON”(需要拷贝(有更新))(图3)(S4)。
接着,处理器225A检查写请求所对应的卷的存储区域所对应的差分位图112B的位301是否为“ON”,且写请求所对应的卷的存储区域中存储的旧数据是否未被存储在端文件236中(S5)。
在这种情况下,处理器225A可以通过在更新位图112A或差分位图112B中记录是否在端文件236中存储了旧数据,记录对所对应的端文件236的各要素的参照(以地址等表现),来判断有无向端文件236进行存储,以及进行数据的参照。
并且,当写请求所对应的卷的存储区域所对应的差分位图112B的位301是“OFF”,(不需要拷贝(没有更新))(图3),或者写请求所对应的卷的存储区域中存储的旧数据被存储在端文件236中时(S5:否),处理器225A将写对象数据写入写请求所对应的卷的存储区域中(S7),然后结束图10所示的第一I/O访问处理过程RT1(S8)。
反之,当写请求所对应的卷的存储区域所对应的差分位图112B的位301为“ON”,且写请求所对应的卷的存储区域中存储的旧数据未被存储在端文件236中时(S5:是),处理器225A读出写请求所对应的卷的存储区域中存储的旧数据,并存储在端文件236中(S6)。
在这种情况下,具体而言,处理器225A将表示写请求所对应的卷的存储区域位置的卷名321以及存储区域地址322,和读出的旧数据一起存储在端文件236中。
随后,处理器225A在写请求所对应的卷的存储区域中写入写对象数据(S7),然后结束图10所示的第一I/O访问处理过程RT1(S8)。
此外,处理器225A,通过使主计算机101或程序参照在存储器224A上的高速缓冲存储器中设置的数据的方法,或通过从存储装置202A的对应驱动器中读出数据并使主计算机101或各种程序参照该数据的方法,从读请求所对应的卷的存储区域读出读对象数据。
此外,处理器225A,在存储器224A上的高速缓冲存储器中写入写对象数据,向主计算机101或各种程序通知写入结束,非同步地在存储装置202A对应的驱动器中写入写对象数据,由此,在写请求所对应的卷中写入写对象数据。而且,处理器225A也可以通过同步地在存储装置202A的对应驱动器中写入写对象数据来写入写对象数据。
接着,对第二存储系统102B中的I/O访问处理(远程站点侧)的一例进行说明。图11~图13是表示与该第二存储系统102B中的I/O访问处理相关的处理器225B的具体处理过程的流程图。
处理器225B,当从主计算机101接收I/O访问时,或通过执行第一存储系统102A的远程拷贝程序232来接收I/O访问请求时,通过执行I/O控制程序223B、即执行I/O访问的程序,按照图11~图13所示的第二I/O访问处理过程RT2,通过参照配对信息235B来检查I/O访问对应的卷是否是本地拷贝的源卷(S11)。
并且,当I/O访问对应的卷不是本地拷贝的源卷时(S11:否),处理器225B通过参照配对信息235B来检查I/O访问对应的卷是否是快照目标卷(S12)。
并且,当I/O访问所对应的卷不是快照目标卷时(S12:否),处理器225B向I/O访问对应的卷的存储区域执行数据读写(S13),然后结束图11~图13所示的第二I/O访问处理过程RT2(S14)。
反之,当I/O访问所对应的卷是本地拷贝的源卷时(S11:是),处理器225B检查该I/O访问的类别是否是写请求(S21)(图12)。
并且,当I/O访问的类别不是写请求时(S21:否),处理器225B判断I/O访问的类别是读请求,从读请求所对应的卷的存储区域中读出读对象数据(S22),然后结束图11~图13所示的第二I/O访问处理过程RT2(S14)。
反之,当该I/O访问的类别是写请求时(S21:是),处理器225B通过参照配对信息235B来检查写请求所对应的卷是否是快照源卷(S23)。
并且,当写请求所对应的卷不是快照源卷时(S23:否),处理器225B将写请求所对应的卷的存储区域所对应的更新位图112C的位301变更为“ON”(S24),在写请求所对应的卷的存储区域中写入写对象数据(S25),然后结束图11~图13所示的第二I/O访问处理过程RT2(S14)。
反之,当写请求所对应的卷是快照源卷时(S23:是),处理器225B检查该快照目标卷的存储区域所对应的更新位图112D的位301是否为“ON”(S26)。
并且,当快照目标卷的存储区域所对应的更新位图112D的位301不是“ON”时(S26:否),处理器225B将写请求所对应的卷的存储区域所对应的更新位图112C的位301变更为“ON”(S24),在写请求所对应的卷的存储区域中写入写对象数据(S25),然后结束图11~图13所示的第二I/O访问处理过程RT2(S14)。
反之,当快照目标卷的存储区域所对应的更新位图112D的位301为“ON”时(S26:是),处理器225B将当前存储在写请求所对应的卷的存储区域中的数据拷贝至快照目标卷的存储区域中(S27)。
接着,处理器225B将快照目标卷的存储区域所对应的更新位图112D的位301变更为“OFF”(S28)。
随后,处理器225B将写请求所对应的卷的存储区域所对应的更新位图112C的位301变更为“ON”(S24),在写请求所对应的卷的存储区域中写入写对象数据(S25),然后结束图11~图13所示第二I/O访问处理过程RT2(S14)。
反之,当I/O访问对应的卷是快照目标卷时(S13:是),处理器225B检查I/O访问所对应的卷(快照目标卷)的存储区域的更新位图112D的位301是否为“ON”(S31)(图13)。
并且,当I/O访问所对应的卷的存储区域的更新位图112D的位301不是“ON”时(S26:否),处理器225B向I/O访问对应的卷的存储区域执行数据读写(S32),然后结束图11~图13所示的第二I/O访问处理过程RT2(S14)。
反之,当I/O访问所对应的卷的存储区域的更新位图112D的位301不是“ON”时(S26:是),处理器225B将写请求所对应的卷的存储区域所对应的快照源卷的存储区域中当前所存储的数据,拷贝到I/O访问所对应的卷的存储区域中(S33)。
接着,处理器225B将I/O访问所对应的卷的存储区域的更新位图112D的位301变更为“OFF”(S34)。
随后,处理器225B向I/O访问所对应的卷的存储区域执行数据读写(S32),然后结束图11~图13所示的第二I/O访问处理过程RT2(S14)。
此外,处理器225A,通过与I/O控制程序233A相同的方法,向I/O访问所对应的、读写数据的卷的存储区域执行数据读写。
接着,对第一存储系统102A中的拷贝管理处理(本地站点侧)的一例进行说明。图14是表示与该第一存储系统102A中的拷贝管理处理相关的处理器225A的具体处理过程的流程图。
处理器225A,通过在规定时刻执行拷贝管理程序231A、即执行拷贝管理的程序,来按照图14所示的第一拷贝处理过程RT3执行远程拷贝122(S41)。接着,处理器225A以待机模式等待远程拷贝122结束(S42)。随后,当远程拷贝122结束时(S42:是),处理器225A向第二存储系统102B发送本地拷贝开始指示(S43)。
接着,处理器225A以待机模式等待来自第二存储系统102B的本地拷贝结束报告(S44)。随后,处理器225A当接收到来自第二存储系统102B的本地拷贝结束报告时(S44:是),此后再次执行远程拷贝122(S41),返回等待远程拷贝122结束的待机模式(S42),此后重复同样的处理(S41~S44)。
接着,对第二存储系统102B中的拷贝管理处理(远程站点侧)的一例进行说明。图15是表示与该第二存储系统102B中的拷贝管理处理相关的处理器225B的具体处理过程的流程图。
处理器225B在初期时,通过执行拷贝管理程序231B、即执行拷贝管理的程序,来按照图15所示的第二拷贝管理处理过程RT4,以待机模式等待从第一存储系统102A接收本地拷贝开始指示(S51)。随后,处理器225B当从第一存储系统102A接收到本地拷贝开始指示时(S51:是),将本地拷贝控制信息240中与本地拷贝开始指示相对应的卷的本地拷贝控制标志332变更为“ON”(S52)。
接着,处理器225B执行本地拷贝开始指示所对应的卷的本地拷贝124(S53)。接着,处理器225B以待机模式等待在预先指定的时间待机的指定时间待机处理结束(S54)。随后,当指定时间待机处理结束时(S54:是),处理器225B将本地拷贝控制信息240中与本地拷贝开始指示相对应的卷的本地拷贝控制标志332变更为“OFF”(S55)。
接着,处理器225B以待机模式等待本地拷贝124结束(S56)。随后,当本地拷贝124结束时(S56:是),处理器225B将本地拷贝控制信息240中与本地拷贝开始指示相对应的卷的执行等待标志变更为“OFF”(S57)。
接着,处理器225B向第一存储系统102A发送本地拷贝结束报告(S58),此后再次返回等待从第一存储系统102A接收本地拷贝开始指示的待机模式(S51),此后重复同样的处理(S51~S58)。
此外,在远程拷贝系统的运行中,为了控制更新位图112A和差分位图112B的调换间隔,处理器225B执行指定时间待机处理。在这种情况下,更新位图112A和差分位图112B的调换间隔越长,在更新位图111A上重写的写对象数据的量越大,因此可以削减总体的数据传输量。另一方面,更新位图112A和差分位图112B的调换间隔越短,可以复原为故障时刻附近的数据的可能性越高。通过针对需要进行权衡,来个别具体地决定该间隔。
接下来,对第一存储系统102A中的远程拷贝处理的一例进行说明。图16是表示与该第一存储系统102A中的远程拷贝处理相关的处理器225A的具体处理过程的流程图。
处理器225A通过在规定时刻执行远程拷贝程序232、即通过拷贝管理程序231A执行远程拷贝122的程序,来按照图16所示的远程拷贝处理过程RT5调换更新位图112A和差分位图112B的内容(S61)。
接着,处理器225A以差分位图112B的首位301为调查对象(S62)。接着,处理器225A检查作为调查对象的差分位图112B的位301是否为“ON”(S63)。
然后,当作为调查对象的差分位图112B的位301不为“ON”时(S63:否),处理器225A进入到步骤S68。反之,当作为调查对象的差分位图112B的位301为“ON”时(S63:是),处理器225A检查在端文件236中是否存储有作为调查对象的差分位图112B的位301所对应的存储区域的数据。
并且,当作为调查对象的差分位图112B的位301所对应的存储区域的数据,未被存储在端文件236中时(S64:否),处理器225A将作为调查对象的差分位图112B的位301所对应的存储区域的数据,发送至第二存储系统102B(S65)。反之,当作为调查对象的差分位图112B的位301所对应的存储区域的数据被存储在端文件236中时(S64:是),处理器225A将作为调查对象的差分位图112B的位301所对应的存储在端文件中的数据,发送至第二存储系统102B(S66)。
随后,处理器225A将作为调查对象的差分位图112B的位301变更为“OFF”(S67)。接着,处理器225A检查到差分位图112B的末位301为止是否都成为了调查对象(S68)。
并且,当到差分位图112B的末位301为止未全部成为调查对象时(S68:否),处理器225A以差分位图112B的下一位301作为调查对象(S69),此后,再次检查作为调查对象的差分位图112B的位301是否为“ON”(S63),此后重复同样的处理(S63~S68)。
反之,当到差分位图112B的末位301为止全部成为调查对象时(S68:是),处理器225A此后结束图16所示的远程拷贝处理过程RT5(S70)。
接下来,对第二存储系统102B中的本地拷贝处理的一例进行说明。图17是表示与该第二存储系统102B中的本地拷贝处理相关的处理器225B的具体处理过程的流程图。
处理器225B,当从第一存储系统102A接收本地拷贝开始指示时,通过执行本地拷贝程序237、即通过拷贝管理处理231B执行本地拷贝124的程序,来按照图17所示的本地拷贝处理过程RT6,以更新位图112C的首位301作为调查对象(S71)。接着,处理器225B检查作为调查对象的更新位图112C的位301是否为“ON”(S72)。
并且,当作为调查对象的更新位图112C的位301不是“ON”时(S72:否),处理器225B进入步骤S75,反之,当作为调查对象的更新位图112C的位301为“ON”时(S72:是),处理器225B将作为调查对象的更新位图112C的位301所对应的存储区域的数据存储在本地拷贝的目标卷的存储区域中(S73)。
随后,处理器225B将作为调查对象的更新位图112C的位301变更为“OFF”(S74)。接着,处理器225B检查是否已使到更新位图112C的末位301为止的全部位成为了调查对象(S75)。
并且,当到更新位图112C的末位301为止未全部成为调查对象时(S75:否),处理器225B将更新位图112C的下一位301作为调查对象(S76),此后,再次检查作为调查对象的更新位图112C的位301是否为“ON”(S72),此后重复同样的处理(S72~S75)。
反之,当将更新位图112C的末位301作为调查对象时(S75:是),处理器225B此后结束图17所示的本地拷贝处理过程RT6(S77)。
接下来,对第二存储系统102B中的快照处理的一例进行说明。图18是表示与该第二存储系统102B中的快照处理相关的处理器225B的具体处理过程的流程图。
处理器225B,当根据用户或程序的指示从主计算机101或管理终端104、其他维护终端223A、223B或程序接收到快照源卷及快照目标卷的输入时,通过执行快照程序239、即执行快照125的程序,按照图18所示的快照处理过程RT7,生成快照目标卷所对应的位301全部为“ON”状态的更新位图112D(将更新位图112D变更为,快照目标卷所对应的位301全部为“ON”的状态)(S81)。
接着,处理器225B将表示快照源卷名以及快照目标卷名的信息、和表示快照的配对关系的信息,追加到配对信息235B的列表中,由此来生成配对关系(S82)。接着,处理器225B执行后台拷贝处理(S83),然后结束图18所示的快照处理过程RT7(S84)。
接下来,对第二存储系统102B中的后台拷贝处理的一例进行说明。图19是表示与该第二存储系统102B中的后台拷贝处理相关的处理器225B的具体处理过程的流程图。
当生成配对关系时,处理器225B按照图19所示的后台拷贝处理过程RT8,将更新位图112D的首位301作为调查对象(S91)。接着,处理器225B检查作为调查对象的更新位图112D的位301是否为“ON”(S92)。
并且,当作为调查对象的更新位图112D的位301不是“ON”时(S92:否),处理器225B进入步骤S95,反之,当作为调查对象的更新位图112D的位301是“ON”时(S92:是),处理器225B将作为调查对象的更新位图112D的位301所对应的存储区域的数据存储在快照目标卷的存储区域中(S93)。
随后,处理器225B将作为调查对象的更新位图112D的位301变更为“OFF”(S94)。接着,处理器225B检查是否直到更新位图112D的末位301为止成为了调查对象(S95)。
并且,当直到更新位图112D的末位301为止未全部成为调查对象时(S95:否),处理器225B将更新位图112D的下一位301作为调查对象(S96),此后,再次检查作为调查对象的更新位图112D的位301是否为“ON”(S92),此后重复同样的处理(S92~S95)。
反之,当直到更新位图112D的末位301为止全部成为调查对象时(S95:是),处理器225B此后结束图19所示的后台拷贝处理过程RT8(S97)。
此外,由于更新位图112D不会通过各种控制程序等而成为“OFF”状态,且更新位图112D的大小有限,因此处理器225B可以在有限时间内结束后台拷贝处理。另外,由于可以从主计算机101等对快照目标卷进行I/O访问,因此处理器225B也可以不执行后台拷贝处理。而且,处理器225B在不执行后台拷贝处理时,或后台拷贝处理执行过程中时,在向快照目标卷的读出处理中,产生了拷贝来自快照源卷的数据的开销(overhead),因此可能会降低若干性能。
接下来,对第二存储系统102B中的扩展快照处理的一例进行说明。图20是表示与该第二存储系统102B中的扩展快照处理相关的处理器225B的具体处理过程的流程图。
处理器225B,当根据用户或程序的指示,从主计算机101或管理终端104、其他维护终端223A、223B或程序接收到快照生成指示时,通过执行快照扩展程序238、即根据快照生成指示来执行快照125的程序,按照图20所示的扩展快照处理过程RT9参照配对信息235B,由此检查快照生成指示所对应的源卷是否是第二卷组111B的卷(S101)。
并且,当快照生成指示所对应的源卷不是第二卷组111B的卷时(S101:否),处理器225B此后结束图20所示的扩展快照处理过程RT9(S106)。反之,当快照生成指示所对应的源卷是第二卷组111B的卷时(S101:是),处理器225B检查本地拷贝控制信息240中的与快照生成指示相对应的源卷的本地拷贝控制标志332是否是“ON”(S102)。
并且,当快照生成指示所对应的源卷的本地拷贝控制标志332不是“ON”时(S102:否),处理器225B以待机模式等待该源卷的本地拷贝控制标志332变为“ON”。反之,当本地拷贝控制信息240中的与快照生成指示相对应的源卷的本地拷贝控制标志332是“ON”、或变为“ON”时(S102:是),处理器225B将本地拷贝控制信息240中与快照生成指示相对应的源卷的执行等待标志333变更为“ON”(S103)。
接着,处理器225B执行从快照生成指示所对应的源卷向对应目标卷的快照125(S104)。接着,处理器225B将本地拷贝控制信息240中的与控制生成指示相对应的源卷的执行等待标志333变更为“OFF”(S105)。随后,处理器225B结束图20所示的扩展快照处理过程RT9(S106)。
这样,在第一实施方式中的计算机系统100中,除了在从第一卷组111A向第二卷组111B的非同步远程拷贝122的传输中以外,均取得第二卷组111B的一致性。利用这一点,当在该传输中发出从第二卷组111B向第三卷组111C的快照生成指示时延迟快照的生成,直到远程拷贝122的传输结束;当不在远程拷贝122的传输中发出快照的生成指示时,立即生成快照。
从而,在第一实施方式中的计算机系统100中,即使在远程拷贝系统的运行时执行测试等情况下,也可以提前有效地防止该系统运行的停止、重新开始等烦杂的操作,可以不停止系统运行而生成取得了一致性的状态的快照。
(2)第二实施方式
图21表示本发明的第二实施方式中的计算机系统100的概略结构。计算机系统100中,在第一存储系统102A中代替更新位图112A、差分位图112B而设有采集差分缓冲器131A、传输差分缓冲器131B,在第二存储系统中代替更新位图112C、第四卷组111D而设有接收差分缓冲器131C、应用差分缓冲器131D,除了使用这些采集差分缓冲器131A、传输差分缓冲器131B、接收差分缓冲器131C以及应用差分缓冲器131D来运行远程拷贝系统以外,和第一实施方式中的计算机系统100同样地构成。
在第一实施方式中,例如在第二存储系统102B中通过管理两个卷组来保证取得数据一致性的卷,但在第二实施方式中,通过在第二存储系统102B内设有存储写对象数据的接收差分缓冲器131C以及应用差分缓冲器131D,来保证取得数据一致性的卷。
在此,概略地说明第二实施方式中的动作。第一存储系统102A将来自主计算机101等的写对象数据存储在第一卷组111A中,同时存储在采集差分缓冲器131A中(141)。接着,第一存储系统102A调换采集差分缓冲器131A和传输差分缓冲器131B(142)。在这种情况下,第一存储系统102A在调换后再次将来自主计算机101等的写对象数据存储在第一卷组111A中,同时存储在采集差分缓冲器131A中(141)。接着,第一存储系统102A将传输差分缓冲器131B的内容传输至第二存储系统102B的接收差分缓冲器131C(远程拷贝143)。接着,第二存储系统102B调换接收差分缓冲器141C和应用差分缓冲器141D(144)。在这种情况下,第一存储系统102A在调换后再次将传输差分缓冲器131B的内容传输至第二存储系统102B的接收差分缓冲器131C中(远程拷贝143)。接着,第二存储系统102B将应用差分缓冲器141D的内容应用于第二卷组1412B(本地拷贝145)。
在该计算机系统100中,通过周期性地执行步骤S112,可以构成始终在第二存储系统102B中构成取得数据一致性的卷的远程拷贝系统。并且,在该计算机系统100中,在上述远程拷贝系统的运行中,在第三卷组111C中生成取得第二卷组111B的一致性的状态的快照125。在后面对数据一致性进行详细说明。
图22表示第二实施方式中的计算机系统100中的内部概略结构。在计算机系统100中,在第一存储系统102A中的存储控制装置201A的存储器224A中,代替更新位图112A、差分位图112B以及端文件236而设有采集差分缓冲器131A、传输差分缓冲器131B,在第二存储系统102B中的存储控制装置201B的存储器224B中,代替更新位图112C而设有接收差分缓冲器131C、应用差分缓冲器131D,除了拷贝管理程序231A、231B、远程拷贝程序232、I/O控制程序233A、233B、本地拷贝程序237的处理内容与第一实施例的程序不同以外,与第一实施方式中的计算机系统100同样地构成。对于这些程序,在后面通过流程图进行说明。
图23表示采集差分缓冲器131A的表结构。采集差分缓冲器131A以列表形式构成,具有以下项目:卷名351A、表示该卷上的对应存储区域的对象地址352A、以及写对象数据353A。
在该计算机系统100中,作为采集差分缓冲器131A的另一安装方法,具有代替写对象数据而向存储器224上的高速缓冲存储器中保存指针(pointer)的方法。在这种情况下,当I/O控制程序233A在高速缓冲存储器中保存写对象数据时,在远程拷贝的传输和向存储区域的I/O访问结束前,在高速缓冲存储器上保存写对象数据,在采集缓冲器131A中的高速缓冲存储器上保存对于数据的指针,由此可以不对数据进行二重保存,削减存储器使用量。
此外,传输差分缓冲器131B、接收差分缓冲器131C以及应用差分缓冲器131D的表结构与采集差分缓冲器131A同样地构成。
图24以时间序列表示第一~第三卷组111A~111C以及采集差分缓冲器131A、传输差分缓冲器131B、接收差分缓冲器131C以及应用差分缓冲器131D的更新状态。在这种情况下,361A以时间序列表示第一卷组111A的更新状态,361B以时间序列表示第二卷组111B的更新状态,361C以时间序列表示第三卷组111C的更新状态,362A以时间序列表示采集差分缓冲器131A的差分数据的状态,362B以时间序列表示传输差分缓冲器131B的差分数据的状态,362C以时间序列表示接收差分缓冲器131C的差分数据的状态,362D以时间序列表示应用差分缓冲器131D的差分数据的状态。
在第一存储系统102A中,在进行采集差分缓冲器131A与传输差分缓冲器131B的调换的时刻T11,若第一卷组111A的更新状态为A,则调换了采集差分缓冲器131A和传输差分缓冲器131B之后的传输差分缓冲器131B的内容,成为用于使第二卷组111B成为更新状态A的写对象数据的集合(363)。
第一存储系统102A,在调换采集差分缓冲器131A和传输差分缓冲器131B之后,继续在采集缓冲器131A中存储来自主计算机101的写对象数据(364)。在这种情况下,若在向采集差分缓冲器131A存储写对象数据时产生了向相同存储区域的写入,则第一存储系统102A通过删除在该存储区域中存储的数据来削减执行远程拷贝时的数据传输量。另外,第一存储系统102A也可以通过位图来管理从表示存储区域的对象地址对采集差分缓冲器131A中要素的参照。此外,所谓差分缓冲器中的要素是在该差分缓冲器的规定存储区域中存储数据的状态。
接着,第一存储系统102A将传输差分缓冲器131B的写对象数据传输至第二存储系统102B的接收差分缓冲器131C(远程拷贝143)。第二存储系统102B中,在执行远程拷贝143后,接收差分缓冲器131C的内容成为用于使第二卷组111B成为更新状态A的写对象数据的集合(365)。
接着,第一存储系统102A向第二存储系统102B发送差分缓冲器调换指示(366)。由此,第二存储系统102B调换接收缓冲器131C和应用差分缓冲器131D。
接着,第二存储系统102B向第一存储系统102A发送差分缓冲器调换结束报告(367)。由此,第一存储系统102A能够再次调换采集差分缓冲器131A和传输差分缓冲器131B(142),在时刻T12调换采集差分缓冲器131A和传输差分缓冲器131B,此后重复同样的处理。
另一方面,在第二存储系统102B中,将应用差分缓冲器131D的内容应用于第二卷组111B(本地拷贝115A)。此时,第二存储系统102B与从主计算机101的写入顺序无关地,将应用差分缓冲器131D的写对象数据应用于第二卷组111B,因此可能无法保证第二卷组111B的写入顺序的数据一致性(差分应用期间D11)。随后,当结束从应用差分缓冲器131D应用写对象数据时,第二卷组111B的更新状态变为A(368),由此保证了第一卷组111A和第二卷组111B的数据一致性。
如上所述,在计算机系统100中,在第二存储系统102B中具有存储写对象数据的接收缓冲器131C以及应用差分缓冲器131D,由此保存了为保证第二卷组111B的一致性所需要的写对象数据,因此可以构成能始终构成取得数据一致性的卷的远程拷贝系统。
在此,在这种远程拷贝系统的运行中,若在时刻T13(第二卷组111B的差分应用期间D11)发出从第二卷组111B向第三卷组111C的快照生成指示,则第二存储系统102B延迟快照执行,直到对第二卷组111B的差分应用期间D11结束(延迟期间D12)。然后,当对第二卷组111B的差分应用期间D11结束时,第二存储系统102B执行快照(369)。在这种情况下,第二存储系统102B立即结束快照的执行本身,执行在有限时间内将第二卷组111B的全部数据拷贝到第三卷组111C的后台拷贝(370)。
另外,若在后台拷贝中在第二卷组111B中写入数据,则第二存储系统102B与上述的第一实施方式相同地,通过执行I/O控制程序216B,在后台拷贝处理执行过程中也向第二卷组111B应用写对象数据(S115B)。
接下来,对第二实施方式中的第一存储系统102A的I/O访问处理(本地站点侧)的一例进行说明。图25是表示与该第一存储系统102A中的I/O访问处理相关的处理器225A的具体处理过程的流程图。
处理器225A,当从主计算机101接收到I/O访问时,通过执行I/O控制程序233A、即执行I/O访问的程序,按照图25所示的第一I/O访问处理过程RT10,检查该I/O访问的类别是否是写请求(S111)。
并且,当I/O访问类别不是写请求时(S111:否),处理器225A判断I/O访问的类别是读请求,从读请求所对应的卷的存储区域读出读对象数据(S112),然后结束图25所示的第一I/O访问处理过程RT10(S116)。
反之,当该I/O访问的类别是写请求时(S111:是),处理器225A通过参照配对信息235A来检查写请求所对应的卷是否是远程拷贝的源卷(S113)。
并且,当写请求所对应的卷不是远程拷贝的源卷时(S113:否),处理器225A进入步骤S115,反之,当写请求所对应的卷是远程拷贝的源卷时(S113:是),处理器225A将写请求所对应的写对象数据存储在采集差分缓冲器131A中(S114)。
随后,处理器225A在写请求所对应的卷的存储区域中写入写对象数据(S115),然后结束图25所示的第一I/O访问处理过程RT10(S116)。
此外,处理器225A,在将写对象数据存储在采集差分缓冲器131A中时,若已在采集差分缓冲器131A的相同存储区域中存储了写对象数据,则通过以写对象数据重写该要素来削减采集差分缓冲器131A的数据量,削减向第二存储系统102B的数据传输量。此后,处理器225A通过与第一实施方式相同的方法实现数据的读写。
接下来,对第二实施方式中的第二存储系统102B的I/O访问处理(远程站点侧)的一例进行说明。图26以及图27是表示与该第二存储系统102B中的I/O访问处理相关的处理器225B的具体处理过程的流程图。
处理器225B,当从主计算机101接收I/O访问时,或者通过执行第一存储系统102A的远程拷贝232而接收I/O访问请求时,通过执行I/O控制程序223B、即执行I/O访问的程序,来按照图26以及图27所示的第二I/O访问处理过程RT11参照配对信息235B,由此来检查I/O访问所对应的卷是否是远程拷贝的目标卷(S121)。
并且,当I/O访问所对应的卷不是远程拷贝的目标卷时(S121:否),处理器225B通过参照配对信息235B,检查I/O访问所对应的卷是否是快照目标卷(S122)。
并且,当I/O访问所对应的卷不是快照目标卷时(S122:否),处理器225B执行向I/O访问对应的卷的存储区域的数据读写(S123),然后结束图26以及图27所示的第二I/O访问处理过程RT11(S124)。
反之,当I/O访问所对应的卷是远程拷贝的目标卷时(S121:是),处理器225B检查该I/O访问的类别是否是写请求(S131)(图27)。
并且,当I/O访问的类别不是写请求时(S131:否),处理器225B判断I/O访问的类别为读请求,从读请求所对应的卷的存储区域读出读对象数据(S132),然后结束图26以及图27所示的第二I/O访问处理过程RT11(S124)。
反之,当该I/O访问的类别是写请求时(S131:是),处理器225B通过参照配对信息235B,检查写请求所对应的卷是否是快照源卷(S133)。
并且,当写请求所对应的卷不是快照源卷时(S133:否),处理器225B在写请求所对应的卷的存储区域中写入写对象数据(S134),然后结束图26以及图27所示的第二I/O访问处理过程RT11(S124)。
反之,当写请求所对应的卷是快照源卷时(S133:是),处理器225B检查快照目标卷的存储区域所对应的更新位图112D的位301是否为“ON”(S135)。
并且,当快照目标卷的存储区域所对应的更新位图112D的位301不是“ON”时(S135:否),处理器225B在写请求所对应的卷的存储区域中写入写对象数据(S134),然后结束图26以及图27所示的第二I/O访问处理过程RT11(S124)。
反之,当快照目标卷的存储区域所对应的更新位图112D的位301是“ON”时(S135:是),处理器225B将当前存储在写请求所对应的卷的存储区域中的数据拷贝到快照目标卷的存储区域中(S136)。
接着,处理器225B将快照目标卷的存储区域所对应的更新位图112D的位301变更为“OFF”(S137)。
随后,处理器225B在写请求所对应的卷的存储区域中写入写对象数据(S134),然后结束图26以及图27所示的第二I/O访问处理过程RT11(S124)。此外,处理器225B通过与第一实施方式相同的方法,实现数据的读写。
接下来,对第二实施方式中的第一存储系统102A的拷贝管理处理(本地站点侧)的一例进行说明。图28是表示与该第一存储系统102A中的拷贝管理处理相关的处理器225A的具体处理过程的流程图。
处理器225A,通过在规定时刻执行拷贝管理程序231A、即执行拷贝管理的程序,按照图28所示的第一拷贝管理处理过程RT12来执行远程拷贝143(S141)。接着,处理器225A以待机模式等待远程拷贝143结束(S142)。随后,当远程拷贝143结束时(S142:是),处理器225A向第二存储系统102B发送差分缓冲器调换开始指示(S143)。
接着,处理器225A以待机模式等待来自第二存储系统102B的差分缓冲器调换结束报告(S144)。随后,处理器225A当接收到来自第二存储系统102B的差分调换结束报告时(S144:是),此后再次执行远程拷贝143(S141),返回等待远程拷贝143结束的待机模式(S142),此后重复同样的处理(S141~S144)。
接下来,对第二实施方式中的第二存储系统102B的拷贝管理处理(远程站点侧)的一例进行说明。图29是表示与该第二存储系统102B中的拷贝管理处理相关的处理器225B的具体处理过程的流程图。
处理器225B,在初期时通过执行拷贝管理程序231B、即执行拷贝管理的程序,按照图29所示的第二拷贝管理处理过程RT13,以待机模式等待从第二存储系统102A接收差分缓冲器调换开始指示(S151)。随后,当从第一存储系统102A接收到差分缓冲器调换开始指示时(S151:是),处理器225B调换接收差分缓冲器131和应用差分缓冲器131D的内容(S152)。
接着,处理器225B向第一存储系统102A发送差分缓冲器调换结束报告(S153)。接着,处理器225B将本地拷贝控制信息240中与差分缓冲器调换开始指示相对应的卷的本地拷贝控制标志332变更为“OFF”(S154)。接着,处理器225B执行差分缓冲器调换开始指示所对应的卷的本地拷贝145(S155)。
接着,处理器225B以待机模式等待本地拷贝145结束(S156)。随后,当本地拷贝145结束时(S156:是),处理器225B将本地拷贝控制信息240中与差分缓冲器调换开始指示相对应的卷的本地拷贝控制标志332变更为“ON”(S157)。
接着,处理器225B检查本地拷贝控制信息240中与差分缓冲器调换开始指示相对应的卷的执行等待标志333是否为“OFF”(S158)。
并且,当本地拷贝控制信息240中与差分缓冲器调换开始指示相对应的卷的执行等待标志333不是“OFF”时(S158:否),处理器225B以待机模式等待该源卷的拷贝控制标志332变为“OFF”。反之,当本地拷贝控制信息240中与差分缓冲器调换开始指示相对应的卷的执行等待标志333是“OFF”、或变为“OFF”时(S158:是),处理器225B此后再次返回等待从第一存储系统102A接收差分缓冲器调换开始指示的待机模式(S151),此后重复同样的处理(S151~S158)。
此外,在步骤S154中,处理器225B将本地拷贝控制信息240中的、与差分缓冲器调换开始指示相对应的卷的本地拷贝控制标志332变更为“OFF”,在步骤157中,处理器225B将本地拷贝控制信息240中的、与差分缓冲器调换开始指示相对应的卷的本地拷贝控制标志332变更为“ON”。这样,在第二实施方式中,与第一实施方式中图15所示的第二拷贝管理处理过程RT4相反,其理由是,本地拷贝145的执行是将应用差分缓冲器131D的内容应用于第二卷组111B,第二卷组111B成为快照源卷组,因此在本地拷贝145的执行中无法保证数据一致性。
接下来,对第二实施方式中的第一存储系统102A的远程拷贝处理的一例进行说明。图30是表示与该第二存储系统102A中的远程拷贝处理相关的处理器225A的具体处理过程的流程图。
处理器225A,通过在规定时刻执行远程拷贝程序232、即通过拷贝管理程序231A执行远程拷贝143的程序,来按照图30所示的远程拷贝处理过程RT14,调换采集差分缓冲器131A和传输差分缓冲器131B的内容(S161)。
接着,处理器225A检查是否存在传输差分缓冲器131B的要素(S162)。并且,当不存在传输差分缓冲器131B的要素时(S162:否),处理器225A此后结束图30所示的远程拷贝处理过程RT14(S168)。反之,当存在传输差分缓冲器131B的要素时(S162:是),处理器225A以传输差分缓冲器131B的首要素作为调查对象(S163)。
接着,处理器225A将作为调查对象的传输差分缓冲器131B的要素的数据发送至第二存储系统102B(S164)。接着,处理器225A删除作为调查对象的传输差分缓冲器131B的要素的数据(S165)。
接着,处理器225A检查到传输差分缓冲器131B的末要素为止是否全部成为了调查对象(S166)。并且,当到传输差分缓冲器器131B的末要素为止未全部成为调查对象时(S166:否),处理器225A将传输差分缓冲器131B的下一要素作为调查对象(S167),此后再次将作为调查对象的传输差分缓冲器131B的要素的数据发送至第二存储系统102B(S164),此后重复同样的处理(S164~S166)。
反之,当到传输差分缓冲器131B的末要素为止全部成为了调查对象时(S166:是),处理器225A此后结束图30所示的远程拷贝处理过程RT14(S168)。
接下来,对第二实施方式中的第二存储系统102B的本地拷贝处理的一例进行说明。图31是表示与该第二存储系统102B中的本地拷贝处理相关的处理器225B的具体处理过程的流程图。
处理器225B,当从第一存储系统102A接收差分缓冲器调换开始指示时,通过执行本地拷贝程序237、即通过拷贝管理程序231B执行本地拷贝145的程序,按照图31所示的本地拷贝处理过程RT15,检查是否存在应用差分缓冲器131D的要素(S171)。并且,当不存在应用差分缓冲器131D的要素时(S171:否),处理器225B此后结束图31所示的本地拷贝处理过程RT15(S177)。反之,当存在应用差分缓冲器131D的要素时(S171:是),处理器225B以应用差分缓冲器131D的首要素作为调查对象(S172)。
接着,处理器225B将作为调查对象的应用差分缓冲器131D的要素的数据存储在该要素表示的卷的存储区域中(S173)。接着,处理器225A删除作为调查对象的应用差分缓冲器131D的要素的数据(S174)。
接着,处理器225B检查应用差分缓冲器131D的末要素是否成为了调查对象(S175)。并且,当应用差分缓冲器131D的末要素未成为调查对象时(S175:否),处理器225B以应用差分缓冲器131D的下一要素作为调查对象(S176),此后,再次将作为调查对象的应用差分缓冲器131D的要素的数据,存储在该要素表示的卷的存储区域中(S173),此后重复同样的处理(S173~S175)。
反之,当到应用差分缓冲器131D的末要素为止全部成为了调查对象时(S175:是),处理器225B此后结束图31所示的本地拷贝处理过程RT15(S177)。
这样,在第二实施方式中的计算机系统100中,在第二存储系统102B中具有存储写对象数据的接收缓冲器131C以及应用差分缓冲器131D,从而保存了为保证第二卷组111B的一致性所需的写对象数据,因此可以构成能够始终构成取得数据一致性的卷的远程拷贝系统。
(3)第三实施方式
在第三实施例中,对使用标识的方法进行说明。第三实施例中的计算机系统100,除了使用标识这一点以外和第一或第二实施方式中的计算机系统100同样地构成。标识是表示卷状态的识别符,主计算机101等在某时对第一存储系统102A发出标识生成指示。例如,当满足在规定卷组中“读入了某重要数据”等条件时,主计算机101发出指定标识生成指示。此后,在远程站点的第二存储系统102B中,当在远程拷贝系统的运行中生成第二卷组111B的快照时,计算机系统100通过使用标识的方法,生成满足特定条件的卷组的快照。
图32表示第三实施方式中的标识的构造。标识用于表示规定卷组的状态。作为标识区域而分配了与规定卷组111一一对应的存储区域302。例如,计算机系统100中,考虑在存储控制装置201A的存储器224A上确保存储区域302的方法,或在卷组111的一部分中确保存储区域302的方法。
图33是表示与第三实施方式中的第一存储系统102A的标识处理相关的处理器225A的具体处理过程的流程图。处理器225A,当根据用户或程序从主计算机101或管理终端104、其他维护终端223A、223B或程序接收到标识生成指示时,通过执行标识控制程序234、即执行标识生成处理的程序,按照图33所示的标识处理过程RT16,将指定标识写入标识生成指示所对应的卷的标识区域(S181)。然后结束图33所示的标识处理过程RT16(S182)。
接下来,对第三实施方式中的第一存储系统102A的拷贝管理处理(本地站点侧)的一例进行说明。图35是表示与该第一存储系统102A中的拷贝管理处理相关的处理225A的具体处理过程的流程图。
处理器225A,通过在规定时刻执行拷贝管理程序231A、即执行拷贝管理的程序,按照图35所示的第一拷贝管理处理过程RT17,执行远程拷贝122(S191)。接着,处理器225A以待机模式等待远程拷贝122结束(S192)。随后,当远程拷贝122结束时(S192:是),处理器225A将远程拷贝的源卷的标识区域的数据应用于远程拷贝的目标卷的标识区域(S193)。
在这种情况下,处理器225A,例如当在卷111上的存储区域中分配了标识区域时,与远程拷贝中将写对象数据传输至第二存储系统102B同样地,将数据应用于标识区域。另外,处理器225A,例如当存储器224A上的存储区域302分配了标识区域时,在应用数据时通过网络103将标识区域的数据传输至第二存储系统102B,在本地拷贝的执行前,将从第一存储系统102A传输至第二存储系统102B的数据写入存储器224B上的存储区域302中,由此将数据应用于标识区域。而且,处理器225A在远程拷贝的执行中也将数据应用于标识区域。
接着,处理器225A向第二存储系统102B发送本地拷贝开始指示(S194)。接着,处理器225A以待机模式等待从第二存储系统102B接收本地拷贝结束报告(S195)。随后,当接收到来自第二存储系统102B的本地拷贝结束报告时(S195:是),处理器225A此后再次执行远程拷贝122(S191),返回等待远程拷贝122结束的待机模式(S192),此后重复同样的处理(S191~S195)。
此外,在本实施方式中,说明了应用了与第一实施方式中的拷贝管理处理相关的处理225A的具体处理过程的情况,但对于应用了与第二实施方式中的拷贝管理处理相关的处理器225A的具体处理过程的情况也相同。
接下来,对第三实施方式中的第二存储系统102B的扩展快照处理的一例进行说明。图35是表示与该第二存储系统102B中的扩展快照处理相关的处理器225B的具体处理过程的流程图。
处理器225B,当根据用户或程序,从主计算机101或管理终端104、其他维护终端223A、223B或程序接收到指定标识的输入时,通过执行快照扩展程序238、即根据指定标识的输入来执行快照125的程序,按照图35所示的扩展快照处理过程RT18参照配对信息235B,由此来检查指定标识的输入所对应的源卷是否是第二卷组111B的卷(S201)。
并且,当指定标识的输入所对应的源卷不是第二卷组111B的卷时(S101:否),处理器225B此后结束图35所示的扩展快照处理过程RT18(S106)。反之,当指定标识的输入所对应的源卷是第二卷组111B的卷时(S201:是),处理器225B检查本地拷贝控制信息240中的、与指定标识的输入相对应的源卷的拷贝控制标志332是否为“ON”(S202)。
并且,当指定标识的输入所对应的源卷的本地拷贝控制标志332不是“ON”时(S202:否),处理器225B以待机模式等待该源卷的本地拷贝控制标志332变为“ON”。反之,当本地拷贝控制信息240中的、与快照生成指示相对应的源卷的本地拷贝控制标志332是“ON”、或变为“ON”时(S202:是),处理器225B在第二卷组111B的卷中检查表示标识的数据与指定标识是否相等(S203)。
并且,在第二卷组111B的卷中,当表示标识的数据与指定标识不相等时(S203:否),处理器225B检查本地拷贝控制信息240中的、与指定标识的输入相对应的源卷的拷贝控制标志332是否为“OFF”(S204)。并且,当指定标识的输入所对应的源卷的本地拷贝控制标志332不是“OFF”时(S204:否),处理器225B以待机模式等待该源卷的本地拷贝控制标志332变为“OFF”。反之,当本地拷贝控制信息240中的、与指定标识的输入相对应的源卷的本地拷贝快照标志332是“OFF”、或变为“OFF”时(S204:是),处理器225B检查本地拷贝控制信息240中的、与指定标识的输入相对应的源卷的拷贝控制标志332是否为“ON”(S202),此后重复同样的处理(S202~S204)。
反之,在第二卷组111B的卷中,当表示标识的数据与指定标识相等时(S203:是),处理器225B将本地拷贝控制信息240中的、与指定标识的输入相对应的源卷的执行等待标志333变更为“ON”(S205)。
接着,处理器225B执行从指定标识的输入所对应的源卷到对应目标卷的快照125(S206)。接着,处理器225B将本地拷贝控制信息240中的、与指定标识的输入相对应的源卷的执行等待标志333变更为“OFF”(S207)。随后,处理器225B此后结束图35所示的扩展快照处理过程RT18(S208)。
这样,在第三实施方式中的计算机系统100中,当在第二卷组111B的卷中表示标识的数据与指定标识一致,并且当本地拷贝控制信息240中的与指定标识的输入相对应的本地拷贝控制标志332为“ON”时,可以生成快照。
产业上的可利用性
本发明可以广泛应用于,通过网络将主计算机与存储系统连接、经由网络对主计算机处理的数据进行收发、并存储在存储系统中的计算机系统。

Claims (22)

1.一种计算机系统,包含第一存储系统和第二存储系统,所述第一存储系统具有存储从上位装置发送的数据的第一卷,所述第二存储系统具有存储从所述第一存储系统发送的所述数据的第二卷,该计算机系统的特征在于,
所述第一存储系统具备数据传输部,其将所述第一卷中存储的所述数据传输至所述第二存储系统的所述第二卷,
所述第二存储系统具备快照生成部,其根据快照生成指示,在第三卷中生成所述第二卷的快照,
所述快照生成部,当通过所述数据传输部从所述第一卷向所述第二卷传输所述数据时接收到所述快照生成指示,则延迟向所述第三卷生成所述第二卷的快照,直到从所述第一卷向所述第二卷的所述数据的传输结束。
2.根据权利要求1所述的计算机系统,其特征在于,
所述快照生成部,当不通过所述数据传输部从所述第一卷向所述第二卷传输所述数据时接收到所述快照生成指示,则立即在所述第三卷中生成所述第二卷的快照。
3.根据权利要求1所述的计算机系统,其特征在于,
所述数据传输部,对在一定期间内写入所述第一卷的所述数据进行汇总,并传输至所述第二存储系统的所述第二卷。
4.根据权利要求3所述的计算机系统,其特征在于,
所述第二存储系统具备第二数据传输部,其将所述第二卷中存储的所述数据传输至第四卷,
所述第二数据传输部,当从所述第一卷向所述第二卷的所述数据的传输结束时,开始从所述第二卷向所述第四卷传输所述数据,
所述数据传输部,当从所述第二卷向所述第四卷的所述数据的传输结束时,开始从所述第一卷向所述第二卷传输所述数据。
5.根据权利要求3所述的计算机系统,其特征在于,
所述第一存储系统具备:第一更新位图,其记录所述第一卷中新存储的更新对象数据的内容;以及差分位图,其记录向所述第二存储系统传输的传输对象数据的内容,
所述数据传输部,通过按一定期间调换所述更新位图以及所述差分位图的内容,对在一定期间内写入所述第一卷的所述数据进行汇总,并传输至所述第二存储系统的所述第二卷。
6.根据权利要求1所述的计算机系统,其特征在于,
所述第二存储系统具备第二更新位图,其记录要在所述第三卷中新存储的更新对象数据的内容,
所述快照生成部根据快照生成指示,将内容变更为要将所述第二位图的全部位新存储在所述第三卷中,然后,将所述第二位图的位所对应的所述第二卷的存储区域的数据传输至所述第三卷。
7.根据权利要求6所述的计算机系统,其特征在于,
所述快照生成部,当接收到对所述第二卷的写入请求时,若内容被变更为要将该写入请求所对应的所述第二位图的位新存储在所述第三卷中,则将所述第二位图的位所对应的所述第二卷的存储区域的数据传输至所述第三卷,然后将所述写入请求所对应的数据写入所述第二卷的存储区域。
8.根据权利要求6所述的计算机系统,其特征在于,
所述快照生成部,当接收到对所述第三卷的访问请求时,若内容被变更为要将该访问请求所对应的所述第二位图的位新存储在所述第三卷中,则将所述第二位图的位所对应的所述第二卷的存储区域的数据传输至所述第三卷,然后将所述访问请求所对应的数据从所述第三卷的存储区域读出,或写入所述第三卷的存储区域。
9.根据权利要求3所述的计算机系统,其特征在于,
所述第二存储系统具备:第三传输部,其将从所述第一存储系统传输的所述数据传输至所述第二卷;
接收差分缓冲器,其存储从所述第一存储系统传输的所述数据;以及
应用差分缓冲器,其存储应用于所述第二卷的应用对象数据,
所述第三数据传输部,通过按一定期间调换所述接收差分缓冲器以及所述应用差分缓冲器,对从所述第一存储系统传输的所述数据进行汇总,并应用于所述第二卷。
10.根据权利要求9所述的计算机系统,其特征在于,
所述第一存储系统具备:采集差分缓冲器,其存储在所述第一卷中新存储的更新对象数据;以及
传输差分缓冲器,其存储向所述第二存储系统传输的传输对象数据,
所述数据传输部,通过按一定期间调换所述采集差分缓冲器以及所述传输差分缓冲器,对在一定期间内写入所述第一卷的所述数据进行汇总,并传输至所述第二存储系统。
11.根据权利要求1所述的计算机系统,其特征在于,
当从所述上位装置发送的指定标识与所述第二卷的标识区域中存储的标识一致、且不通过所述数据传输部从所述第一卷向所述第二卷传输所述数据时,所述快照生成部在所述第三卷中生成所述第二卷的快照。
12.一种计算机系统的快照生成方法,所述计算机系统含有第一存储系统和第二存储系统,所述第一存储系统具有存储从上位装置发送的数据的第一卷,所述第二存储系统具有存储从所述第一存储系统发送的所述数据的第二卷,所述快照生成方法的特征在于,具有以下步骤:
将所述第一卷中存储的所述数据传输至所述第二存储系统的所述第二卷的第一步骤;以及
根据快照生成指示,在第三卷中生成所述第二卷的快照的第二步骤,
所述第二步骤中,当在所述第一步骤中从所述第一卷向所述第二卷传输所述数据时接收到所述快照生成指示,则延迟向所述第三卷生成所述第二卷的快照,直到从所述第一卷向所述第二卷的所述数据的传输结束。
13.根据权利要求12所述的快照生成方法,其特征在于,
所述第二步骤中,当在所述第一步骤中不从所述第一卷向所述第二卷传输所述数据时接收到所述快照生成指示,则立即在所述第三卷中生成所述第二卷的快照。
14.根据权利要求12所述的快照生成方法,其特征在于,
所述第一步骤中,对在一定期间内写入所述第一卷的所述数据进行汇总,并传输至所述第二存储系统的所述第二卷。
15.根据权利要求14所述的快照生成方法,其特征在于,
具备将所述第二卷中存储的所述数据传输至第四卷的第三步骤,
所述第三步骤中,当从所述第一卷向所述第二卷的所述数据的传输结束时,开始从所述第二卷向所述第四卷传输所述数据,
所述第一步骤中,当从所述第二卷向所述第四卷的所述数据的传输结束时,开始从所述第一卷向所述第二卷传输所述数据。
16.根据权利要求14所述的快照生成方法,其特征在于,
所述第一步骤中,按一定期间调换第一更新位图的内容以及差分位图的内容,由此,对在一定期间内所写入述第一卷的所述数据进行汇总,并传输至所述第二存储系统的所述第二卷,所述第一更新位图记录所述第一卷中新存储的更新对象数据的内容,所述差分位图记录向所述第二存储系统传输的传输对象数据的内容。
17.根据权利要求12所述的快照生成方法,其特征在于,
所述第二步骤中,根据快照生成指示,将内容变更为要将第二位图的全部位新存储在所述第三卷中,然后,将所述第二位图的位所对应的所述第二卷的存储区域的数据传输至所述第三卷,所述第二位图记录要在所述第三卷中新存储的更新对象数据的内容。
18.根据权利要求17所述的快照生成方法,其特征在于,
所述第二步骤中,当接收到对所述第二卷的写入请求时,若内容被变更为要将该写入请求所对应的所述第二位图的位新存储在所述第三卷中,则将所述第二位图的位所对应的所述第二卷的存储区域的数据传输至所述第三卷,然后将所述写入请求所对应的数据写入所述第二卷的存储区域。
19.根据权利要求17所述的快照生成方法,其特征在于,
所述第二步骤中,当接收到对所述第三卷的访问请求时,若内容被变更为要将该访问请求所对应的所述第二位图的位新存储在所述第三卷中,则将所述第二位图的位所对应的所述第二卷的存储区域的数据传输至所述第三卷,然后将所述访问请求所对应的数据从所述第三卷的存储区域读出,或写入所述第三卷的存储区域。
20.根据权利要求14所述的快照生成方法,其特征在于,
具备将从所述第一存储系统传输的所述数据传输至所述第二卷的第四步骤,
所述第四步骤中,按一定期间调换接收差分缓冲器以及应用差分缓冲器,由此,对从所述第一存储系统传输的所述数据进行汇总,并应用于所述第二卷,所述接收差分缓冲器存储从所述第一存储系统传输的所述数据,所述应用产分缓冲器存储应用于所述第二卷的应用对象数据。
21.根据权利要求20所述的快照生成方法,其特征在于,
所述第一步骤中,按一定期间调换采集差分缓冲器以及传输差分缓冲器,由此,对在一定期间内写入所述第一卷的所述数据进行汇总,并传输至所述第二存储系统,所述采集差分缓冲器存储所述第一卷中新存储的更新对象数据,所述传输差分缓冲器存储向所述第二存储系统传输的传输对象数据。
22.根据权利要求12所述的快照生成方法,其特征在于,
所述第二步骤中,当从所述上位装置发送的指定标识与所述第二卷的标识区域中存储的标识一致、且在所述第一步骤中不从所述第一卷向所述第二卷传输所述数据时,在第三卷中生成所述第二卷的快照。
CN2007101055374A 2006-08-04 2007-05-25 计算机系统及其快照生成方法 Expired - Fee Related CN101118507B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006-213896 2006-08-04
JP2006213896 2006-08-04
JP2006213896A JP4942418B2 (ja) 2006-08-04 2006-08-04 計算機システム及びそのスナップショット作成方法

Publications (2)

Publication Number Publication Date
CN101118507A true CN101118507A (zh) 2008-02-06
CN101118507B CN101118507B (zh) 2012-08-29

Family

ID=38610870

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101055374A Expired - Fee Related CN101118507B (zh) 2006-08-04 2007-05-25 计算机系统及其快照生成方法

Country Status (4)

Country Link
US (3) US7725668B2 (zh)
EP (1) EP1892614B1 (zh)
JP (1) JP4942418B2 (zh)
CN (1) CN101118507B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103530B (zh) * 2009-12-16 2013-08-14 成都市华为赛门铁克科技有限公司 快照方法、设备及系统
CN109324929A (zh) * 2018-09-17 2019-02-12 郑州云海信息技术有限公司 一种快照创建方法、装置、设备及可读存储介质
WO2019091341A1 (zh) * 2017-11-08 2019-05-16 阿里巴巴集团控股有限公司 快照创建方法、装置及系统

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4842720B2 (ja) * 2006-06-29 2011-12-21 株式会社日立製作所 ストレージシステム及びデータ複製方法
JP5401041B2 (ja) * 2008-02-21 2014-01-29 株式会社日立製作所 ストレージシステム及びコピー方法
JP5302582B2 (ja) * 2008-07-09 2013-10-02 株式会社日立製作所 上位装置から指定されるデバイスに関する記憶容量を変更するストレージシステム及び方法
JP5156518B2 (ja) * 2008-07-23 2013-03-06 株式会社日立製作所 記憶制御装置及び方法
JP4679635B2 (ja) * 2008-12-29 2011-04-27 富士通株式会社 ストレージ装置、バックアップ装置、バックアップ方法およびバックアップシステム
TWI526823B (zh) * 2009-01-23 2016-03-21 普安科技股份有限公司 單一架構下進行資料卷複製的方法及其裝置
WO2010106694A1 (en) * 2009-03-18 2010-09-23 Hitachi, Ltd. Data backup system and data backup method
JP4951652B2 (ja) * 2009-06-24 2012-06-13 株式会社日立製作所 コンピュータシステムのリモートコピー方法及びコンピュータシステム
US20110252208A1 (en) * 2010-04-12 2011-10-13 Microsoft Corporation Express-full backup of a cluster shared virtual machine
JP2012058863A (ja) * 2010-09-07 2012-03-22 Nec Corp ディスク装置、および、ディスク装置へのデータ複製方法、プログラム
US8396833B2 (en) * 2010-09-10 2013-03-12 International Business Machines Corporation Inode management in redirect-on-write file system
WO2012127537A1 (en) 2011-03-24 2012-09-27 Hitachi, Ltd. Computer system and data backup method
JP5776267B2 (ja) * 2011-03-29 2015-09-09 日本電気株式会社 分散ファイルシステム
US8463746B2 (en) * 2011-03-30 2013-06-11 International Business Machines Corporation Method and system for replicating data
US8751758B2 (en) * 2011-07-01 2014-06-10 International Business Machines Corporation Delayed instant copy operation for short-lived snapshots
JP5853649B2 (ja) * 2011-11-30 2016-02-09 富士通株式会社 ストレージ装置,制御装置及びプログラム
US9146685B2 (en) 2013-02-11 2015-09-29 International Business Machines Corporation Marking local regions and providing a snapshot thereof for asynchronous mirroring
US10311151B2 (en) * 2013-02-21 2019-06-04 Hitachi Vantara Corporation Object-level replication of cloned objects in a data storage system
US9417815B1 (en) * 2013-06-21 2016-08-16 Amazon Technologies, Inc. Capturing snapshots of storage volumes
US9514002B2 (en) * 2013-09-13 2016-12-06 Vmware, Inc. Incremental backups using retired snapshots
US9772907B2 (en) 2013-09-13 2017-09-26 Vmware, Inc. Incremental backups using retired snapshots
US9323764B2 (en) * 2013-11-12 2016-04-26 International Business Machines Corporation Copying volumes between storage pools
US10120617B2 (en) 2013-11-12 2018-11-06 International Business Machines Corporation Using deterministic logical unit numbers to dynamically map data volumes
US9760442B2 (en) * 2013-12-30 2017-09-12 Stratus Technologies Bermuda Ltd. Method of delaying checkpoints by inspecting network packets
EP3090344B1 (en) 2013-12-30 2018-07-18 Stratus Technologies Bermuda Ltd. Dynamic checkpointing systems and methods
US9588844B2 (en) 2013-12-30 2017-03-07 Stratus Technologies Bermuda Ltd. Checkpointing systems and methods using data forwarding
US9405483B1 (en) 2014-03-11 2016-08-02 Amazon Technologies, Inc. Optimized write performance at block-based storage during volume snapshot operations
US10394491B2 (en) * 2016-04-14 2019-08-27 International Business Machines Corporation Efficient asynchronous mirror copy of thin-provisioned volumes
US11216361B2 (en) 2016-06-29 2022-01-04 Western Digital Technologies, Inc. Translation lookup and garbage collection optimizations on storage system with paged translation table
US10175896B2 (en) 2016-06-29 2019-01-08 Western Digital Technologies, Inc. Incremental snapshot based technique on paged translation systems
US10353813B2 (en) 2016-06-29 2019-07-16 Western Digital Technologies, Inc. Checkpoint based technique for bootstrapping forward map under constrained memory for flash devices
US10235287B2 (en) 2016-06-29 2019-03-19 Western Digital Technologies, Inc. Efficient management of paged translation maps in memory and flash
US10229048B2 (en) 2016-06-29 2019-03-12 Western Digital Technologies, Inc. Unified paging scheme for dense and sparse translation tables on flash storage systems
US10430121B2 (en) 2016-08-22 2019-10-01 International Business Machines Corporation Efficient asynchronous mirror copy of fully provisioned volumes to thin-provisioned volumes
US10162563B2 (en) 2016-12-02 2018-12-25 International Business Machines Corporation Asynchronous local and remote generation of consistent point-in-time snap copies
US10505903B1 (en) 2017-07-14 2019-12-10 EMC IP Holding Company LLC System and method of obtaining data from private cloud behind enterprise firewall
US10116764B1 (en) 2017-07-18 2018-10-30 EMC IP Holding Company LLC Method for state based snapshot difference with restart capability
US10223210B2 (en) * 2017-07-29 2019-03-05 International Business Machines Corporation Asynchronous local and remote generation of consistent point-in-time snap copies in consistency groups
US10402302B1 (en) * 2018-03-13 2019-09-03 Red Hat Israel, Ltd. Reproduction of testing scenarios in a continuous integration environment
US11100132B2 (en) * 2018-10-11 2021-08-24 International Business Machines Corporation Intelligent space release in asynchronous mirror journal volumes
CN110008065A (zh) * 2019-04-11 2019-07-12 苏州浪潮智能科技有限公司 一种一致性组快照管理方法及相关装置
US11704035B2 (en) 2020-03-30 2023-07-18 Pure Storage, Inc. Unified storage on block containers
US11526286B1 (en) 2021-06-29 2022-12-13 Amazon Technologies, Inc. Adaptive snapshot chunk sizing for snapshots of block storage volumes

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US69893A (en) * 1867-10-15 Improvement in bridles
US6131148A (en) * 1998-01-26 2000-10-10 International Business Machines Corporation Snapshot copy of a secondary volume of a PPRC pair
US6434681B1 (en) * 1999-12-02 2002-08-13 Emc Corporation Snapshot copy facility for a data storage system permitting continued host read/write access
JP4076326B2 (ja) * 2001-05-25 2008-04-16 富士通株式会社 バックアップシステム、データベース装置、データベース装置のバックアップ方法、データベース管理プログラム、バックアップ装置、バックアップ方法および、バックアッププログラム
JP3730907B2 (ja) * 2001-12-04 2006-01-05 日本電気株式会社 ディスクアレイ装置間の遠隔データコピー方式
US6829617B2 (en) * 2002-02-15 2004-12-07 International Business Machines Corporation Providing a snapshot of a subset of a file system
US7127577B2 (en) * 2003-01-21 2006-10-24 Equallogic Inc. Distributed snapshot process
US7165145B2 (en) * 2003-07-02 2007-01-16 Falconstor Software, Inc. System and method to protect data stored in a storage system
US7254683B2 (en) * 2003-11-03 2007-08-07 International Business Machines Corporation Speculative data mirroring apparatus method and system
JP4703959B2 (ja) * 2003-12-03 2011-06-15 株式会社日立製作所 記憶装置システムおよびそのレプリケーション作成方法
US7231502B2 (en) * 2004-02-04 2007-06-12 Falcon Stor Software, Inc. Method and system for storing data
JP4483342B2 (ja) * 2004-02-27 2010-06-16 株式会社日立製作所 システム復旧方法
JP4549709B2 (ja) * 2004-03-23 2010-09-22 株式会社日立製作所 ストレージ装置
US7461100B2 (en) * 2004-05-27 2008-12-02 International Business Machines Corporation Method for fast reverse restore
US20060018505A1 (en) * 2004-07-22 2006-01-26 Dell Products L.P. Method, system and software for enhanced data protection using raw device backup of copy-on-write snapshots
JP4508798B2 (ja) 2004-08-09 2010-07-21 株式会社日立製作所 ストレージリモートコピー方式
JP2006072635A (ja) * 2004-09-01 2006-03-16 Hitachi Ltd データ処理システムおよびそのコピー処理方法
US7680839B1 (en) * 2004-09-30 2010-03-16 Symantec Operating Corporation System and method for resynchronizing mirrored volumes
US8078813B2 (en) 2004-09-30 2011-12-13 Emc Corporation Triangular asynchronous replication
JP2006164162A (ja) * 2004-12-10 2006-06-22 Fujitsu Ltd コピー制御装置および方法
US20060143412A1 (en) * 2004-12-28 2006-06-29 Philippe Armangau Snapshot copy facility maintaining read performance and write performance
US7363444B2 (en) * 2005-01-10 2008-04-22 Hewlett-Packard Development Company, L.P. Method for taking snapshots of data
US7778976B2 (en) * 2005-02-07 2010-08-17 Mimosa, Inc. Multi-dimensional surrogates for data management
US7401251B1 (en) * 2005-09-29 2008-07-15 Emc Corporation Architecture for managing failover and recovery after failover in a data storage environment

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102103530B (zh) * 2009-12-16 2013-08-14 成都市华为赛门铁克科技有限公司 快照方法、设备及系统
WO2019091341A1 (zh) * 2017-11-08 2019-05-16 阿里巴巴集团控股有限公司 快照创建方法、装置及系统
CN109324929A (zh) * 2018-09-17 2019-02-12 郑州云海信息技术有限公司 一种快照创建方法、装置、设备及可读存储介质
CN109324929B (zh) * 2018-09-17 2021-11-09 郑州云海信息技术有限公司 一种快照创建方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
EP1892614A3 (en) 2010-03-24
JP2008040762A (ja) 2008-02-21
US20110258408A1 (en) 2011-10-20
US8112600B2 (en) 2012-02-07
US20080034176A1 (en) 2008-02-07
CN101118507B (zh) 2012-08-29
US7725668B2 (en) 2010-05-25
EP1892614A2 (en) 2008-02-27
JP4942418B2 (ja) 2012-05-30
EP1892614B1 (en) 2011-05-18
US20100235591A1 (en) 2010-09-16
US7953947B2 (en) 2011-05-31

Similar Documents

Publication Publication Date Title
CN101118507B (zh) 计算机系统及其快照生成方法
US8335761B1 (en) Replicating in a multi-copy environment
US7130974B2 (en) Multi-site remote-copy system
US7114012B2 (en) Computer system and method for migrating from one storage system to another
CN100437568C (zh) 事务相容的写时复制数据库
JP4773788B2 (ja) 記憶システムにおけるリモートコピー制御
CN100495354C (zh) 在耦合会话环境内合并一簇会话的会话信息的方法和系统
JP2006048578A (ja) 計算機システム、計算機及びそのプログラム。
JP5159356B2 (ja) リモートコピーシステム及び計算機システム
JP2007122117A (ja) ストレージシステム及び記憶制御方法
JP2009199197A (ja) 計算機システム、データ一致化方法およびデータ一致化処理プログラム
JP2002149499A (ja) データの完全性を備えるリモートコピーシステム
US7069305B2 (en) Computer system and a data transfer method thereof using remote direct memory access
US20090024768A1 (en) Connection management program, connection management method and information processing apparatus
US7191284B1 (en) Method and system for performing periodic replication using a log and a change map
JP2006318491A (ja) 記憶システム
US9003129B1 (en) Techniques for inter-storage-processor cache communication using tokens
US8738816B2 (en) Management of detected devices coupled to a host machine
CN102446124B (zh) 远程拷贝系统
US20070106855A1 (en) Storage system with journal reflecting area control function
JP4249240B2 (ja) 記憶システム
JP5509272B2 (ja) 計算機システム、データ一致化方法およびデータ一致化処理プログラム
US7587628B2 (en) System, method and computer program product for copying data
JP7050707B2 (ja) ストレージ制御装置、ストレージシステム、ストレージ制御方法、及び、ストレージ制御プログラム
JPH09152985A (ja) ジャーナルバックアップ方法及びシステム

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: 20120829