CN101401073B - 跨存储子系统的一致更新 - Google Patents
跨存储子系统的一致更新 Download PDFInfo
- Publication number
- CN101401073B CN101401073B CN2007800092247A CN200780009224A CN101401073B CN 101401073 B CN101401073 B CN 101401073B CN 2007800092247 A CN2007800092247 A CN 2007800092247A CN 200780009224 A CN200780009224 A CN 200780009224A CN 101401073 B CN101401073 B CN 101401073B
- Authority
- CN
- China
- Prior art keywords
- storage subsystem
- auxiliary control
- control unit
- main control
- secondary storage
- 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
- 238000000034 method Methods 0.000 claims abstract description 46
- 230000001360 synchronised effect Effects 0.000 claims abstract description 23
- 230000008569 process Effects 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 8
- 238000012423 maintenance Methods 0.000 claims description 5
- 230000015572 biosynthetic process Effects 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 235000019580 granularity Nutrition 0.000 description 5
- 230000000712 assembly Effects 0.000 description 4
- 238000000429 assembly Methods 0.000 description 4
- 230000005055 memory storage Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000005096 rolling process Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1461—Backup scheduling policy
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了一种方法、系统和制品,其中主控制单元向多个辅助控制单元发送选定时间。定期将所述主控制单元和所述辅助控制单元处的时钟与时间服务器同步。所述主控制单元和所述多个辅助控制单元在所述选定时间一致地更新可连接到所述多个辅助控制单元的辅助存储子系统。
Description
技术领域
本发明涉及一种用于跨存储子系统进行一致更新的方法、系统和制品。
背景技术
信息技术系统(包括存储子系统)可能需要保护以免受站点灾难或故障的影响。此外,信息技术系统可能需要数据迁移、数据备份或数据复制的功能。灾难或故障恢复、数据迁移、数据备份和数据复制的实现可以包括镜像或复制存储系统中的数据。企业存储服务器(ESS)可以包括一个或多个连接到存储设备(包括高容量可伸缩存储设备、独立磁盘冗余阵列(RAID)等)的处理器。企业存储服务器可以包括复制功能,以便在本地(即,在同一站点上ESS内)复制数据或在远程复制数据(即,将数据复制到单独的远程站点ESS)。
在某些企业存储服务器中,可以存在提供数据的即时复制的复制功能。实现可以在企业存储服务器内的存储子系统中的一组本地/源卷和对应的一组远程/目标卷之间复制数据。复制功能可以通过在最小程度中断应用的情况下创建数据的物理即时副本来为ESS卷提供即时复制,并使得可以基本上立即同时访问源和目标副本。
一致性组是需要以相互一致的状态保留的一组存储卷。为了提供非限制的实例,第一复制命令将卷A1复制到B1而第二复制命令将卷A2复制到B2。要求卷B1和B2应代表特定时刻卷A1和A2中的数据集的一致状态。在对卷的一系列特定操作中,可以出现以下一组相关写入操作(其中第二操作在第一操作之后发生):
1.写入卷A1上的数据集(数据已更新)
2.写入卷A2上的数据集(数据已更新)
将卷A1和A2分别复制到卷B1和B2时,以下一系列操作的非限制实例将相对于卷A1、A2在卷B1、B2中产生不一致状态。
1.将卷A1复制到卷B1
2.写入卷A1上的数据集(数据已更新)
3.写入卷A2上的数据集(数据已更新)
4.将卷A2复制到卷B2
当所有复制操作结束时,即第四操作结束时,卷B2包含卷A2的数据更新而卷B1不包含卷A1的数据更新。一组卷B1、B2相对于一组卷A1、A2处于不一致状态。使用卷B1、B2的应用不能从存储在卷B1、B2中的备份副本恢复。存储在连接到计算机的盘中的卷可以通过生成该盘的映像来进行备份。
某些系统将一组源卷复制到存储子系统中的一组目标卷,同时在存储子系统中以相互一致的状态维护所述一组源卷和目标卷中的数据。以一致状态维护存储子系统中的源和目标卷确保了没有乱序相关写入被复制到一致性组内的存储子系统中的任何目标卷。
发明内容
提供了一种方法、系统和制品,其中主控制单元向多个辅助控制单元发送选定时间。定期将所述主控制单元和所述辅助控制单元处的时钟与时间服务器同步。所述主控制单元和所述多个辅助控制单元在所述选定时间一致地更新可连接到所述多个辅助控制单元的辅助存储子系统。
在其他实施例中,在所述选定时间一致地更新所述辅助存储子系统以响应来自所述主控制单元的单个命令,并且其中所述选定时间与用于一致地更新所述辅助存储子系统的一致性组关联。
在其他实施例中,所述主控制单元接收来自一个或多个连接到所述主控制单元的主机应用的更新。所述主控制单元将所述更新存储在至少一个连接到所述主控制单元的主存储子系统中。生成对应于所述更新的一致性组,其中所述一致性组用于一致地更新连接到所述多个辅助控制单元的所述辅助存储子系统。
在其他实施例中,所述多个辅助控制单元接收来自所述主控制单元的所述选定时间。所述多个辅助控制单元启动用于在所述选定时间一致地更新连接到所述多个辅助控制单元的所述辅助存储子系统的过程。所述多个辅助控制单元接收来自所述主控制单元的请求以完成所启动的用于一致地更新所述辅助存储子系统的过程。所述多个辅助控制单元完成所述用于一致地更新所述辅助存储子系统的过程,以响应确定可以一致地更新所述辅助存储子系统。向所述主控制单元发送错误指示,以响应确定不能一致地更新所述辅助存储子系统。
在其他实施例中,所述主控制单元判定所述多个辅助控制单元中的每个辅助控制单元是否已启动所述用于在所述选定时间一致地更新连接到所述多个辅助控制单元的所述存储子系统的过程。所述主控制单元请求所述多个辅助控制单元中的每个辅助控制单元完成所述用于一致地更新所述辅助存储子系统的过程。
在其他实施例中,在一致地更新所述辅助存储子系统时,写入输入/输出(I/O)操作在一致性组形成期间并未变得繁忙,并且其中以一致的状态维护源和目标卷,以便没有乱序相关写入被复制到一致性组内的存储子系统中的任何目标卷。
优选地,提供了一种与时间服务器通信的系统,所述系统包括:连接到所述时间服务器的主控制单元;连接到所述时间服务器的多个辅助控制单元;连接到所述多个辅助控制单元的辅助存储子系统;存储器;以及连接到所述存储器的处理器,其中所述处理器执行以下操作:(i)所述主控制单元向所述多个辅助控制单元发送选定时间;(ii)定期将所述主控制单元和所述辅助控制单元处的时钟与所述时间服务器同步;以及(iii)所述主控制单元和所述多个辅助控制单元在所述选定时间一致地更新连接到所述多个辅助控制单元的所述辅助存储子系统。
更优选地,提供了一种用于控制主控制单元和多个辅助控制单元的制品,其中所述主控制单元和所述多个辅助控制单元与时间服务器通信,其中辅助存储子系统连接到所述辅助控制单元,并且其中所述制品能够导致操作,所述操作包括:由所述主控制单元向所述多个辅助控制单元发送选定时间;定期将所述主控制单元和所述辅助控制单元处的时钟与所述时间服务器同步;以及由所述主控制单元和所述多个辅助控制单元在所述选定时间一致地更新连接到所述多个辅助控制单元的辅助存储子系统。
更优选地,提供了一种用于部署计算基础结构的方法,包括将计算机可读代码集成到计算系统,其中与所述计算系统结合的代码能够执行以下操作:由主控制单元向多个辅助控制单元发送选定时间;定期将所述主控制单元和所述辅助控制单元处的时钟与时间服务器同步;以及由所述主控制单元和所述多个辅助控制单元在所述选定时间一致地更新连接到所述多个辅助控制单元的辅助存储子系统。
附图说明
现在参考附图,其中相同的标号表示相应的部件,这些附图是:
图1示出了根据特定实施例的计算环境的方块图;
图2示出了根据特定实施例的用于执行定期时间同步的操作和用于发送应一致更新存储子系统的选定时间的操作;
图3示出了根据特定实施例的在主控制单元和多个辅助控制单元处执行的操作;
图4示出了计算系统的体系结构,其中在特定实施例中可以根据计算系统的体系结构实现图1的计算环境的计算平台。
具体实施方式
在以下说明中,参考了形成本说明书一部分并且示出若干实施例的附图。要理解的是,可以使用其他实施例并且可以做出结构和操作的更改。
用于创建一致性组IBM的全局镜像的数据一致方法使用“数据一致”方法来生成一致性组。在“数据一致”方法中,主控制单元向辅助控制单元发出命令,而辅助控制单元等待并对从主控制单元接收的命令做出反应。为了启动一致性组,主控制单元向辅助控制单元发送命令以暂停输入/输出(I/O)操作。仅在最后一个辅助控制单元完成I/O操作暂停之后,主控制单元才向辅助控制单元发送命令以允许写入I/O完成。在此I/O暂停期间,写入主控制单元的主机应用可能经历较长的响应时间。此外,由于I/O命令暂停不会同时针对所有辅助控制单元发生,因此单个公共时间戳不会与一致性组关联。
在“数据一致”方法中,跨卷的一致性协调可能需要跨一致性组中的所有卷暂停写入I/O,并且写入I/O暂停可能影响应用的执行。此外,无法提供跨一致性组中的所有卷有效的单个准确时间戳。此外,在“暂停”窗口期间主控制单元与所有辅助控制协调。通过暂停所有写入I/O以确保创建一致性组,将限制可以参与存储系统的辅助控制单元的数量。辅助控制单元的数量越多,应用影响时间就越长。例如,在特定非限制实例中,当只有两个辅助控制单元分享主控制单元时,应用可能被影响1毫秒或更长。
用于创建一致性组IBM的全局镜像和其他系统的时间一致方法可能使用数据一致模型来创建一致性组,因为跨控制单元可能没有任何准确的时间参考。本发明的特定实施例可以使用各种机制将所有内部存储控制时钟与服务器时钟同步,以提供足够的粒度以便为数据提供时间一致性。例如,使用网络时间协议的特定网络时间服务器可以用于以1毫秒或更小的粒度跨服务器同步时间。
假设可以针对提供基于存储的数据复制解决方案所需的粒度的多个系统使用公共时钟,以管理相关写入I/O并构建一致性组,特定实施例使用公共时钟和时间同步以管理相关写入I/O并构建一致性组。
例如,特定实施例尝试通过时间戳跨所有控制器和存储子系统来管理相关I/O序列。但是,服务器和存储子系统时钟可能漂移,因此特定实施例确保存储子系统以小于执行相关I/O序列所用时间的粒度协调其时间并与公共时钟源同步。相关I/O序列的一个非限制实例是通过三个相关I/O操作按如下方式发生的数据库表更新:
I/O操作1:更新指示数据库表更新要发生的数据库日志卷。
I/O操作2:更新数据库表。
I/O操作3:更新指示I/O操作2已完成的数据库表。
数据库日志和数据库表可以在物理上位于连接到相同或不同存储子系统的相同或不同卷上。基于时间形成一致性组,以便在主和辅助存储子系统之间,如果用户尝试在辅助存储子系统处确定如果I/O操作1和I/O操作3都在辅助卷上完成,则I/O操作2也必须在辅助卷上完成。如果存储子系统没有以小于I/O操作时间的粒度被同步到公共时钟,则此I/O序列可能会在存储子系统中的辅助目标卷上乱序完成,因为所使用的异步数据复制技术与跨主存储子系统发出I/O的数据库应用是异步的。例如,如果I/O操作1和I/O操作3的结果位于不包含I/O操作2的结果的目标卷上,将出现不可检测的数据完整性问题,因为数据库日志将指示数据库表中的数据正确,而数据库表将具有降级(down level)数据。
跨各种服务器的基于时间的一致性使本发明的特定实施例能够使用公共时间戳来构建和管理一致性组。这允许避免诸如IBM全局镜像之类的异步数据复制机制采用的数据冻结技术。数据冻结技术要求所有写入I/O被动态延迟,即在一致性组形成期间忙碌,以确保跨存储卷和存储子系统的I/O一致性。
图1示出了根据特定实施例的计算环境100的方块图。一个或多个主控制单元102连接到一个或多个主机104以及一个或多个辅助控制单元106a、106b、...、106n。主控制单元102到辅助控制单元106a...106n的连接可以通过网络108,并且主控制单元102和辅助控制单元106a...106n到主机104的连接也可以通过网络108。计算环境100的各种组件的连接除了通过网络连接或替代网络连接,也可以通过直接连接。虽然图1中示出了单个网络108,但是其他网络也可以提供计算环境100的各种组件之间的连接性。与辅助控制单元106a...106n关联的主控制单元102可以允许数据复制,其中所有数据被一致地存储在主控制单元102和辅助控制单元106a...106n中。时间服务器112连接到网络108,并且时间服务器112可用于同步主控制单元102和辅助控制单元106a...106n的时间。时间服务器112包括生成由时间服务器112提供的时间的时钟114。在特定实施例中,时间服务器112可以是网络时间服务器。
主控制单元102、辅助控制单元106a...106n和主机104均可以包括计算平台,后者可以包括任何适当的计算平台,包括当前本领域公知的那些平台,例如个人计算机、工作站、大型机、中型计算机、网络家电、掌上计算机、电话设备、刀片计算机、手持式计算机等。诸如主控制单元102之类的主控制单元可以被称为主单元,而诸如辅助控制单元106a之类的辅助控制单元可以被称为辅助单元。
主控制单元102包括主应用116、一个或多个被称为主存储子系统118的存储子系统和时钟120。主存储子系统118可以包括存储数据的存储卷。时钟120表示主控制单元102处的时间。可以根据由时钟120提供的时间来为存储在主存储子系统116中的数据标记时间戳。主控制单元102中的主应用116可以定期将主控制单元102的时钟120与时间服务器112的时钟114同步,以便在同步之后将主控制单元102的时钟120设置为由时间服务器112的时钟114指示的时间。
多个辅助控制单元106a、106b、...、106n包括辅助应用122a、122b、...、122n、辅助存储子系统124a、124b、...、124n以及时钟126a、126b、...、126n。例如,辅助控制单元106a包括辅助应用122a、辅助存储子系统124a和时钟126a。诸如辅助应用122a之类的辅助应用定期将辅助控制单元的时钟(例如辅助控制单元106a的时钟126a)与时间服务器112的时钟114同步。辅助存储子系统124a...124n可以包括存储数据的存储卷。
主机104可以包括一个或多个主机应用128,所述主机应用可以向主控制单元102和辅助控制单元106a...106n发送命令以执行诸如输入/输出(I/O)操作之类的各种操作。
因此,图1示出了其中主控制单元102和辅助控制单元106a...106n的时钟120、126a...126n与时间服务器112的时钟114保持同步的特定实施例,其中时间服务器112可以是网络时间服务器。在特定实施例中,可以通过使用网络时间协议来执行时钟120、126a...126n与时钟114的同步。
图2示出了根据特定实施例的在计算环境100中实现的用于执行定期时间同步和发送应一致更新存储子系统的选定时间的操作。
定期时间同步200由主控制单元102中的主应用116和辅助控制单元106a、106b、...、106n中的辅助应用122a、122b、...、122n使用时间服务器112执行。可以通过使用网络时间协议来执行定期时间同步200。在特定实施例中,全球定位系统(GPS)可以被用作准确时间源,并且GPS可以被用作参考时钟。
在特定实施例中,主控制单元102中的主应用116向辅助控制单元106a...106n中的每个辅助应用122a...122n发送选定时间202,以便当辅助控制单元106a...106n中的对应时钟126a...126n指示选定时间时,一致地更新辅助存储子系统124a...124n。例如,主应用116可以在3PM向每个辅助应用122a...122n发送选定时间3:01PM。辅助应用122a...122n监视时间3:01PM并在到达时间3:01PM时启动在3:01PM一致地更新辅助存储子系统124a...124n的过程。在主应用116确定所有辅助应用122a...122n已启动一致地更新辅助存储子系统124a...124n的过程之后,辅助应用122a...122n一致地更新辅助存储子系统124a...124n。
因此,图2示出了其中主控制单元102和辅助控制单元106a...106n定期将主控制单元102和辅助控制单元106a...106n处的时钟120、126a...126n与时间服务器112同步的特定实施例。主控制单元102向多个辅助控制单元106a...106n发送选定时间202,其中选定时间202是将来时间。辅助控制单元106a...106n在选定时间一致地更新存储在辅助存储子系统124a...124n中的数据。
图3示出了根据特定实施例的在主控制单元102和多个辅助控制单元106a...106n处执行的操作。所述操作可以在包括在主控制单元102中的主应用116以及包括在辅助控制单元106a...106n中的辅助应用122a...122n实现。由主控制单元102执行的操作被称为主应用操作300,而由任何辅助控制单元106a...106n执行的操作被称为辅助应用操作302。
控制在方块304和306开始,其中在方块304,主控制单元102中的主应用116定期将主控制单元102中的时钟120与时间服务器112的时钟114同步,并且其中在方块306,每个辅助控制单元中的辅助应用定期将相应时钟与时间服务器112同步。例如,辅助应用122a可以将辅助控制单元106a的时钟126a与时间服务器112的时钟114同步。
从方块304,控制继续到方块308,其中主应用116选择应在多个辅助控制单元106a...106n中发生数据一致更新(即,通过一致性组的一致复制)的将来时间。主应用116(在方块310)向多个辅助控制单元106a...106n发送选定时间202。向辅助控制单元106a...106n发送选定时间202之后,主应用116(在方块312)继续接收来自主机应用128的数据。
每个辅助控制单元106a...106n中的辅助应用122a...122n(在方块314)接收来自主控制单元102的选定时间202,其中已在方块310由主控制单元102中的主应用116发送选定时间202。
每个辅助控制单元106a...106n中的辅助应用122a...122n启动用于在选定时间202一致地更新辅助存储子系统124a...124n的过程。但是,除非辅助应用122a...122n从主应用收到所有辅助应用122a...122n已启动用于一致地更新辅助存储子系统124a...124n的过程的确认,否则不会执行辅助存储子系统124a...124n的卷的一致更新。
控制从方块312继续到方块318,其中主应用116判定所有辅助控制单元106a...106n是否均已启动用于一致地更新辅助存储子系统124a...124n的过程。如果是,则主应用116(在方块320)请求多个辅助控制单元106a...106n完成辅助存储子系统124a...124n的一致更新。如果否,则控制返回方块312,其中主应用116继续接收来自主机应用128的数据。
每个辅助控制单元106a...106n中的辅助应用122a...122n(在方块322)接收来自主应用116的请求以完成辅助存储子系统124a...124n的一致更新。每个辅助控制单元106a...106n中的辅助应用122a...122n(在方块324)判定是否可以进行一致更新。如果不可以进行一致更新,则(在方块326)向主应用116返回错误。如果(在方块324)判定可以进行一致更新,则控制继续到方块328,其中每个辅助控制单元106a...106n中的辅助应用122a...122n完成用于一致更新辅助存储子系统124a...124n的过程。可以通过将源存储卷复制到存储在辅助存储子系统中的目标存储卷,来完成用于一致更新辅助存储子系统124a...124n的过程。
在本发明的特定实施例中,在一致更新辅助存储子系统时,写入输入/输出(I/O)操作在一致性组形成期间并未变得忙碌,并且以一致的状态维护源和目标卷,以便没有乱序相关写入被复制到一致性组内的存储子系统中的任何目标卷。
特定实施例使用时间一致方法来更新一致性组,而不是使用纯粹的数据一致方法来更新一致性组。不必跨一致性组中的所有卷暂停I/O操作。由于不必暂停I/O操作,因此在特定实施例中,可以进行参与的存储子系统数未被限制为可以由主控制单元暂停以防止对应用响应时间产生不可接受影响的辅助控制单元的最大数量。在本发明的特定实施例中,将单个时间与每个一致性组关联。
用于管理一致更新以实现数据复制目的的特定实施例也适用于间接数据复制解决方案,如在任意时刻重新创建“数据副本”时还保持写入I/O的相关顺序的连续数据保护(CDP)日记。如果引入CDP设备以捕获和管理跨目标辅助存储子系统的更新,则公共时钟模式将跨CDP设备的集合工作。
其他实施例详细信息
所述技术可以实现为包括软件、固件、微码、硬件和/或它们的任意组合的方法、装置或制品。在此使用的术语“制品”指在介质中实现的代码或逻辑,其中此类介质可以包括硬件逻辑[例如,集成电路芯片、可编程门阵列(PGA)、专用集成电路(ASIC)等]或计算机可读介质,如磁存储介质(例如,硬盘驱动器、软盘、磁带等)、光存储装置(CD-ROM、光盘等)、易失性和非易失性存储设备[例如,电可擦除可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、固件、可编程逻辑等]。由处理器来存取和执行所述计算机可读介质中的代码。其中编码所述代码或逻辑的介质还可以包括通过空间传播的传输信号或诸如光纤、铜线之类的传输介质。其中编码所述代码或逻辑的传输信号还可以包括无线信号、卫星传输、无线电波、红外线信号、蓝牙等。其中编码所述代码或逻辑的传输信号能够通过发射站发射并且通过接收站接收,其中在传输信号中编码的代码或逻辑可以被解码并存储在硬件或接收和发射站或设备处的计算机可读介质中。此外,“制品”可以包括其中包含、处理和执行代码的硬件和软件组件的组合。当然,本领域的技术人员将认识到,可以做出许多修改而不偏离实施例的范围,并且所述制品可以包括任何信息承载介质。例如,所述制品包括其中存储有指令(当由机器执行时,所述指令将导致操作被执行)的存储介质。
特定实施例可以采取完全硬件实施例、完全软件实施例或包含硬件和软件元素两者的实施例的形式。在优选实施例中,本发明以软件实现,所述软件包括但不限于固件、驻留软件、微代码等。
此外,特定实施例可以采取可从计算机可用或计算机可读介质访问的计算机程序产品的形式,所述计算机可用或计算机可读介质提供了可以被计算机或任何指令执行系统使用或与计算机或任何指令执行系统结合的程序代码。出于此描述的目的,计算机可用或计算机可读介质可以是任何能够包含、存储、传送、传播或传输由指令执行系统、装置或设备使用或与所述指令执行系统、装置或设备结合的程序的装置。所述介质可以是电、磁、光、电磁、红外线或半导体系统(或装置或设备)或传播介质。计算机可读介质的实例包括半导体或固态存储器、磁带、可移动计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的当前实例包括光盘-只读存储器(CD-ROM)、光盘-读/写(CD-R/W)和DVD。
术语“特定实施例”、“一个实施例”、“实施例”、“多个实施例”、“所述实施例”、“所述多个实施例”、“一个或多个实施例”、“某些实施例”和“某一实施例”指一个或多个(但不是所有)实施例,除非另外明确指出。术语“包含”、“包括”、“具有”及其变型指“包括但不限于”,除非另外明确指出。列举的项目的列表并非暗示任何或所有的项目互相排斥,除非另外明确指出。术语“a”、“an”和“the”指“一个或多个”,除非另外明确指出。
相互通信的设备不必持续地相互通信,除非另外明确指出。此外,相互通信的设备可以通过一个或多个媒介直接或间接地通信。此外,具有若干相互通信的组件的实施例的描述并非暗示所有此类组件都是必需的。相反,描述了多种可选的组件以说明更多可能的实施例。
此外,尽管可以按照连续的顺序来描述过程步骤、方法步骤、算法或类似步骤,但是此类过程、方法和算法可以被配置为以替代顺序工作。换句话说,所描述的步骤的任何序列或顺序并不一定指示要求按此顺序执行步骤。实际可以按任何顺序执行在此描述的处理的步骤。此外,可以同时、并行或并发地执行某些步骤。
当在此描述单个设备或物品时,将显而易见的是,可以使用多个设备/物品(无论它们是否协作)来代替单个设备/物品。同样,当在此描述了多个设备或物品(无论它们是否协作)的情况下,将显而易见的是,可以使用单个设备或物品来代替多个设备或物品。设备的功能和/或特性可以备选地由一个或多个其他未明确描述为具有此类功能/特性的设备来体现。因此,其他实施例不必包括设备本身。
图4示出了示例性计算机系统400,其中在特定实施例中,可以根据计算机系统400的计算机体系结构实现图1的计算环境100的计算平台102、104、106a...106n、112。计算机系统400也可以被称为系统,并且可以包括电路402,在特定实施例中电路402可以包括处理器404。系统400还可以包括存储器406(例如,易失性存储器设备)和存储装置408。系统400的特定元件可以存在也可以不存在于图1的计算平台102、104、106a...106n、112中。存储装置408可以包括非易失性存储器设备(例如EEPROM、ROM、PROM、RAM、DRAM、SRAM、闪存、固件、可编程逻辑等)、磁盘驱动器、光盘驱动器、磁带驱动器等。存储装置408可以包括内部存储设备、附加的存储设备和/或可从网络访问的存储设备。系统400可以包括程序逻辑410,所述程序逻辑包括可以被加载到存储器406并由处理器404或电路402执行的代码412。在特定实施例中,包括代码412的程序逻辑410可以被存储在存储装置408中。在其他特定实施例中,程序逻辑410可以在电路402中实现。因此,虽然图4示出了程序逻辑410与其他元件分离,但是程序逻辑410可以在存储器406和/或电路402内实现。
特定实施例可以涉及用于由个人或集成计算机可读代码的自动处理将计算指令部署到计算系统中的方法,其中所述代码结合所述计算系统被使能执行所描述的实施例的操作。
至少可以并行以及顺序执行图2和3中示出的某些操作。在备选实施例中,可以以不同的顺序执行、修改或删除某些操作。
此外,出于说明的目的在单独的模块中描述了许多软件和硬件组件。此类组件可以集成到更少数量的组件中或者分成更多数量的组件。另外,所描述的由特定组件执行的某些操作可以由其他组件来执行。
图1-4中示出或指出的数据结构和组件被描述为具有特定类型的信息。在备选实施例中,可以不同地构造所述数据结构和组件,并且与图中示出或指出的数据结构和组件相比,可以具有更少的、更多的或不同的字段或不同的功能。
因此,出于说明和描述目的提供了以上实施例的描述。其并非旨在是穷举的或将所述实施例限于已披露的精确形式。根据上述教导,可以做出许多修改和变型。
Claims (10)
1.一种用于支持与存储子系统关联的更新的方法,所述方法包括:
由主控制单元向多个辅助控制单元发送选定时间;
定期将所述主控制单元和所述辅助控制单元处的时钟与时间服务器同步;
由所述主控制单元和所述多个辅助控制单元在所述选定时间更新可连接到所述多个辅助控制单元的辅助存储子系统;
由所述主控制单元判定所述多个辅助控制单元中的每个辅助控制单元是否已启动所述用于在所述选定时间更新可连接到所述多个辅助控制单元的所述存储子系统的过程;以及
响应于由所述主控制单元判定所述多个辅助控制单元中的每个辅助控制单元已启动所述用于在所述选定时间更新可连接到所述多个辅助控制单元的所述存储子系统的过程,由所述主控制单元请求所述多个辅助控制单元中的每个辅助控制单元完成所述用于更新所述辅助存储子系统的过程。
2.如权利要求1中所述的方法,其中在所述选定时间一致地更新所述辅助存储子系统以响应来自所述主控制单元的命令,并且其中所述选定时间与用于更新所述辅助存储子系统的一致性组关联。
3.如权利要求1中所述的方法,还包括:
在所述主控制单元处接收来自一个或多个可连接到所述主控制单元的主机应用的更新;
将所述更新存储在至少一个连接到所述主控制单元的主存储子系统中;以及
生成对应于所述更新的一致性组,其中所述一致性组用于更新所述辅助存储子系统。
4.如权利要求1中所述的方法,还包括:
由所述多个辅助控制单元接收来自所述主控制单元的所述选定时间;
由所述多个辅助控制单元启动用于在所述选定时间更新可连接到所述多个辅助控制单元的所述辅助存储子系统的过程;
在所述多个辅助控制单元处接收来自所述主控制单元的请求以完成所启动的用于更新所述辅助存储子系统的过程;
由所述多个辅助控制单元完成所述用于更新所述辅助存储子系统的过程,以响应确定可以一致地更新所述辅助存储子系统;以及
向所述主控制单元发送错误指示,以响应确定不能一致地更新所述辅助存储子系统。
5.如权利要求1中所述的方法,其中在更新所述辅助存储子系统时,写入输入/输出(I/O)操作在一致性组形成期间并未变得繁忙,并且其中以一致的状态维护存储子系统中的源和目标卷,以便没有乱序相关写入被复制到一致性组内的存储子系统中的任何目标卷。
6.一种用于与时间服务器一起使用的支持与存储子系统关联的更新的系统,所述系统包括:
可连接到所述时间服务器的主控制单元;
可连接到所述时间服务器的多个辅助控制单元;
可连接到所述多个辅助控制单元的辅助存储子系统;
用于由所述主控制单元向所述多个辅助控制单元发送选定时间的装置;
用于定期将所述主控制单元和所述辅助控制单元处的时钟与所述时间服务器同步的装置;
用于由所述主控制单元和所述多个辅助控制单元在所述选定时间更新可连接到所述多个辅助控制单元的所述辅助存储子系统的装置;
用于由所述主控制单元判定所述多个辅助控制单元中的每个辅助控制单元是否已启动所述用于在所述选定时间更新可连接到所述多个辅助控制单元的所述辅助存储子系统的过程的装置;以及
用于响应于由所述主控制单元判定所述多个辅助控制单元中的每个辅助控制单元已启动所述用于在所述选定时间更新可连接到所述多个辅助控制单元的所述辅助存储子系统的过程,由所述主控制单元请求所述多个辅助控制单元中的每个辅助控制单元完成所述用于更新所述辅助存储子系统的过程的装置。
7.如权利要求6中所述的系统,其中在所述选定时间一致地更新所述辅助存储子系统以响应来自所述主控制单元的命令,并且其中所述选定时间与用于一致地更新所述辅助存储子系统的一致性组关联。
8.如权利要求6中所述的系统,还包括:
用于在所述主控制单元处接收来自一个或多个可连接到所述主控制单元的主机应用的更新的装置;
用于将所述更新存储在至少一个连接到所述主控制单元的主存储子系统中的装置;以及
用于生成对应于所述更新的一致性组的装置,其中所述一致性组用于更新所述辅助存储子系统。
9.如权利要求6中所述的系统,还包括:
用于由所述多个辅助控制单元接收来自所述主控制单元的所述选定时间的装置;
用于由所述多个辅助控制单元启动用于在所述选定时间更新可连接到所述多个辅助控制单元的所述辅助存储子系统的过程的装置;
用于在所述多个辅助控制单元处接收来自所述主控制单元的完成更新装置的所启动过程的请求,以便由所述多个辅助控制单元完成所述用于更新所述辅助存储子系统的过程,以响应确定可以一致地更新所述辅助存储子系统的装置;以及
用于向所述主控制单元发送错误指示,以响应确定不能一致地更新所述辅助存储子系统的装置。
10.如权利要求6中所述的系统,其中在更新所述辅助存储子系统时,写入输入/输出(I/O)操作在一致性组形成期间并未变得繁忙,并且其中以一致的状态维护存储子系统中的源和目标卷,以便没有乱序相关写入被复制到一致性组内的存储子系统中的任何目标卷。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/399,973 US7571268B2 (en) | 2006-04-06 | 2006-04-06 | Consistent updates across storage subsystems coupled to a plurality of primary and secondary units at selected times |
US11/399,973 | 2006-04-06 | ||
PCT/EP2007/052627 WO2007113101A1 (en) | 2006-04-06 | 2007-03-20 | Consistent updates across storage subsystems |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101401073A CN101401073A (zh) | 2009-04-01 |
CN101401073B true CN101401073B (zh) | 2010-11-10 |
Family
ID=38007223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800092247A Expired - Fee Related CN101401073B (zh) | 2006-04-06 | 2007-03-20 | 跨存储子系统的一致更新 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7571268B2 (zh) |
EP (1) | EP2005301B1 (zh) |
JP (1) | JP4573310B2 (zh) |
CN (1) | CN101401073B (zh) |
WO (1) | WO2007113101A1 (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7899894B2 (en) * | 2006-08-30 | 2011-03-01 | International Business Machines Corporation | Coordinated timing network configuration parameter update procedure |
US9112626B2 (en) * | 2007-01-31 | 2015-08-18 | International Business Machines Corporation | Employing configuration information to determine the role of a server in a coordinated timing network |
US7895303B2 (en) * | 2007-01-31 | 2011-02-22 | International Business Machines Corporation | Server time protocol control messages and methods |
US7689718B2 (en) | 2007-01-31 | 2010-03-30 | International Business Machines Corporation | Channel subsystem server time protocol commands and system therefor |
US8150800B2 (en) | 2007-03-28 | 2012-04-03 | Netapp, Inc. | Advanced clock synchronization technique |
US8290899B2 (en) * | 2007-03-28 | 2012-10-16 | Netapp, Inc. | Group stamping style asynchronous replication utilizing a loosely-accurate global clock |
US7925629B2 (en) | 2007-03-28 | 2011-04-12 | Netapp, Inc. | Write ordering style asynchronous replication utilizing a loosely-accurate global clock |
US8015427B2 (en) * | 2007-04-23 | 2011-09-06 | Netapp, Inc. | System and method for prioritization of clock rates in a multi-core processor |
US7925916B2 (en) * | 2008-04-10 | 2011-04-12 | International Business Machines Corporation | Failsafe recovery facility in a coordinated timing network |
US8416811B2 (en) * | 2008-04-10 | 2013-04-09 | International Business Machines Corporation | Coordinated timing network having servers of different capabilities |
US8099571B1 (en) | 2008-08-06 | 2012-01-17 | Netapp, Inc. | Logical block replication with deduplication |
US7873862B2 (en) * | 2008-10-21 | 2011-01-18 | International Business Machines Corporation | Maintaining a primary time server as the current time server in response to failure of time code receivers of the primary time server |
US9158579B1 (en) | 2008-11-10 | 2015-10-13 | Netapp, Inc. | System having operation queues corresponding to operation execution time |
DE102008044367A1 (de) | 2008-12-04 | 2010-06-10 | Robert Bosch Gmbh | Intelligenter Sensor für ein Kraftfahrzeug, Erfassungssystem und Verfahren zum Übertragen eines Sensorsignals |
US8108575B2 (en) | 2009-02-03 | 2012-01-31 | International Business Machines Corporation | Methods of multi-server application synchronization without stopping I/O |
US8655848B1 (en) | 2009-04-30 | 2014-02-18 | Netapp, Inc. | Unordered idempotent logical replication operations |
US8321380B1 (en) | 2009-04-30 | 2012-11-27 | Netapp, Inc. | Unordered idempotent replication operations |
US8671072B1 (en) | 2009-09-14 | 2014-03-11 | Netapp, Inc. | System and method for hijacking inodes based on replication operations received in an arbitrary order |
US8473690B1 (en) | 2009-10-30 | 2013-06-25 | Netapp, Inc. | Using logical block addresses with generation numbers as data fingerprints to provide cache coherency |
US8799367B1 (en) | 2009-10-30 | 2014-08-05 | Netapp, Inc. | Using logical block addresses with generation numbers as data fingerprints for network deduplication |
US8271441B1 (en) * | 2009-12-26 | 2012-09-18 | Emc Corporation | Virtualized CG |
US8554737B2 (en) | 2010-09-28 | 2013-10-08 | International Business Machines Corporation | Dynamic consistency group formation and systems using the same |
US9417815B1 (en) * | 2013-06-21 | 2016-08-16 | Amazon Technologies, Inc. | Capturing snapshots of storage volumes |
CN110209726B (zh) * | 2018-02-12 | 2023-10-20 | 金篆信科有限责任公司 | 分布式数据库集群系统、数据同步方法及存储介质 |
US11733909B2 (en) | 2021-06-21 | 2023-08-22 | Western Digital Technologies, Inc. | Secure-erase prediction for data storage devices |
US11900102B2 (en) * | 2021-06-21 | 2024-02-13 | Western Digital Technologies, Inc. | Data storage device firmware updates in composable infrastructure |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5555371A (en) * | 1992-12-17 | 1996-09-10 | International Business Machines Corporation | Data backup copying with delayed directory updating and reduced numbers of DASD accesses at a back up site using a log structured array data storage |
CN1681248A (zh) * | 2004-04-06 | 2005-10-12 | 三星电子株式会社 | 服务器与客户端间传送用于数据同步的数据的方法与系统 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0448464A (ja) | 1990-06-13 | 1992-02-18 | Nec Corp | 磁気記録再生装置 |
US5577222A (en) * | 1992-12-17 | 1996-11-19 | International Business Machines Corporation | System for asynchronously duplexing remote data by sending DASD data grouped as a unit periodically established by checkpoint based upon the latest time value |
US5615329A (en) * | 1994-02-22 | 1997-03-25 | International Business Machines Corporation | Remote data duplexing |
KR0128271B1 (ko) * | 1994-02-22 | 1998-04-15 | 윌리암 티. 엘리스 | 재해회복을 위한 일관성 그룹 형성방법 및 레코드갱싱의 섀도잉 방법, 주시스템, 원격데이타 섀도잉 시스템과 비동기 원격데이타 복제 시스템 |
US6578120B1 (en) * | 1997-06-24 | 2003-06-10 | International Business Machines Corporation | Synchronization and resynchronization of loosely-coupled copy operations between a primary and a remote secondary DASD volume under concurrent updating |
US7079269B2 (en) * | 1998-03-19 | 2006-07-18 | Océ-Technologies B.V. | Interactive printing with a plurality of printer devices |
JP2000137638A (ja) | 1998-10-29 | 2000-05-16 | Hitachi Ltd | 情報記憶システム |
JP2000305856A (ja) | 1999-04-26 | 2000-11-02 | Hitachi Ltd | ディスクサブシステム及びこれらの統合システム |
JP4044717B2 (ja) | 2000-03-31 | 2008-02-06 | 株式会社日立製作所 | 記憶サブシステムのデータ二重化方法及びデータ二重化システム |
JP2002342038A (ja) * | 2001-05-16 | 2002-11-29 | Hitachi Ltd | コマンドの実行順序を制御するディスク装置 |
DE10216984A1 (de) * | 2002-04-16 | 2003-11-06 | Philips Intellectual Property | Netzwerk mit einem Verbindungs-Netzwerk und mehreren mit dem Verbindungs-Netzwerk gekoppelten Netzknoten |
US6842825B2 (en) | 2002-08-07 | 2005-01-11 | International Business Machines Corporation | Adjusting timestamps to preserve update timing information for cached data objects |
US7117386B2 (en) | 2002-08-21 | 2006-10-03 | Emc Corporation | SAR restart and going home procedures |
SE525157C2 (sv) * | 2002-12-03 | 2004-12-14 | Mentice Ab | Simuleringssystem för invasiv kirurgi |
JP4354233B2 (ja) | 2003-09-05 | 2009-10-28 | 株式会社日立製作所 | バックアップシステム及び方法 |
JP2007506331A (ja) * | 2003-09-16 | 2007-03-15 | コニンクリユケ フィリップス エレクトロニクス エヌ.ブイ. | 通信ネットワーク及び通信エレメント並びにその動作方法 |
US7188222B2 (en) | 2003-09-29 | 2007-03-06 | International Business Machines Corporation | Method, system, and program for mirroring data among storage sites |
US7293048B2 (en) * | 2003-10-29 | 2007-11-06 | Hewlett-Packard Development Company, L.P. | System for preserving logical object integrity within a remote mirror cache |
US7318074B2 (en) * | 2003-11-17 | 2008-01-08 | International Business Machines Corporation | System and method for achieving deferred invalidation consistency |
US8214328B2 (en) | 2003-11-25 | 2012-07-03 | International Business Machines Corporation | High-performance asynchronous peer-to-peer remote copy for databases |
US7421549B2 (en) | 2004-03-02 | 2008-09-02 | Hitachi, Ltd. | Method and apparatus of remote copy for multiple storage subsystems |
-
2006
- 2006-04-06 US US11/399,973 patent/US7571268B2/en not_active Expired - Fee Related
-
2007
- 2007-03-20 CN CN2007800092247A patent/CN101401073B/zh not_active Expired - Fee Related
- 2007-03-20 WO PCT/EP2007/052627 patent/WO2007113101A1/en active Application Filing
- 2007-03-20 EP EP07727104.7A patent/EP2005301B1/en active Active
- 2007-03-20 JP JP2009503521A patent/JP4573310B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5555371A (en) * | 1992-12-17 | 1996-09-10 | International Business Machines Corporation | Data backup copying with delayed directory updating and reduced numbers of DASD accesses at a back up site using a log structured array data storage |
CN1681248A (zh) * | 2004-04-06 | 2005-10-12 | 三星电子株式会社 | 服务器与客户端间传送用于数据同步的数据的方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
EP2005301A1 (en) | 2008-12-24 |
US7571268B2 (en) | 2009-08-04 |
CN101401073A (zh) | 2009-04-01 |
US20070239950A1 (en) | 2007-10-11 |
WO2007113101A1 (en) | 2007-10-11 |
EP2005301B1 (en) | 2013-05-08 |
JP2009532789A (ja) | 2009-09-10 |
JP4573310B2 (ja) | 2010-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101401073B (zh) | 跨存储子系统的一致更新 | |
US7650369B2 (en) | Database system management method and database system | |
CN101578586B (zh) | 在故障转移和故障回复环境中使用虚拟拷贝 | |
US7941622B2 (en) | Point in time remote copy for multiple sites | |
US7987158B2 (en) | Method, system and article of manufacture for metadata replication and restoration | |
CN100570574C (zh) | 用于管理存储系统之间的数据拷贝的系统和方法 | |
CN101405701B (zh) | 用于拷贝数据的计算机实现的方法及装置 | |
CN102197388B (zh) | 分布式存储系统中基于定额的事务一致成员管理 | |
CN102696017B (zh) | 一种维持数据存储可靠性的方法和系统 | |
US6748381B1 (en) | Apparatus and method for maintaining consistency of shared data resources in a cluster environment | |
CN102214205B (zh) | 用于经聚类的数据库系统中的逻辑复制的系统和方法 | |
CN100495354C (zh) | 在耦合会话环境内合并一簇会话的会话信息的方法和系统 | |
CN102891849B (zh) | 业务数据同步方法、恢复方法及装置和网络设备 | |
CN100478893C (zh) | 用于动态群集代码管理的方法和系统 | |
US20090313311A1 (en) | Mixed mode synchronous and asynchronous replication system | |
CN103597463A (zh) | 恢复服务的自动配置 | |
CN105339939A (zh) | 对在线热备份数据库的复制 | |
CN103562904A (zh) | 在服务的次要位置重放作业 | |
CN103902405A (zh) | 一种准连续性数据复制方法及装置 | |
CN101996094A (zh) | 一种分布式资源管理方法及系统 | |
CN116917880A (zh) | 分布式数据库远程备份 | |
CN113646749A (zh) | Iot分区管理和负载平衡 | |
BE1024939B1 (nl) | Systeem en apparaat voor het gegarandeerd precies eenmalig verwerken van een gebeurtenis in een verdeelde gebeurtenissen-aangedreven omgeving | |
US20050154786A1 (en) | Ordering updates in remote copying of data | |
Dillenberger et al. | A contrast between mainframe Parallel Sysplex availability and selected distributed computing availability solutions |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101110 |