远程复制方法及远程复制系统的制作方法

文档序号:6509474阅读:171来源:国知局
专利名称:远程复制方法及远程复制系统的制作方法
技术领域
本发明涉及存储系统,特别是涉及多个存储系统之间数据的复制。
背景技术
近年来,为了在用于向顾客提供连续服务的存储系统(称为第1存储系统)发生故障的情况下数据处理系统仍然可以提供服务,在第1存储系统之外另行设置其它存储系统(与第1存储系统距离比较近的存储系统称为第2存储系统,比第2存储系统距离远的存储系统称为第3存储系统)、利用所述的其它存储系统存储第1存储系统的数据副本的技术是很重要的。将第1存储系统中存储的信息复制到第2和第3存储系统的技术包括以下专利文献中公开的技术。
专利文献1中公开的技术是,第2存储系统具有两份与第1存储系统的复制对象数据相对应的复制数据,第3存储系统则保持有一份该复制数据。
专利文献2中公开的技术是,第2存储系统仅具有一份与第1存储系统的复制对象数据相对应的复制数据,不需要专利文献1中用于实施远程复制的冗余逻辑卷,第3存储系统就可以得到该复制数据。
专利文献1美国专利6209002号公报专利文献2特开2003-122509号公报如上所述,在现有技术中,为了使位于远距离地的第3存储系统得到第1存储系统的数据副本,中间设置第2存储系统,在防止数据丢失的同时实现长距离的远程复制。
但是,对于用户来说,有时候需要通过向远距离地的复制提高数据的耐故障性能并考虑系统运行成本的远程复制系统。例如有仅使第1存储系统中数据的副本保持在远距离地的存储系统中的情况。
一旦发生故障,因为远距离地的存储系统中具有第1存储系统中数据的完整副本,因此考虑到对第1存储系统性能的影响,必须在中间配置第2存储系统,经由该第2存储系统从第1存储系统向远距离地的第3存储系统传送数据。在这种情况下,希望中间的第2存储系统所使用的逻辑卷尽可能地小。
但是,从第2存储系统向远距离地的第3存储系统进行数据的远程复制时,第2存储系统必须具有与第1存储系统相同的卷(复制卷)。第1存储系统的卷容量越大,该卷就越大。
不用说,利用专利文献2所公开的技术也无法避免第2存储系统中应具有与第1存储系统的复制对象卷相同容量的卷。

发明内容
本发明针对上述问题提出,其目的是在从第1站点向第3站点进行复制时,最小限度地或者干脆不为此使用第2存储系统中的卷。另一个目的是提高卷的可用性(availability),以使某卷的区域成为多个上位装置写入的对象。
为了实现上述目的,本发明的一个技术方案结构如下包括与第1信息处理装置之间进行数据收发的第1存储系统、与第2信息处理装置和第1存储系统相连并从第1存储系统接收数据的第2存储系统,以及与第2存储系统相连并从第2存储系统接收数据的第3存储系统,其特征在于,第1存储系统具有写入信息处理装置所发送数据的第1存储区域,第2存储系统具有存储上述数据副本的逻辑地址,但存储区域未被分配,并且具有写入上述数据及其更新信息的第2存储区域,第1存储系统发送的数据作为该数据和更新信息被写入第2存储区域,第3存储系统具有存储从第2存储系统内的第2存储区域读出的数据和与数据有关的更新信息的第3存储区域,存储在第2存储区域中的数据和更新信息从第3存储系统读出。第2存储系统具有存储上述数据副本的逻辑地址,但存储区域未被分配,该存储区域可以用于与第2信息处理装置的数据收发。
本发明可以在第2存储系统不具有与第1存储系统的复制对象数据的完整副本的情况下向第3存储系统进行复制对象数据的复制。这样可以减小第2存储系统的卷容量,并且可以将不需要指定的实际卷用于其它用途。而且可以由多个上位装置利用卷的特定区域。这里所谓的上位装置是指,由发出针对该卷特定区域的数据写入命令或读出命令的信息处理装置,在通过第1存储系统发出的写入命令执行向第2存储系统的卷的写入时,第1存储系统成为第2存储系统的上位装置。当然,服务器等信息处理装置是存储系统的上位装置。


图1所示为本发明的第1实施例。
图2所示为存储系统的内部结构。
图3所示为卷信息表。
图4所示为日志说明图。
图5所示为初始复制处理。
图6所示为对设定信息。
图7所示为日志组设定信息表。
图8所示为访问命令接收处理流。
图9所示为说明访问命令接收处理的流程图。
图10所示为接收到日志读出命令的存储系统15的通道适配器50的动作(日志读出命令接收处理)说明图。
图11为日志读出命令接收处理的说明流程图。
图12所示为还原处理说明图。
图13所示为还原处理流程的说明图。
图14所示为本发明的第2实施例。
图15所示为第2实施例中的初始设定处理。
图16所示为对设定信息。
图17所示为第2实施例的访问命令接收处理流的说明图。
图18所示为第2实施例中访问命令接收处理流程图的说明图。
图19所示为本发明的第3实施例。
图20所示为连接信息表。
图21所示为第4实施例中主机5或维护终端上显示的对生成设定画面的一个例子。
图22所示为第1站点发生故障时由第3站点接替业务的情形。
图23所示为第1站点发生故障时由第2站点接替继续业务的情形。
具体实施例方式
以下参照

