用于数据存储再同步的系统和方法转让专利

申请号 : CN200810003976.9

文献号 : CN101231652B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : A·比塔尔

申请人 : 国际商业机器公司

摘要 :

提供了一种数据存储再同步系统。该系统包括具有主服务器、主存储单元、主复制代理和主存储控制器的主站点。当从主服务器接收到将数据写入至主存储单元上的主页面的命令时,将数据写入至主存储单元上的主页面。辅站点具有辅服务器、辅存储单元、辅复制代理和辅存储控制器,该辅复制代理用于从主复制代理接收在辅站点写入数据的命令。在从辅复制代理接收到将数据写入到辅存储单元上的辅页面的命令时,将数据写入到辅存储单元上的辅页面,其中辅页面和主页面对应,并且用于比较的装置比较对应页面并在对应页面的页面改变指示符没有匹配时将所述主页面发送到所述辅复制代理,以替换辅站点处的对应辅页面。

权利要求 :

1.一种用于数据存储再同步的系统,包括:

主站点,具有:

主服务器,

主存储单元,

主复制代理,和

主存储控制器,操作为在从所述主服务器接收到将数据写入到所述主存储单元上的一个或更多主页面的命令时,将数据写入到所述主存储单元上的一个或更多主页面;

辅站点,具有:

辅服务器,

辅存储单元,

辅复制代理,操作为从所述主复制代理接收在所述辅站点写入所述数据的命令,以及辅存储控制器,操作为在从所述辅复制代理接收到将所述数据写入到所述辅站点的命令时,将数据写入到所述辅存储单元上的一个或更多辅页面,其中所述辅页面对应于所述主页面;

其中,所述主存储控制器或所述主复制代理还操作为比较所述主页面和对应的辅页面的页面改变指示符,在所述主页面的页面改变指示符和对应的辅页面的页面改变指示符没有匹配时,将所述主页面发送至所述辅复制代理,用于替换在所述辅站点处的所述对应辅页面,其中相同页面不重新使用相同的页面改变指示符值。

2.根据权利要求1所述的系统,其中在将数据写入到多个主页面中任何页面的不同情况下,将不同的页面改变指示符值写入到所述多个主页面中的任何页面。

3.根据权利要求1所述的系统,其中DB2事务的日志序列号用于所述页面改变指示符。

4.根据权利要求1所述的系统,其中所述辅存储控制器操作为从所述辅页面中检索页面改变指示符并将所述页面改变指示符传送至所述主存储控制器,其中所述主存储控制器操作为对照所述对应主页面的页面改变指示符来检查所述辅存储控制器传送给主存储控制器的检索到的页面改变指示符。

5.根据权利要采1所述的系统,其中所述页面改变指示符是顺序的,其中所述辅存储控制器或所述辅复制代理操作为发送在所述辅页面上找到的在顺序上最后的页面改变指示符,并且其中所述主存储控制器或主复制代理操作为在主页面的页面改变指示符在顺序上比所述最后的页面改变指示符更靠后时,将所述主页面发送至所述辅复制代理,用于替换在所述辅站点处的所述对应辅页面。

6.根据权利要求1所述的系统,其中所述辅存储控制器操作为发送与所述辅存储单元上存储的所述辅页面关联的页面改变指示符的列表,该列表包括与所述页面改变指示符中给定指示符关联的所述辅页面中每个页面的唯一标识符,并且其中所述主存储控制器操作为对照所述对应主页面的页面改变指示符和唯一标识符来检查辅存储控制器发送给主存储控制器的页面改变指示符和唯一标识符,以及只将所述主页面中先前没有被所述辅存储控制器接收的那些发送给所述辅复制代理。

7.根据权利要求1所述的系统,其中所述辅复制代理操作为从所述辅页面中检索页面改变指示符并将所述页面改变指示符传送至所述主复制代理,其中所述主复制代理操作为对照所述对应主页面的页面改变指示符来检查辅复制代理发送给主复制代理的页面改变指示符。

8.根据权利要求1所述的系统,其中所述页面改变指示符根据两个或更多标识符的组形成。

9.一种用于数据存储再同步的方法,该方法包括:

将数据写入到主存储单元上的主页面;

将所述数据写入到辅存储单元上的辅页面,其中所述辅页面对应于所述主页面;

比较所述主页面和对应的辅页面的页面改变指示符;以及

在所述主页面的页面改变指示符和对应的辅页面的页面改变指示符没有匹配时,将所述主页面复制到所述辅存储单元,其中相同页面不重新使用相同的页面改变指示符值。

10.根据权利要求9所述的方法,进一步包括在将数据写入到多个主页面中任何页面的不同情况下,将不同的页面改变指示符值写入到所述多个主页面中的任何页面。

11.根据权利要求9所述的方法,进一步包括使用DB2事务日志序列号来用于所述页面改变指示符。

12.根据权利要求9所述的方法,进一步包括从所述辅页面中检索页面改变指示符,以及对照所述对应主页面的页面改变指示符来比较所述检索的页面改变指示符。

13.根据权利要求9所述的方法,进一步包括,对页面改变指示符进行排序,确定在多个辅页面上找到的在顺序上最后的页面改变指示符,并将多个主页面中其页面改变指示符在顺序上比所述最后的页面改变指示符更靠后的任何页面从所述主存储单元复制到所述辅存储单元。

14.根据权利要求9所述的方法,进一步包括:对页面改变指示符进行排序,编制与存储在所述辅存储单元上的多个辅页面关联的所述页面改变指示符的列表,该列表包括与所述页面改变指示符中给定指示符关联的所述辅页面中每个页面的唯一标识符;对照多个对应主页面中任何页面的页面改变指示符和唯一标识符来检查所述页面改变指示符和唯一标识符;以及将先前未由所述辅存储单元接收到的所述主页面中的任何页面复制到所述辅存储单元。

15.根据权利要求9所述的方法,进一步包括:从多个辅页面中检索多个页面改变指示符,并且对照多个对应主页面的页面改变指示符来检查从辅页面中检索到的多个页面改变指示符。

16.根据权利要求9所述的方法,进一步包括根据两个或更多标识符的组来形成所述页面改变指示符。

说明书 :

用于数据存储再同步的系统和方法

技术领域

[0001] 本发明总体上涉及镜像数据存储管理,并且更具体地涉及镜像存储的再同步。

背景技术

[0002] 数据存储系统通常配置用以维持主数据存储设备(下文中称为“主设备”)的拷贝或者“镜像”,在同步过程期间将写入至主设备的数据写入到辅数据存储设备(下文中称为“辅设备”)。当在同步过程中有间断时,诸如在存在与辅设备的通信丢失的情况下,通常数据继续被写入到主设备,从而导致主设备和辅设备之间的同步丢失。一旦重新建立了与辅设备的通信,典型地启动再同步过程以使辅设备处于最新状态。在主存储控制器记住了在主设备上哪些数据已经改变的情况下可以执行再同步,仅仅需要将改变的数据写入到辅设备中。这可以通过维持一个位图来实现,该位图表示从与辅设备的通信丢失起,在向其写入的主设备上数据发生改变的位置,或者通过计算和比较主设备和辅设备上的数据拷贝的签名来实现。然而,在某些主设备故障期间,这种位图可能丢失或者被破坏(在某些存储平台上,不能维持位图),而签名计算和比较是处理密集且耗时的,并且还是概率性的,这都可能导致数据丢失。可替代的方式是,可以执行完整的再同步,在这种情况下,将主设备上的所有数据都复制到辅设备。遗憾的是,该方案甚至更加耗时,并且通常导致对相同数据进行不必要的复制。
[0003] 因此,允许快速再同步而不会丢失数据的存储再同步机制将是有利的。

发明内容