本发明的实施例。
(第1实施例)图1所示为本发明的第1实施例,表示由多个存储系统构成的远程复制系统整体。存储系统10通过连接线210与主机5相连。(以下适当地将该存储系统10称为第1存储系统,将由该第1存储系统和主机5构成的数据处理系统称为第1站点。)存储系统15通过连接线220与第1存储系统10相连。(以下适当地将该存储系统15称为第2存储系统,将至少包含该第2存储系统的数据处理系统称为第2站点或中间站点。)存储系统20通过连接线240与作为第2存储系统的存储系统15相连。(以下适当地将该存储系统20称为第3存储系统,将至少包含该第3存储系统20的数据处理系统称为第3站点。)连接线210、220、240除了由光缆等连接线直接连接构成外,也可以通过因特网等广域线路连接。
第1站点的存储系统10保持有逻辑卷110(ORG1)、逻辑卷120(ORG2)。在本实施例中,逻辑卷110(ORG1)中存储有成为复制对象的原始数据。
第2站点的存储系统15保持有逻辑卷110(ORG1)的副本作为逻辑卷150(Data1)。第3站点的存储系统20保持有存储复制数据的逻辑卷200(Data2)。
在此,存储系统10、15、20中定义的逻辑卷的容量或物理存储位置(物理地址)可以分别通过与各存储系统相连的计算机等维护终端(图上未示出)或主机5、6、7指定。
在以下的说明中,为容易区分复制对象数据与复制数据,将存储有复制对象数据的逻辑卷称为正逻辑卷,将存储有复制数据的逻辑卷称为副逻辑卷。将一对正逻辑卷和副逻辑卷称为对。正逻辑卷和副逻辑卷的关系和状态等作为对设定信息表500保存在后述各存储系统内的共用存储器(SM)70中。
首先通过图2表示图1所示存储系统10的硬件结构的一个例子。在图1中说明为存储系统15的第2存储系统简化表示为第2存储系统15。
第1存储系统10具有用于与主机5连接的多个通道适配器50,这些通道适配器50通过连接线210与主机5或第2存储系统15相连。
通道适配器50通过连接部55与高速缓存60相连,对从上位装置接收的命令进行解析,控制主机5的期望数据向高速缓存的读出或写入。逻辑卷110(Org1)和逻辑卷120(Org2)添加配置在多个HDD100上。
图3所示为定义逻辑卷和HDD100中的物理地址并且定义逻辑卷容量、格式等属性信息以及对信息的表的一个例子。在此为了便于说明,将逻辑卷编号处理为在数据中心内的各逻辑卷中是唯一的。
另外,逻辑卷编号也可以以各存储系统为单元唯一性地定义,并且设定为与存储系统自身的标识符结合确定。在卷状态中,未使用表示逻辑卷已经被设定但未使用,正表示作为前述对卷的正卷处于可以正常工作的状态。正常表示未和其它逻辑卷设定为对但为正常状态。副表示该卷为对的副卷、可以正常工作。关于表示对状态的卷状态信息后述。
该图3所示的例子表示本发明申请的数据中心系统的逻辑卷状态。1号逻辑卷表示第1存储系统10的逻辑卷110(Org1),表示与第2存储系统15的逻辑卷150(Data1)构成1号对的状态。同样,第2存储系统15的逻辑卷151(JNL1)记述为3号逻辑卷。以下同样,第3存储系统20的逻辑卷201记述为4号逻辑卷,第3存储系统20的逻辑卷200记述为5号逻辑卷。另外,将逻辑卷120(Org2)定义为未使用的6号逻辑卷。
图3中的物理地址栏表示实际HDD100上的地址。图2的磁盘适配器80上的微处理器(图上未示出)根据该信息控制从高速缓存60向实际HDD上记录数据的动作或将数据从HDD100读出到高速缓存60的动作。
虽然是以存储系统10为代表进行说明,但图1所示的其它存储系统15、20也具有大致相同的结构。连接部55除了由直接连接通道适配器和高速缓存等的开关等构成外,还可以采取总线连接方式。另外,图示状态为共用存储器70位于高速缓存60内,但共用存储器70还可以不与高速缓存60而与连接部55相连。
以下通过图1说明将第1站点的存储系统10的正逻辑卷110(Org1)的数据更新通过第2站点(中间站点)的存储系统15反映到第3站点的存储系统20的逻辑卷200(Data2)的动作。
在此首先说明日志数据。为了易于说明,此处与它处相区别,将数据被更新的更新源逻辑卷称为源逻辑卷,将保持该更新源逻辑卷副本的卷称为副本逻辑卷。
在某源逻辑卷有数据更新时,日志数据至少由更新数据本身和表示该更新处于源逻辑卷中什么位置的更新信息(例如源逻辑卷上的逻辑地址)构成。
即,只要在对源逻辑卷数据有更新的情况下保持日志数据,就可以根据该日志数据再现源逻辑卷。
以存在具有与某时刻的源逻辑卷相同的数据映像的副本逻辑卷为前提,只要每当对该时刻以后的源逻辑卷有数据更新时都保持上述日志数据,就可以利用该日志数据使某时刻以后的源逻辑卷的数据映像再现到副本逻辑卷中。
只要使用日志数据,不必具有与源逻辑卷相同的容量就可以使源逻辑卷的数据映像再现到副本逻辑卷中。以下将保持日志数据的卷称为日志逻辑卷。
通过图4进行更具体的说明。图4所示为某源逻辑卷的地址号码700~1000的数据被更新后的状态(更新数据630)。这种情况下,与某逻辑卷成对的日志逻辑卷作为日志数据950将更新数据本身记录在写入数据区域9100中作为写入数据610,将例如关于什么位置被更新的更新信息记录在更新信息区域9000中作为更新信息620。
日志逻辑卷分割为存储更新信息620的存储区域9000(更新信息区域)和存储写入数据的存储区域9100(写入数据区域)两部分使用。更新信息区域9000从更新信息区域9000的起始地址开始按照更新顺序(更新编号的顺序)存储更新信息,在达到更新信息区域终端后,再从更新信息区域的起始地址开始存储。写入数据区域9100从写入数据区域9100的起始地址开始存储写入数据,在达到写入数据区域9100的终端后,再从写入数据区域9100的起始地址开始存储写入数据。,在保障用于日志逻辑卷的容量溢出之前必须根据日志逻辑卷内的信息对复制目标逻辑卷进行更新作业,这是自不待言的。更新信息区域9000和写入数据区域9100之比可以是固定值,也可以由维护终端或主机5设定。
在图1中,在接收到主机5发出的针对存储系统10内的正逻辑卷110(ORG1)的数据的写入命令后(图1所示的箭头250),第1存储系统内的正逻辑卷110(ORG1)的数据被更新。然后,与该更新后的正逻辑卷110(ORG1)成对的第2(中间站点)存储系统15内的逻辑卷150(Data1)也同样被更新(对的同步更新)。这样,第2存储系统15即使在第1存储系统发生故障的情况下也可以立即接替其业务。这是因为,第2存储系统15保持了具有与主机5正使用的正逻辑卷110(ORG1)相同的数据映像的副逻辑卷150(Data1)。
另一方面,第2站点的存储系统15在向逻辑卷150(Data1)有数据更新时,在逻辑卷151(JNL1)(以下适当地称为日志卷)中保存日志数据(图1所示箭头260)。
第2存储系统15的日志数据的存储用逻辑卷151(JNL1)中存储的日志数据通过连接线240被非同步地传送(图1所示箭头270)到远距离地的第3存储系统20内的日志存储用逻辑卷201(JNL2)中(以下称为PUSH方式)。第3存储系统20利用存储系统20内部的日志卷201(JNL2)的日志数据再生与第2存储系统15的逻辑卷150对应的逻辑卷200(Data2)(图1所示箭头280,还原处理)。
也可以将第2存储系统15的日志卷内的数据从第3存储系统20读出并存储在存储系统20内的逻辑卷201(JNL2)中(以下称为PULL方式)。
具体说明上述PULL方式。第2存储系统15从第3存储系统20接收到读日志数据的命令(以下称为日志读出命令)后,从日志逻辑卷151(JNL1)读出日志并发送到第3存储系统20。
然后,第3存储系统20通过后述的还原处理350从日志逻辑卷(JNL2)201读出日志数据,并更新逻辑卷200(Data2)的数据。这样就完成了将第1站点的存储系统10的正逻辑卷110(ORG1)中产生的数据更新反映到第3站点的存储系统20的副逻辑卷200(Data2)的处理。
通过将日志数据保存到日志卷201,也可以例如在存储系统20的负荷大的情况下,利用副逻辑卷200(Data2)的数据更新,即日志数据,在日志数据接收时不将正逻辑卷110(ORG1)复制到副逻辑卷200(Data2)中(还原处理350),而是在不久之后当存储系统20的负荷减少时,更新副逻辑卷200(Data2)的数据。
图1所示的第2存储系统15内的逻辑卷151(JNL1)如前所述是日志数据的专用存储区域,可以比数据复制对象的存储区域小,这样就抑制了第2存储区域15内存储区域的占用,从而可以实现从第1存储系统10向第2、第3存储系统15、20的数据复制。
以下具体说明将对前述存储系统10的逻辑卷110(ORG1)的数据更新反映到中间站点的第2存储系统15、第3站点的第3存储系统20的动作进行时,整个数据中心系统的设定。
为了构建图1所示的由多个站点构成的数据中心系统,首先例如需要进行使逻辑卷150(Data1)和日志卷151(JNL1)构成日志组的设定。所谓日志组是指逻辑卷彼此形成的对,如先前的说明,由逻辑卷和在有向该逻辑卷的数据写入命令时将该写入命令区分为写入目标地址等更新信息和写入数据进行存储的日志卷构成。
在图1的例子中,对存储系统15来说,逻辑卷150(Data1)和逻辑卷151(JNL1)构成日志组,在存储系统20中,逻辑卷201(JNL2)和逻辑卷200(Data2)构成日志组。
图5所示流程图表示本发明申请的数据中心系统的初始设定程序。用户利用主机5、6、7或图1中未示出的维护终端所具有的GUI(图形用户接口)设定各存储系统的日志组(步骤900、905)。
在图1中,第2、第3站点的存储系统15、存储系统20内的日志组,即Data1和JNL1的对、Data2和JNL2的对,分别称为日志组1、日志组2。日志组有时也称为日志对。具体如图7所示,作为日志组设定信息表550保存在共用存储器70中。
而且,用户利用与各存储系统相连的维护终端或主机5、6指定表示数据复制对象的信息和表示数据复制目的地的信息,并向第1和第2存储系统10、15进行对登记指示(步骤910)。具体地说,在图1的逻辑卷110(ORG1)和逻辑卷150(Data1)之间设定对关系。
设定为对后,根据该对的状态(status),针对正逻辑卷产生的写入处理成为对副逻辑卷进行各种处理的契机。例如,在对状态(status)中包括挂起状态、成对状态、初始复制状态等状态,并且对状态(status)为成对状态时,对写入正逻辑卷的数据进行也写入副逻辑卷的处理,为挂起状态时,写入正逻辑卷的数据不反映到副逻辑卷,其差异通过位图保存在第1存储系统10内。
日志组的设定信息或所述对的设定信息如前所述存储在图2所示的共用存储器(SM)70中,通道适配器50中的微处理器根据该信息执行处理。该处理的方法当然不限于在进行处理时参照共用存储器(SM)70,也可以将同一处理器的处理所必须的信息预先传送到通道处理器的本地存储器中。
图6为表示对状态的对设定信息表500的一个例子。在图6的第1行中作为1号对记述的是生成第1存储系统10的逻辑卷110(Org1)(1号逻辑卷)和第2存储系统15的逻辑卷150(Data1)(2号逻辑卷)的对。然后在图5的步骤910中进行作为使逻辑卷110(Org1)和逻辑卷150(Data1)的数据映像相同的初始化处理的初始复制。
在下一步骤915中,指定逻辑卷150(Data1)和逻辑卷200(Data2)形成对并进行初始复制。这是为了与上述步骤910的处理同样使逻辑卷150(Data1)和逻辑卷200(Data2)具有相同的数据映像。
图6中2号对一行表示设定所述对后的状态。该对在初始复制处理结束后解除(步骤920)。
第1存储系统10的逻辑卷110(ORG1)的数据映像被复制到存储系统15、20的逻辑卷150(Data1)、200(Data2)后,存储系统15、20内的复制程序向维护终端或主机5报告形成复制结束情况。该初始化处理后就可以正确地进行存储系统20中的数据的还原处理(恢复)。
以下通过图8、图9详细说明本发明存储系统的实施例中存储系统的动作。
图8所示为第2站点的存储系统15进行的数据写入处理。第2存储系统15通过连接线220经由通道适配器50与第1站点的存储系统10连接。第1存储系统10通过连接线210与主机5连接。
首先,第1存储系统10通过连接线210接收主机5发出的数据写入命令(图8的箭头250)。当数据写入到逻辑卷110(ORG1)中后,第2存储系统15通过连接线220接收第1存储系统10发出的数据写入命令。
图8所示箭头1100表示在接收到向第2站点的存储系统15中的数据复制目标逻辑卷150(Data1)的数据写入命令的情况下的数据流。
通道适配器50接收到第1存储系统发出的向逻辑卷150(Data1)的数据写入命令后,将该写入数据和更新信息保存在高速缓存60中。高速缓存60中的写入数据通过磁盘适配器80以与写入高速缓存不同的定时写入逻辑卷150(Data1)(图8的箭头1110)。
同样,高速缓存60中记录的更新信息(至少包含更新后的地址)被写入逻辑卷151(JNL1)的更新信息区域,进而写入数据被存储到逻辑卷151(JNL1)的写入数据区域(图8的箭头1120)。磁盘适配器80将高速缓存60中的写入数据和更新信息写入HDD的逻辑卷151(JNL1)中分配的地址(图8中的箭头1130、1140)。
另一方面,通过连接线240连接到第3存储系统20上的通道适配器51接收存储系统20发出的逻辑卷151(JNL1)的读出命令。关于这一点在图11中后述。另外,通道适配器50和51是结构相同的通道适配器,但为了方便说明,赋予其不同的标号适当进行区别。
图9所示为第2站点的存储系统15的逻辑卷150(Data1)接收第1站点的存储系统发出的命令时的处理流程图。
图8的通道适配器50中装载的微处理器(以下称为通道适配器50)接收到第1存储系统10发出的访问命令后,判断该命令的种类(图9的步骤1210)。这是因为通道适配器包括如图8的通道适配器50接收写入命令的情况和如通道适配器51那样通道适配器50接收其它存储装置发出的读出命令的情况。
在接收的访问命令不是写入命令、而是第3存储系统20发出的日志读出命令时,进行后述的日志读出接收处理(步骤1215、1220)。
如果在步骤1210中访问命令是写入命令,则判断逻辑卷150(Data1)的卷状态(步骤1240)。
卷状态如图3所示,各逻辑卷的状态以表的形式如前所述存储在共用存储器(SM)70中作为卷信息。
如果在步骤1240中逻辑卷150(Data1)的卷状态不是正常,则因为不可能访问逻辑卷150(Data1),因此向主机5报告异常后结束(步骤1230)。
如果在步骤1240中逻辑卷150(Daa1)的卷状态为正常,则通道适配器50准备好高速缓存60并接收数据(步骤1250)。具体地说,向第1存储系统10报告数据接收准备完成,然后第1存储系统10向第2存储系统15发送写入数据。第2存储系统的通道适配器50接收写入数据并保存到准备好的高速缓存60中(步骤1250,图8中的箭头1100)。然后,在步骤1260中向第1存储系统10报告处理结束。
然后,通道适配器50参照共用存储器(SM)70中记录的日志组设定信息表550(参照图7),判断逻辑卷150(Data1)是否为具有日志组的逻辑卷(步骤1270)。
在此对图7进行详细说明。图7表示日志对是在哪些逻辑卷之间形成。第一行表示2号和3号逻辑卷为日志组。具体地说表示存储系统15的逻辑卷150(Data1)和逻辑卷151(JNL1)形成日志对。
逻辑卷150(Data1)是具有日志组的逻辑卷时,针对与该卷形成日志组的日志逻辑卷151(JNL1)进行日志生成处理(步骤1265)。然后在任意定时由磁盘适配器80向HDD中定义的逻辑卷150(Data1)和逻辑卷151(JNL1)进行数据写入(步骤1280和图8中的箭头1130、1140)。
如上所述进行第2存储系统15内的日志的生成,并且该日志数据顺序存储在日志卷151(JNL1)中。该日志数据以一定的要因为契机被发送到第3存储系统20的日志卷201(JNL2)中。方法之一为前面说明的推(PUSH)方式,另一方法为下述的拉(PULL)方式。以下通过图10说明拉(PULL)方式的情形。
图10所示为接收到日志读出命令的第2存储系统15的通道适配器51的动作(日志读出命令接收处理),图11为其流程图。以下通过所述两个图说明第2存储系统15接收到第3存储系统20发出的日志读出命令时的动作。
第2存储系统15内的通道适配器51接收第3存储系统20发出的访问命令(图10的箭头1410),如果访问命令是日志读出命令,则通道适配器51参照图7判断日志组状态是否为“正常”(步骤1510)。如果在步骤1510中日志组状态不是“正常”,而是例如“故障”时,将日志组状态通知第3存储系统20并结束处理。第3存储系统20根据所通知的日志组状态进行处理。例如,日志组状态为“故障”时,结束日志读出处理(步骤1515)。
如果在步骤1510中日志组状态为“正常”,则通道适配器51判断日志逻辑卷的状态(步骤1520)。
如果在步骤1520中日志逻辑卷的卷状态不是“正常”,而是例如“故障”等时,将图7所示的日志组状态变更为“故障”,向存储系统20通知日志组状态并结束处理(步骤1525)。
在步骤1530中,通道适配器51判断是否存在没有发送的日志数据,如果存在,则将日志数据发送到第3存储系统20(步骤1550)。全部日志都被发送到存储系统20后,将“日志无”发送到第3存储系统20(步骤1560)。然后释放日志数据所在的区域(步骤1570)。
利用图10进一步详细说明存在未发送日志的情况。存在未发送的日志数据时,通道适配器51准备好高速缓存60,然后命令磁盘适配器80将更新信息和写入数据读入高速缓存60(图10中的箭头1440)。
磁盘适配器81的读写处理是,从作为在HDD上分散形成的逻辑区域的逻辑卷151(JNL1)读入更新信息和写入数据,保存在高速缓存60中并通知通道适配器51(图10中的箭头1430、1450)。
通道适配器51接收写入数据和更新信息向高速缓存读出结束的通知,将更新信息和写入数据从高速缓存60发送到第3存储系统20,然后释放保持日志的高速缓存60(图10的箭头1460)。
通道适配器51释放在前次的日志读出命令处理时发送到第3存储系统20的日志的存储区域(步骤1570)。
在上述日志读出接收处理中,第2存储系统15将日志数据逐个发送到第3存储系统20,但也可以多个同时发送到存储系统20。
通过一个日志读出命令发送的日志数据量可以由第3存储系统20在日志读出命令中指定,也可以在日志组登记时由用户在第2存储系统15或第3存储系统20中指定。
再有,也可以根据第2存储系统15和第3存储系统20的连接总线240的传送能力或负载等动态地变更以一个日志读出命令发送的日志数据量。另外,也可以不考虑日志量,而是考虑日志的写入数据的量来指定日志传送量。
在前述日志读出命令接收处理中将日志数据从存储装置100读入到高速缓存60,但如果高速缓存60中存在日志数据,则不需要该处理。
前述日志读出接收处理中日志存储区域的释放处理是在下一日志读出命令处理时进行,但也可以是紧接日志发送到第3存储系统20之后释放。另外,第3存储系统20也可以在日志读出命令内设定可释放的更新编号,第2存储系统15根据该指示释放日志的存储区域。
接收到日志数据的第3存储系统20将接收到的日志数据存储在日志卷201(JNL2)中。然后,存储系统20进行日志还原。
第3存储系统20执行日志还原程序,将数据从日志卷201(JNL2)还原到逻辑卷200(Data2)中。还原结束后,原来存储日志的区域被释放,从而用于新的日志存储。
以下详细说明该日志还原处理。图12所示为还原处理的说明图,图13为其流程图。
以下通过图12、13说明第3存储系统20的通道适配器53利用日志进行数据更新的动作。还原处理也可以由存储系统20的磁盘适配器80进行。
在图13的步骤2010中,判断作为还原对象的日志数据是否存在在于逻辑卷201(JNL2)中。在日志数据不存在的情况下,还原处理一旦结束,在一定的时间后,通道适配器53再启动还原处理(步骤2010)。
在步骤2010中作为还原对象的日志数据存在的情况下,对最老(最小)的日志数据进行以下处理。可以将更新编号连续赋予日志数据,根据具有最老(最小)更新编号的日志的更新信息进行还原处理。通道适配器53准备好高速缓存60(图12的箭头1910),从最老的更新信息中将更新信息和写入数据读出到磁盘适配器80中(步骤2020,图12中的箭头1920、1930)。
具体地说,第3存储系统的磁盘适配器83通过读写处理340从存储有更新信息的HDD100读入更新信息,保存在高速缓存60中并通知通道适配器53。
同样,第3存储系统的磁盘适配器83根据读入的更新信息获取写入数据(步骤1930),然后命令读入到与逻辑卷200(Data2)的应更新部分对应的高速缓存60的区域中(步骤2020,图12中的1940)。
然后,磁盘适配器83与还原处理非同步地将写入数据从副逻辑卷高速缓存区域写入副逻辑卷200(Data2)(图12中的箭头1950,步骤2030)。然后释放(清除)反映到副逻辑卷200(Data2)的副逻辑卷(JNL2)的更新信息和写入数据所在的区域(步骤2040)。判断是否继续进行还原处理(步骤2050),如果进行,则返回到步骤2010,否则结束。
在上述还原处理中将日志从存储装置100读入到高速缓存60,但如果高速缓存60中存在日志,则不需要该处理。
(第2实施例)以下说明第2实施例。图14所示为本发明申请第2发明概念的说明图。与第1实施例不同的是,第2存储系统的逻辑卷150(Data1)是虚拟化设定的卷,不具有实际存储数据的存储区域。图15所示为初始设定程序。图16所示为用于实现本发明申请第2实施例的对信息表。图17所示为本实施例的访问命令接收处理中的数据流说明图。图18所示为本发明申请的第2发明中第2存储系统15的处理流程图。以下通过图15、图16、图17和图18进行说明。
首先,图15所示流程图表示本发明申请第2实施例的初始设定程序。用户通过主机5、6、7或图14中未示出的维护终端具有的GUI(图形用户接口)设定第3存储系统20的日志组(步骤3000)。具体地说,将逻辑卷200(Data2)和逻辑卷201(JNL2)记述在图7所示的日志组设定信息表中。
然后,用户利用与各存储系统相连的维护终端或主机5、6、7指定表示数据复制对象的信息和表示数据复制目的地的信息,进行对设定(步骤3100)。具体地说,在图14的逻辑卷110(ORG1)和逻辑卷200(Data2)之间设定对关系。
在该步骤3100中,指定逻辑卷110(Org1)和逻辑卷200(Data2)、形成对并进行初始复制。这是为了使逻辑卷110(Org1)和逻辑卷200(Data2)具有相同的数据映像。然后在初始复制处理结束后解除对(步骤3200)。
然后,在第1存储系统10和第2存储系统15内的逻辑卷110(Org1)和逻辑卷150(Data1)之间设定对关系(步骤3300)。
图16所示为本发明申请第2实施例的对信息表510。其结构与前面说明的图6大致相同,不同之处在于,在每个对中具有表示是否为虚拟化的数据。在图16的1号对所表示的对中,虚拟化一栏为ON。这表示对的副逻辑卷是虚拟化的。
逻辑卷150(Data1)和逻辑卷151(JNL1)登记为日志组(步骤3400)。
以上所述为第2实施例的初始设定程序。该初始化处理后,就可以在存储系统20中正确地进行数据的还原处理(恢复)。
以下说明图17。图17所示的第1存储系统10在接收到主机5发出的数据写入命令后,将数据写入指定的逻辑卷110(Org1)(图17所示箭头250)。在写入时存在与该逻辑卷110(Org1)成对的其它存储系统的逻辑卷(在本实施例中为第2存储系统15的逻辑卷(Data1))时,第1存储系统10通过通道适配器50向第2存储系统发出与从主机5接收的相同的数据写入命令。该写入命令由第2存储系统的通道适配器54接收并由通道适配器54中的处理器进行命令接收处理310。
该命令接收处理310在第1实施例的情况下,即第2存储系统15的逻辑卷150(Data1)具有实体的情况下,分析写入命令,将写入数据存储到与指定的逻辑卷的写入目的地对应的高速缓存区域中,同时将更新信息存储在与写入更新信息的日志卷151(JNL1)的写入区域对应的高速缓存中。磁盘适配器80适当地将高速缓存中的数据写入对应的逻辑卷区域。
与此相对,在第2实施例中,第2存储系统15首先参照图16所示的对信息表510判断被指定为写入目的地的第2存储系统15的逻辑卷150(Data1)是否是应当作为具有实体的情况处理的逻辑卷。第2存储系统15确认第2存储系统15(自身)的逻辑卷(Data1)150是虚拟化的逻辑卷。第2存储系统15将该逻辑卷(Data1)150处理为不具有实体,因此将写入数据存储在与逻辑卷(JNL1)151的写入数据区域对应的高速缓存区域中(图17所示箭头1111),进而将该写入命令是否针对逻辑卷(Data1)150的某个区域进行作为更新信息存储在与逻辑卷(JNL1)151的更新信息区域对应的高速缓存区域中(图17所示箭头1111、1120)。磁盘适配器80在适当的定时将数据写入规定与高速缓存中的数据对应的逻辑卷的HDD100中(图17中的箭头1130、1140)。
以下通过图18进行详细说明。第2存储系统15的通道适配器54接收到访问命令后,首先确认该命令是否为写入命令(步骤9210)。如果不是写入命令,而是例如日志读出命令等命令时,进行该处理(步骤9215、9220)。
然后判断接收写入命令的卷是否为正常卷(步骤9240)。卷状态不是正常的情况下,通过维护终端向发出命令的上位装置发出异常报告后结束处理(步骤9230)。然后利用图16的对信息表510判断写入目标逻辑卷是否为虚拟逻辑卷(步骤9250)。是虚拟卷的情况下,进行日志生成处理(步骤9265),处理结束后向上位装置(第1存储系统)发出结束报告(步骤9275)。
不是虚拟卷的情况下,将数据接收到与该逻辑卷对应的高速缓存区域(步骤9260),并向上位装置进行结束报告(步骤9270)。然后判断逻辑卷是否为具有日志组的逻辑卷(步骤9280)。是具有日志组的逻辑卷时,进行日志生成处理(步骤9265)。
这样,通过将表示副逻辑卷是否为虚拟化的虚拟化信息结合到对信息表510中,可以抑制对副逻辑卷的实际写入。从而可以在副逻辑卷不具有实体存储容量的情况下将其定义为远程复制的对象目的地。
(第3实施例)以下说明第3实施例。在第3实施例中说明可以将该虚拟化的副逻辑卷进一步用于其它用途的结构。
图19所示为第3实施例的概念图。在此详细说明与图14所示第2实施例不同之处。为了方便说明,在图14的第2存储系统15中,以第1存储系统10为上位装置,明示出接收数据写入命令的通道适配器56、通过连接线255与主机6连接的通道适配器57、与第3存储系统20连接的通道适配器58来进行说明。图1、图14中当然也存在通道适配器。第1存储系统的逻辑卷(Org1)110与第2存储系统15的逻辑卷150(Data1)形成远程复制对,与第2实施例同样,逻辑卷150(Data1)是虚拟化的。从该逻辑卷150(Data1)向第3存储系统的逻辑卷200(Data2)的数据复制如第2实施例中的说明。
在第3实施例中,还通过通道适配器57与主机6连接。可以从该主机6向逻辑卷150(Data1)写入这一点是第3实施例的显著特征。
以下说明为了可以通过主机6利用逻辑卷150(Data1)的共用存储器70中的结构信息保存方法。结构信息中除了保存前述各表(图3、图7、图16)外,还保存有表示图20所示通道适配器与上位装置之间连接关系的通道适配器连接信息表5000。
第2存储系统15的各通道适配器中的处理器接收到上位装置发出的访问请求(数据读写请求)后,参照图20的连接信息表5000判断与自身连接的上位装置或其它通道适配器。当上位装置中设定有其它存储装置或其它存储装置的通道适配器时,第2存储系统15的通道适配器判断为远程复制,然后根据第2实施例中说明的程序判断其写入目标逻辑卷是否为虚拟化的,如果写入目标逻辑卷不是虚拟化的,则进行写入处理。而如果该逻辑卷是虚拟化的,则如实施例2所示仅进行向日志卷的写入。
通道适配器判断与自身连接的上位装置不是其它存储系统(或存储系统的通道适配器)时,执行向目标逻辑卷的写入处理。该处理通过向与写入目标逻辑卷对应的高速缓存区域写入数据来进行,并且磁盘适配器与向该高速缓存区域的写入非同步地向HDD100中定义的逻辑卷进行写入。这样,存储系统判断是否可以将接收到I/O(访问请求)的数据写入指定的逻辑卷。
存储系统仅能判断逻辑卷是否为虚拟的,无法判断是否可以实际地写入该卷。因此通过判断是哪个通道适配器接收的数据来识别可以实际写入来自哪个上位装置的数据,从而可以由其它上位装置利用虚拟化的逻辑卷。
另外的方法有,当通过远程复制传送的数据集中存在表示是远程复制数据的标识符时,可以利用该标识符限制仅在远程复制的情况下向虚拟卷写入。
在本发明中,以远程复制为例说明虚拟化有效的事例,但在远程复制功能以外,也可以例如使作为SCSI标准命令的E-COPY命令对象的逻辑卷虚拟化。
另外,在图14中,命令接收处理或读写处理320当然也可以在通道适配器56、57、58中进行。而且该处理也可以分配给其它处理器。
(第4实施例)以下说明第4实施例。图21所示为主机5或维护终端上显示的远程复制对生成设定画面的一个例子。在图21的例子中,是用户在画面4000上进行对生成设定的区域4600中的对卷指定显示部4100中设定Vol#1和Vol#2作为对的状态。用户在进行对生成设定时,可以通过进行对生成设定的区域4600中的虚拟Vol指定显示部4300选择是否虚拟化相当于副逻辑卷的Vol#2。在图21的例子中,相当于副逻辑卷的Vol#2为被选择为虚拟化的状态。
表示各存储系统内的各个通道适配器与哪个存储系统或上位装置连接的区域4700中有连接设定部4400,通过该连接设定部可以设定各通道适配器和存储系统的连接关系。另外,通道适配器的连接对象也可以是其它存储系统或上位装置的通道适配器。
在连接设定部的画面示例中,表示通道适配器56、57、58分别与第1存储系统10、主机5、第3存储系统20连接。
如图21所示,表示上位装置使用的卷的区域4800中有逻辑卷使用设定部4500,通过该逻辑卷使用设定部4500可以设定各主机使用的逻辑卷。在逻辑卷使用设定部4500的画面例子中,逻辑卷150设定为由主机6使用。在此必须注意的是,因为逻辑卷150已经由主机6使用,所以在通过对卷指定显示部4100将逻辑卷150指定为Vol#2时,如果不进行虚拟化设定,则无法进行对指定。
根据上面的说明,在用户重视安全性和耐故障性的情况下,选择不虚拟化第2存储系统15的逻辑卷150(Data1),在希望最大限度地利用第2存储系统15的卷容量的情况下,选择虚拟化,从而可以根据目的、费用来构建系统。另外,虚拟化后从第1存储系统10向第3存储系统20进行数据复制的程序与第2实施例相同。
(第5实施例)以下作为第5实施例说明在第1存储系统10中发生故障的情况下,由位于离开第1存储系统10远距离地的第3存储系统20继续业务(故障接管)的情况。
如图22所示,第1存储系统10、主机5、位于距第1存储系统10远距离地的第3存储系统20、位于它们之间的第2存储系统15、主机6、与第3存储系统20连接的主机7通过连接线相连。在第1存储系统中发生任何故障的情况下,由位于远距离地的第3存储系统接替业务进行时存在的问题是,第1存储系统保持的逻辑卷110(ORG1)与第3存储系统20保持的逻辑卷200(Data2)的数据有时不同。即,第1存储系统与第2存储系统之间同步,但因为第2存储系统与第3存储系统之间不同步,因此第1存储系统10的复制对象的数据的复制没有完全复制到第3存储系统20(未到达部分的数据没有反映到逻辑卷200(Data2)中)。
因此,为了由第3存储系统恢复业务,首先要反映未到达部分的数据。在第2、3实施例和选择虚拟化的第4实施例中,第2存储系统15中不具有逻辑卷150(Data1),但因为日志卷151(JNL1)中存在日志数据,因此将该日志数据发送到第3存储系统20,通过图22所示的还原处理350将未达到部分的数据反映到逻辑卷200(Data2)。这样,可以将复制对象数据完全复制到第3存储系统20的逻辑卷200(Data2)中。然后可以由第3存储系统20接收主机7发出的命令。
这样,通过虚拟化第2存储系统的逻辑卷150(Data1)可以降低卷容量并保障耐故障性能。
(第6实施例)作为第6实施例,如图23所示,在由第2存储系统15继续业务的情况下,因为第2存储系统15的逻辑卷150(Data1)是虚拟化的,因此必须在第2存储系统15中新指定逻辑卷。在第2存储系统15中指定逻辑卷后,通过日志读出处理330从第3存储系统20获取日志数据,在第2存储系统15内进行还原处理350。
这样,可以将第1存储系统10的复制源逻辑卷复制到第2存储系统15中新指定的逻辑卷中。然后,第2存储系统15可以接收主机6发出的命令。
以上根据实施例对发明进行了详细说明,但本发明当然不限于上述实施例,在不脱离其要义的范围内可以进行种种变更。
权利要求
1.一种远程复制系统,包括第1存储系统和第2存储系统,所述第1存储系统与信息处理装置相连并与所述信息处理装置之间进行数据收发;所述第2存储系统与所述第1存储系统相连并从所述第1存储系统接收数据,其特征在于,所述第1存储系统具有写入所述信息处理装置所发送的数据的第1存储区域;所述第2存储系统具有以构成所述第1存储系统发送的所述数据的写入目标的逻辑地址定义的虚拟卷,并且具有写入应当写入所述逻辑地址的数据和与该数据有关的更新信息的第2存储区域;应当从所述第1存储系统写入所述第2存储系统的所述逻辑卷中并被发送的所述数据,代替向以所述逻辑地址表示的区域的数据写入,与所述数据的更新信息相结合写入所述第2存储区域。
2.根据权利要求1所述的远程复制系统,其特征在于,所述第2存储区域比所述第1存储区域小。
3.一种远程复制系统,包括第1存储系统和第2存储系统,所述第1存储系统具有参照第1共用存储器控制数据向第1逻辑卷写入的第1存储控制部;所述第2存储系统具有参照第2共用存储器控制数据向第2逻辑卷写入的第2存储控制部,其特征在于,该远程复制系统在所述第1共用存储器内存储规定所述第1逻辑卷和所述第2逻辑卷之间对应关系的对信息;在所述第2共用存储器内存储规定所述第1逻辑卷和所述第2逻辑卷之间对应关系的对信息和规定在出现数据向所述第2逻辑卷写入的情况下存储该数据及该数据更新信息的日志卷的信息;所述第1存储系统在出现向所述第1逻辑卷的第1数据写入时,根据所述第1共用存储器内的对信息,以所述第2逻辑卷为对象,将所述第1数据写入命令发送给所述第2存储控制部;所述第2存储系统在从所述第1存储系统接收到向所述第2逻辑卷的写入命令时,参照所述第2共用存储器,当被规定为所述第2逻辑卷的区域被规定为所述第2逻辑卷以外的逻辑卷区域时,不向所述第2逻辑卷进行第1数据写入,而是将第1数据以及该第1数据的更新信息写入所述日志卷,当被规定为所述第2逻辑卷的区域没有被规定为所述第2逻辑卷以外的逻辑卷时,向所述第2逻辑卷写入第1数据。
4.一种存储系统,包括多个存储装置和存储控制部,所述存储控制部控制从信息处理装置接收数据写入命令后向所述存储装置写入数据,其特征在于,所述存储系统在所述存储装置中具有将用于定义逻辑卷的信息作为构成信息存储的共用存储器;所述共用存储器中定义的第1逻辑卷的所述存储装置中的区域和所述共用存储器中定义的第2逻辑卷的所述存储装置中的区域被定义为至少一部分是重复区域。
5.一种远程复制系统,包括第1存储系统和第2存储系统,所述第1存储系统与信息处理装置相连并与所述信息处理装置之间进行数据收发;所述第2存储系统与所述第1存储系统相连并从所述第1存储系统接收数据,其特征在于,所述第1存储系统具有写入所述信息处理装置所发送的数据的第1存储区域;所述第2存储系统中具有构成所述第1存储系统发送的所述数据的写入目标的逻辑地址,并且具有写入应当写入所述逻辑地址的数据和与该数据有关的更新信息的第2存储区域,在存储区域被分配到所述逻辑地址的情况下,所述数据被写入所述存储区域,所述数据和所述更新信息被写入第2存储区域;在存储区域没有被分配到所述逻辑地址的情况下,所述数据和所述更新信息被写入所述第2存储区域。
6.根据权利要求5所述的远程复制系统,其特征在于,所述第2存储区域比所述第1存储区域小。
7.一种远程复制系统,包括第1存储系统、第2存储系统和第3存储系统,所述第1存储系统与信息处理装置相连并与所述信息处理装置之间进行数据收发,所述第2存储系统与所述第1存储系统相连并从所述第1存储系统接收数据所述第3存储系统与所述第2存储系统相连并从所述第2存储系统接收数据,其特征在于,所述第1存储系统具有写入所述信息处理装置所发送的数据的第1存储区域;所述第2存储系统中具有构成所述第1存储系统发送的所述数据的写入目标的逻辑地址,并且具有写入应当写入所述逻辑地址的数据和与该数据有关的更新信息的第2存储区域;在存储区域被分配到所述逻辑地址的情况下,所述数据被写入所述存储区域,所述数据和所述更新信息被写入第2存储区域;在存储区域没有被分配到所述逻辑地址的情况下,所述数据和所述更新信息被写入所述第2存储区域;所述第3存储系统具有存储从所述第2存储系统内的所述第2存储区域读出的所述数据和与所述数据有关的更新信息的第3存储区域以及作为第1存储区域的复制目的地的第4存储区域;存储在所述第2存储区域中的所述数据和所述更新信息在经过规定时间后从所述第3存储系统被读出并被写入所述第3存储区域,然后可以释放所述第2存储区域,将该区域用于新的存储。
8.根据权利要求7所述的远程复制系统,其特征在于,所述第2和第3存储区域比所述第1和第4存储区域小。
9.一种远程复制系统,包括第1存储系统、第2存储系统和第3存储系统,所述第1存储系统与第1信息处理装置相连并与所述第1信息处理装置之间进行数据收发;所述第2存储系统与第2信息处理装置和所述第1存储系统相连、与所述第2信息处理装置之间进行数据收发并从所述第1存储系统接收数据;所述第3存储系统与所述第2存储系统相连并从所述第2存储系统接收数据,其特征在于,所述第1存储系统具有写入所述信息处理装置所发送的数据的第1存储区域;所述第2存储系统具有所述第1存储系统发送的所述数据的写入目标的逻辑地址,并且具有写入应当写入所述逻辑地址的数据和与该数据有关的更新信息的第2存储区域;所述第3存储系统具有存储从所述第2存储系统内的所述第2存储区域接收的所述数据和与所述数据有关的更新信息的第3存储区域、以及作为第1存储区域的复制目的地的第4存储区域;应当从所述第1存储系统写入所述第2存储系统的前期逻辑地址中并被发送的所述数据与所述更新信息相结合写入所述第2存储区域,所述逻辑地址中为与所述第2信息处理装置之间进行数据收发而分配有存储区域,存储在所述第2存储区域中的所述数据和所述更新信息从所述第3存储系统读出并写入第3存储区域,然后可以释放所述第2存储区域,将该区域用于新的存储。
10.根据权利要求9所述的远程复制系统,其特征在于,所述第2和第3存储区域比所述第1和第4存储区域小。
全文摘要
在必须经由中间的存储系统从第1向第3存储系统传送数据的结构中,存在位于中间的第2存储系统中必须具有冗余逻辑卷的问题。本发明的构成的特征在于,包括与信息处理装置之间进行数据收发的第1存储系统、第2存储系统和第3存储系统,第2存储系统虚拟地具有应写入该数据的第2存储区域,并且具有写入在该存储区域中写入的数据和有关数据的更新信息的第3存储区域。第1存储系统发送的数据不写入第2存储区域,而是作为数据和更新信息写入第3存储区域,该区域中写入的数据和更新信息由第3存储系统读出。
文档编号G06F11/14GK1690973SQ20051000022
公开日2005年11月2日 申请日期2005年1月5日 优先权日2004年4月19日
发明者伊东隆介, 平川裕介, 安积义弘, 加贺隆志 申请人:株式会社日立制作所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1