[0004] 在本发明的实施例中,本发明是一种用于镜像存储的再同步的系统和方法。
[0005] 在本发明的一个方面中,提供了一种用于数据存储再同步的系统,包括:主站点,其具有主服务器、主存储单元、主复制代理以及主存储控制器,所述主存储控制器操作为在从主服务器接收到将数据写入到所述主存储单元上的一个或更多主页面的命令时,将数据写入到所述主存储单元中的一个或更多主页面;辅站点,其具有辅服务器、辅存储单元、辅复制代理以及辅存储控制器,所述辅复制代理操作为从主复制代理接收在所述辅站点写入数据的命令,所述辅存储控制器操作为在从所述辅复制代理接收到将数据写入到所述辅存储单元上的一个或更多辅页面的命令时,将数据写入到所述辅存储单元上的一个或更多辅页面,其中辅页面对应于所述主页面;以及用于比较主页面和辅页面的对应页面的装置,其中该装置操作为在对应页面的页面改变指示符没有匹配时,将主页面发送至辅复制代理,用于替换在辅站点处的对应辅页面。
[0006] 在本发明的另一方面中,提供了一种用于数据存储再同步的方法。所述方法包括:将数据写入到主存储单元上的主页面;将该数据写入到辅存储单元上的辅页面,其中所述辅页面对应于所述主页面;比较对应的主页面和辅页面;以及在对应页面的页面改变指示符没有匹配时,将所述主页面复制到所述辅存储单元。
[0007] 在本发明的另一方面中,提供了一种用于镜像存储分析的方法。该方法包括:创建数据存储卷的两个存储映像,比较两个映像上对应页面上的页面改变指示符,以及提供指示对应页面的页面改变指示符没有匹配的指示符。
[0008] 在本发明的另一方面中,提供了一种用于增量存储备份的方法,所述方法包括:创建数据存储卷的存储映像;比较数据存储卷的页面上的页面改变指示符与该映像中对应页面的页面改变指示符;以及在页面改变指示符没有匹配时将数据存储卷的页面存储在不同的备份或者映像中。
[0009] 应当理解,贯穿说明书和权利要求书的术语“页面”还可以用来指代一个或更多TM“数据块”的分组,诸如在DB2 数据库系统中所使用的,或者指代以意在使至海量存储器的写入数量最少的方式从主存储器交换到海量存储设备的任何数据单元。

附图说明

[0010] 通过下面结合附图的详细描述,将会更加全面地了解和理解本发明。在附图中:
[0011] 图1示出了根据本发明实施例构造和操作的用于数据存储再同步的系统的简化概念图;
[0012] 图2示出了根据本发明实施例构造和操作的数据页面的简化概念图;
[0013] 图3示出了根据本发明实施例操作的图1系统的示例性操作方法的简化流程图;
[0014] 图4示出了根据本发明实施例操作的镜像存储分析方法的简化流程图;和[0015] 图5示出了根据本发明实施例操作的增量存储备份方法的简化流程图。

具体实施方式

[0016] 现在参考图1,该图示出了根据本发明实施例构造和操作的用于数据存储再同步TM的系统的简化概念图。在图1系统的正常操作期间,服务器100,诸如在主站点操作的DB2主机,命令主存储控制器102A将数据写入到主存储单元102B上的一个或更多页面,该主存储单元102B可以包括一个或更多物理数据盘或者其他存储设备。然后,服务器100或者主存储控制器102A与对主存储单元102B的写入同步地或者异步地命令复制代理(RA)104将相同的页面写入发送到诸如可以位于辅站点的RA 106,其中复制代理104可以驻留在主存储控制器102A内,或者可以与其分开。然后,RA 106命令辅存储控制器108A将数据写入到辅存储单元108B的对应页面。
[0017] 另外参考图2,该图是根据本发明的实施例构造和操作的数据页面的简化概念图,数据页面200典型地包括头部202和数据区域204。头部202典型包括页面改变指示符208,页面改变指示符的值在每次将数据写入到页面200时改变,优选地是这样,即相同页TM
面决不会重新使用相同的页面改变指示符值。因此,例如在DB2 中,当与事务相关的数据被写入到一个或更多页面时,事务的日志序列号(LSN)可以用于页面改变指示符208。应当理解,其他应用可以使用其他指示符或者指示符组来用于页面改变指示符208,以指示数据已经写入到页面中。
[0018] 服务器100和110上诸如DB2TM或者OracleTM的对应数据管理应用中的每一个都通常维持有指示它们的数据页面存储位置的映射206。尽管对应的主页面和辅页面可以映射到主站点和辅站点上不同的相关存储位置,但每个页面仍在每个映射206内被唯一标识TM(例如在DB2 中每个页面具有序列号),其中在服务器100和110上相同映射的页面共享相同唯一标识符。
[0019] 再次参考图1,并另外参考图3,图3示出了根据本发明实施例操作的图1的系统的示例性操作方法的简化流程图,服务器100及其对应的辅服务器110分别为主控制器102A以及辅控制器108A提供指示每个页面位于其各自存储单元的何处以及每个页面内页面改变指示符208的偏移或者其他位置指示符的页面映射。这可以在服务器100和110的配置期间和/或在再同步期间执行。诸如在RA 104或者RA 104到RA 106的通信信道故障并恢复之后,应该需要主设备102B与辅设备108B的再同步,可以诸如通过主设备102B或者通过任何已知的存储管理应用来启动再同步,因此辅控制器108A从辅设备108B上存储的页面中检索页面改变指示符,并将每个页面的唯一标识符及其页面改变指示符传送给主控制器102A,主控制器102A对照主设备102B上存储的对应页面的页面改变指示符来检查接收到的页面改变指示符。在对应页面的页面改变指示符没有匹配时,主控制器102A指示RA 104向RA 106发送对应的主页面,RA 106指示辅控制器108A利用从RA 104接收的页面来替换辅设备108B上的对应辅页面。
[0020] 在服务器100为顺序事务生成顺序的页面改变指示符时,辅控制器108A不需将来自辅设备108B上存储的页面的所有页面改变指示符发送给主控制器102A。辅控制器108A而是可以发送与存储在辅设备108B上的页面关联的页面改变指示符的列表,该列表包括与给定页面改变指示符关联的每个页面的唯一标识符。然后,主控制器102A仅需要复制那些具有更靠后序列号的页面或者没有作为已经接收的页面改变指示符的一部分由辅控制器108A接收到的页面。在服务器100、主控制器102A和/或RA 104被配置成使得除非作为前面事务一部分而修改的所有页面都已经发送到辅设备,否则不会将作为事务一部分而修改的页面从主设备发送到辅设备的情况下,辅控制器108A仅需发送它接收到的最后的顺序页面改变指示符。主控制器102A然后仅需要复制这些具有更靠后序列号的页面。
[0021] 应当理解,主设备102B和辅设备108B上对应页面的页面改变指示符的比较可以通过RA 104而不是主控制器102A如下执行。主RA 104以及辅RA 106分别从服务器100和110接收页面映射。然后,辅RA 106从辅设备108B上存储的页面中检索页面改变指示符,并将其发送到主RA 104,主RA 104将这些页面改变指示符与主设备102B上存储的对应页面的页面改变指示符进行比较,并将主设备102B上存储的其页面改变指示符没有与对应辅页面的页面改变指示符匹配的任何主页面发送至辅RA 106。然后,辅RA 106命令辅控制器108A利用从RA 104接收的页面来替换辅设备108B上对应的页面。
[0022] 现在参考图4,该图示出了根据本发明实施例操作的镜像存储分析方法的简化流程图。在图4的方法中,两个存储映像,诸如用作数据备份的时间点(point-in-time)拷贝,由一个或更多数据存储卷构成。然后使用每个映像中的数据页面的映射通过检查在两个映像上的对应页面上页面改变指示符是否匹配,来比较两个映像。然后可以提供指示页面改变指示符匹配和/或不匹配的指示符,诸如通过设置位图中表示两个映像中页面的位,例如指示两个映像之间页面不同的设置位。位图可以根据请求而显示给用户,诸如可以用于指示何时已经发生了改变,因此需要同步。
[0023] 现在参考图5,该图示出了根据本发明实施例操作的增量存储备份方法的简化流程图。在图5的方法中,一个存储映像,诸如用作数据备份的时间点拷贝,由一个或更多数据存储卷构成。在预定时间之后,使用数据存储卷上和映像中的数据页面的映射来比较数据存储卷上每个页面的页面改变指示符与映像中其对应页面的页面改变指示符。在页面改变指示符没有匹配的情况下,卷页面可以存储在不同的备份或映像中。
[0024] 应当理解,此处描述的方法的任何一个或更多步骤可以省略或者以与示出的不同的顺序来实施,而不脱离本发明的真实精神和范围。
[0025] 此处公开的方法和装置可能已经参考或者可能没有参考特定的计算机软件或者硬件来描述,但是应该理解,此处描述的方法和装置可以使用传统技术在计算机硬件或者软件中容易地实现。
[0026] 虽然已经参考一个或更多特定实施例对本发明进行了描述,但是该描述旨在整体上来说明本发明,而不应理解为使本发明局限在示出的实施例。应当理解,本领域技术人员可以想到各种修改,虽然在此处没有具体示出,然而这些修改在本发明的真实精神和范围之内。