CN100388224C - 任意数目的备用组件的系统体系结构用方法和系统 - Google Patents

任意数目的备用组件的系统体系结构用方法和系统 Download PDF

Info

Publication number
CN100388224C
CN100388224C CNB2005100509578A CN200510050957A CN100388224C CN 100388224 C CN100388224 C CN 100388224C CN B2005100509578 A CNB2005100509578 A CN B2005100509578A CN 200510050957 A CN200510050957 A CN 200510050957A CN 100388224 C CN100388224 C CN 100388224C
Authority
CN
China
Prior art keywords
spare module
data
data update
spare
module
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.)
Active
Application number
CNB2005100509578A
Other languages
English (en)
Other versions
CN1661563A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1661563A publication Critical patent/CN1661563A/zh
Application granted granted Critical
Publication of CN100388224C publication Critical patent/CN100388224C/zh
Active 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/2069Management of state, configuration or failover
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

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

任意数目的备用组件的系统体系结构用方法和系统
技术领域
本发明涉及任意数目的备用组件的系统体系结构。
背景技术
灾难恢复系统一般致力于两种故障,单一时刻的突发灾难性故障或一段时间内的数据丢失。在第二种渐进的灾难中,可能丢失成卷的数据更新。为了帮助数据更新的恢复,可在远程位置提供数据的副本。通常当应用系统正在把新数据写入主存储装置时,产生这种双副本或影子副本。国际商用机器公司(IBM)(本专利申请的受让者)提供两种系统在辅助存储装置保持数据的远程副本,扩展远程副本(XRC)和对等远程副本(PPRC)。
这些系统提供一种用于在最新的安全备份和系统故障之间恢复数据更新的方法。这种数据保护系统还能够提供用于非恢复目的,例如远程地点的本地存取的额外远程副本。在IBM出版物“Remote Copy:Administrator′s Guide and Reference”,IBM document no.SC35-0169-02(IBM Copyright 1994,1996)中描述了IBM
Figure C20051005095700061
XRC和PPRC系统,该出版物作为参考整体包含于此。
在这种备份系统中,数据被保存在卷对中。卷对由主存储装置中的卷和辅助存储装置中的对应卷组成,所述对应卷包括保存在主卷中的数据的一致副本。一般,该对的主卷将保存在主直接存取存储装置(DASD)中,该对的辅助卷保存在影像(shadow)主DASD上的数据的辅助(secondary)DASD中。可提供主存储控制器来控制对主DASD的访问,可提供辅助存储控制器来控制对辅助DASD的访问。
在IBM
Figure C20051005095700062
XRC环境中,把数据写入主卷的应用系统包括提供日时(TOD,time-of-day)值作为数据写入的时间戳的综合系统(sysplex)计时器。当把这样的数据集写入主DASD中的卷中时,应用系统对数据集打上时间戳。数据更新的完整性与确保按照和在主卷上进行数据更新的相同顺序,在卷对中的辅助卷上进行数据更新相关。在XRC和其它现有系统中,应用程序提供的时间戳确定数据更新的逻辑顺序。在许多应用程序,例如数据库系统中,除非发生在先写入,否则不能发生某些写入;否则会危及数据完整性。其完整性取决于在先数据写入的发生的这种数据写入被称为相关写入。例如,如果客户开立某一账户,存款$400,随后取款$300,那么对系统的取出更新取决于其它写入的发生,账户的开立和存款。当这样的相关事务从主卷复制到辅助卷时,事务顺序必须被保留,以便保持相关写入操作的完整性。
当已按照其逻辑顺序传输(transfer)所有写入,即在依赖于其的写入之前,传输所有相关写入时,主DASD和辅助DASD中的卷是一致的。在银行业例子中,这意味着在取款之前,存款被写入辅助卷。一致性组是一批需要保持一致状态的相关卷。一致事务集是对主卷的一批数据更新,从而按照一致方式保护相关写入。例如,在银行业例子中,为了保持一致性,取款事务需要在和存款相同的一致事务集中或者在稍后的一致事务集中;取款不能在较早的一致事务集中。一致性组在各卷之间保持数据一致性。例如,如果发生故障,那么在取款之前,存款将被写入辅助卷。从而,当从辅助卷恢复数据时,恢复的数据将是一致的。
一致时间是系统从应用系统给数据集的时间戳得到的时间。对于具有等于或早于一致性时间戳的时间戳的一致性组中的所有数据写入,一致性组具有一致性时间。在IBM
Figure C20051005095700071
XRC环境中,一致性时间是系统保证对辅助卷的数据更新一致的最后时间。只要应用程序正在把数据写入主卷,那么一致性时间就增加。但是,如果数据更新活动停止,那么一致性时间不变,因为不存为具有为另外的一致性组提供时间基准的时间戳的数据集。如果一致性组中的所有记录被写入辅助卷,那么报告的一致性时间反映该一致组中所有记录的最后时间戳。在转让给IBM(本专利申请的受让者)的美国专利No.5615329和5504861中描述了保持数据写入的顺序一致性,并形成一致性组来保持主DASD和辅助DASD之间数据传输方面的顺序一致性的方法,上述美国专利作为参考整体包含于此。
一般来说,在主存储装置被更新的时间和辅助存储装置被更新的时间之间存在滞后。例如,银行客户可进行从存款账户到贷款账户的偿付。该事务存在两个部分-从存款账户取款和偿还贷款账户。该事务的这两个部分应自动完成和存档。这两个部分的顺序也应被保存(即先取款,随后偿还)以便避免问题。在一些情况下,在正在进行事务的时候,主存储装置可能发生故障。例如,有关从存款账户的偿还的数据可能被发送给辅助存储器,而由于系统故障的缘故,取款数据不被发送。这种情况下,主存储装置反映取款和偿还,而辅助存储装置只反映偿还。从而在灾难和恢复之后,可能只有一部分事务从辅助存储装置应用到主存储装置,使得修复的账户记录反映贷款账户中的偿还,但是不反映从存款账户的取款。在本例中,银行将损失和从存款账户取款数量相等的金额,该金额保留在客户的账户上。由于银行损失金钱,因此银行对灾难恢复感到不满意。
另外,备用(back-up)设备或计算机可从主存储器控制器接收入站数据写入,并把数据写入发送给辅助存储器控制器。为了在这种系统中获得足够的性能,需要使许多备用设备或计算机一起工作,以便把数据从主存储器控制器传输到辅助存储器控制器。另外,被传输的数据应产生一致副本,因为从辅助存储装置恢复的数据需要是一致的,以便向客户提供值。从而,本领域中需要一种改进的利用多个备用设备或计算机的数据传输。
发明内容
提供一种利用多个备用组件传输数据的方法、系统和程序。关于某一部分数据的责任被分配给第一备用组件。当在第一备用组件从主源接收到关于该部分数据的数据更新时,该数据更新被镜像到未被赋予关于该部分数据的责任的第二备用组件。
还提供一种利用一组备用组件,处理数据更新的方法、系统和程序。确定新的备用组件有效。在一致事务集形成时期的终点附近,关于一个或多个部分数据的责任被分配给该组中的每个备用组件以及新的备用组件。在下一个一致事务集形成时期中,利用该组中的每个备用组件和新的备用组件处理数据更新。
此外,提供一种利用一组备用组件处理数据更新的方法、系统和程序。确定该组中的第一备用组件不再可用。第一备用组件负责的各部分数据被重新分配给该组中的其它备用组件。
附图说明
现在参见附图,其中相同的附图标记表示对应的部分:
图1A、1B、1C和1D以方框图图解说明根据本发明的某些实现的计算环境。
图2A和2B图解说明根据本发明的某些实现,由每个备用组件保留的数据。
图3A和3B图解说明根据本发明的某些实现,在备用组件中实现的处理接收的数据更新的逻辑。
图4图解说明根据某些实现,在每个备用组件中实现的关于一致事务集形成时期的逻辑。
图5图解说明根据本发明的某些实现,当一个新的备用组件在线时的逻辑。
图6A和6B图解说明根据本发明的某些实现,当某一备用组件故障或者被除去时的逻辑。
图7图解说明根据本发明的某些实现,可使用的计算机系统的体系结构。
具体实施方式
在下面的说明中,参考了附图,所述附图形成所述说明的一部分,图解说明了本发明的几种实现。显然也可利用其它实现,在不脱离本发明的范围的情况下,可做出结构和操作上的变化。
本发明的实现提供用于任意数目(“n”)的协同备用组件的系统体系结构。每个备用组件可从一个或多个主源(例如通过PPRC从存储服务器或者通过双路写入(forked write)从主机)接收数据更新。每个备用组件把输入的数据更新镜像(mirror)到至少一个其它备用组件,以便避免单一故障点。术语“镜像”可被描述成把数据更新的副本发送给另一备用组件。虽然只是出于举例说明的目的,这里的例子涉及的是把数据更新镜像到一个备用组件,不过本发明的实现允许一个备用组件把数据更新镜像到多个备用组件。
一组备用组件协同形成一部分数据(例如一个或多个卷)的一致事务集(consistent transactions set),这里一致事务集在该组备用组件中的所有备用组件内有效。“一致事务集”可被描述成一组事务,当在辅助地点(secondary site)被应用时,所述一组事务对于包括在复制中的卷,形成主地点的时间一致副本,假定主地点和辅助地点在复制开始时是相同的。备用组件随后把它们的数据更新传输给辅助地点。
从而,备用组件协同接收来自主源的数据更新,考虑到高度可用性镜像数据更新,并把更新传输到辅助地点。在系统体系结构中存在任意数目的备用组件,当备用组件发生故障或者增加或除去备用组件时,该数目可随时发生变化。每个备用组件具有通过通信路径(例如,通过高速数据链路)与所有其它备用组件通信的能力。在一些实现中,该通信路径和用于与主源和辅助地点通信的通信路径分离。本发明的实现允许备用组件加入、离开或发生故障,而不会丢失任何数据更新,同时完成接收数据更新并把数据更新发送给辅助地点的任务。
在一些实现中,存在多对链接在主地点和辅助地点之间的等同卷。于是,当某一卷在主地点被更新时,对应卷在辅助地点被更新。借助备用组件传播数据更新。
在一些实现中,为了在维持足够性能的同时保持数据完整性,由单一备用组件把关于特定卷的所有数据更新传输到辅助地点。即,在数据更新到达备用组件之前,每个备用组件被赋予负责一组卷(包括一个或多个卷)的职责。负责一组卷的备用组件把关于这些卷的数据更新发送给辅助地点。
但是,对于关于任意卷从主源接收数据更新的任意备用组件来说,未被赋予负责某一卷的职责的某一备用组件可能不把关于该卷的数据更新发送给辅助地点。相反,未被赋予负责某一卷的职责,但是收到对该卷的数据更新的该备用组件把所述数据更新镜像到被赋予负责该卷的职责的备用组件。在一些实现中,每个备用组件保留把备用组件映射到它们负责的那些卷,识别哪些备用组件具有给该备用组件的镜像数据更新,以及哪些备用组件已发送来自该备用组件的数据更新的信息。
图1A以方框图图解说明根据本发明的某些实现的计算环境。主控制单元110、130和150(例如主存储器控制器)分别使一个或多个主计算机114、134或154可以访问主(primary)DASD 112、132和152。虽然这里的例子涉及的是DASD,不过本发明的实现可和各种存储装置一起使用,并不打算局限于和DASD一起使用。主控制单元110、130和150还可具有主高速缓存(未示出),其中分别保存对主DASD 112、132和152中的道的数据更新,直到数据转出(destage)到主DASD 112、132和152为止。主DASD 112、132和152的所有卷或一部分卷的备份副本可分别保留在辅助DASD 118、138和158。
主地点可包括主控制单元110、130和150,主DASD 112、132和152,以及主计算机114、134和154。辅助地点可包括辅助控制单元116、136和156(例如辅助存储器控制器)和辅助DASD 118、138和158。
在一些实现中,“卷对”(volume pair)可被描述成主DASD中的卷和该卷在辅助DASD中的影子(shadow),其保持卷对中的主卷上的数据的备份副本。在一些实现中,对于每个主卷,存在具有一致内容的对应辅助卷;这就是一个卷对。例如,对主DASD 112的数据更新被传输到辅助控制单元116,以便保存在辅助DASD 118中。
主控制单元110、130和150还可包括非易失性存储单元(未示出),例如带后备电池的易失性存储器,来保持更新的非易失性副本。主控制单元110、130和150和辅助控制单元116、136和156可由IBM
Figure C20051005095700111
3990,Model 6 Storage Controller,Enterprise Storage Sever
Figure C20051005095700112
(ESS),或者本领域中已知的任何其它控制单元构成。
备用组件100、102和104接收来自主源的数据更新。例如,在图1A的图示中,备用组件100、102和104通过备用组件160、162和164把对主DASD 112、132和152产生的数据更新传输给辅助控制单元116、136和156。术语“备用组件”可被描述成例如设备或计算机。虽然图解说明了与主控制单元110、130和150通信的三个备用组件100、102和104,不过可以存在“n”个备用组件。另外,虽然图解说明了与辅助控制单元116、136和156通信的三个备用组件160、162和164,不过可以存在“n”个备用组件。
每个备用组件100、102和104可包括一个处理器,一个缓冲器和一个用于分别把数据更新从主控制单元110、130和150传输到备用组件160、162和164的计算机程序。每个备用组件160、162和164可包括分别把数据更新传输给辅助控制单元116、136和156的计算机程序。例如,传输备用组件100、102和104中的数据更新的计算机程序可以是系统数据移动器(SDM)程序,例如包括在IBM
Figure C20051005095700121
XRC系统中的SDM程序。从而,经由备用组件100、102、104、160、162和164,数据更新在主控制单元110、130和150和辅助控制单元116、136和156之间传输。
每个备用组件100、102和104可传输来自任何主控制单元110、130和150的数据更新。另外,每个备用组件100、102和104可相互通信。在一些实现中,主控制单元110、130和150和备用组件100、102和104之间的通信路径与备用组件100、102和104本身之间的通信路径分离。
来自每个主DASD的正被复制的每个卷对应于辅助DASD上的一个卷。例如,主DASD 112上的第一卷被备份到辅助DASD 138上的某一卷,主DASD 112上的第二卷被备份到辅助DASD 158上的某一卷。在一些实现中,一个或多个卷不被备份。
在一些实现中,备用组件100、102和104接收来自主控制单元110、130和150的数据更新。在一些实现中,备用组件100、102和104可截取对主DASD 112、132和152的数据更新。
主DASD 112、132和152和辅助DASD 118、138和158包含卷。在一些实现中,一个备用组件100、102或104负责处理关于一个或多个指定卷的所有数据更新。例如,备用组件102可处理关于主DASD 112上的卷1和卷6的所有带有更新信息的数据更新,而备用组件104可处理关于主DASD 112上的卷2的带有更新信息的数据更新。负责某一卷的备用组件100、102或104负责把关于该卷的数据更新传输到备用组件160、162和164。
在一些实现中,备用组件100、102、104、160、162和164,主控制单元110、130和150,和辅助控制单元116、136和156通过通信路径,例如直接高速传输线路(例如Enterprise System Connection(ESCON
Figure C20051005095700131
)链路)通信。但是,通信路径可由本领域已知的任何其它通信装置构成,包括网络传输线路,光缆等。
图1B用方框图图解说明根据本发明的备选实现的计算环境。特别地,一个额外的备用组件108能够接管不能继续进行处理(例如发生故障或者被除去以进行修理)的备用组件100、102或104的处理。
图1C用方框图图解说明根据本发明的备选实现的计算环境。特别地,可存在和存在主控制单元110、130和150相比较少的备用组件100和102。每个主控制单元110、130或150可与一个或多个备用组件100或102链接。
图1D用方框图图解说明根据本发明的某些实现的计算环境。可存在由椭圆形表示的“n”个备用组件。在短距离内,主地点和备用组件100、102和104之间的通信可以是同步的。经由具有网际协议(IP)链路的虚拟专用网(VPN),在长距离内,备用组件100、102和104与备用组件160、162和164之间的通信是异步的。备用组件160、162和164之间的通信可以是对DASD的直接小型计算机系统接口(SCSI)写入。
借助本发明的实现,备用组件100、102和104接收入站事务,并使入站事务与第一标识符相联系(即,与相同标识符相关的所有事务形成一致事务集)。被转发出备用组件100、102或104的入站事务可被称为“出站”事务。在一些实现中,负责某一卷的备用组件100、102或104把出站事务转发给恰当的备用组件160、162或164。在一些实现中,负责多个卷的备用组件(例如100)把关于多个卷的出站事务转发给备用组件之一(例如160)。在一些备选实现中,负责多个卷的备用组件(例如100)可把关于多个卷的出站事务转发给不同的备用组件160、162或164。备用组件100、102和104可保存多个事务集,同时每个事务集与一个不同的标识符相联系。
此外,当备用组件160、162或164把事务传送给辅助控制单元116、136和156时,备用组件100、102和104还从主控制单元110、130和150接收额外的事务。
本发明的一些实现在第二地点产生某一事务集的一致副本。一个标识符与该事务集相联系。例如,标识符可以是颜色(例如绿色、蓝色、红色或黄色),整数,字母数字串,或者其它标识符。在一些实现中,每个事务集代表在规定的一段时间内收到的事务。可为不同的用户定制所述一段时间。例如,一个用户可能希望每分钟产生一致副本,而另一用户可能希望每20秒产生一致副本。该段时间可以跨越较长的时段,例如几天。在一些实现中,对于不同的事务集,标识符是唯一的。
借助本发明的实现,备用组件100、102和104把与第一标识符相关的出站事务(即,一致事务集)发送给备用组件160、162、164。当每个备用组件100、102和104完成发送与第一标识符相关的所有出站事务时,备用组件160、162和164随后向备用组件100、102和104确认它们收到并镜像这些出站事务中的数据。备用组件100、102和104随后可以自由地再继续发送与另一(例如第二)标识符相关的事务。备用组件160、162和164把与第一标识符相关的数据事务发送给恰当的辅助控制单元116、136和156。当所有备用组件160、162和164完成发送与第一标识符相关的所有出站数据事务时,备用组件160、162和164随后可以自由把与另一标识符相关的数据事务发送给辅助控制单元116、136和156。在把数据事务传送给辅助控制单元116、136和156的时候,备用组件160、162和164能够接收来自备用组件100、102和104的数据事务。
从而,在另一标识符相关(例如与另一颜色相关)的任意I/O事务之前,与某一标识符相关的所有I/O事务被写入位于辅助地点的存储器中。按照这种方式,当具有相关标识符的一个事务集被完全存档在辅助地点时,当与该标识符相关的事务被处理时,辅助数据反映主数据。从而,当关于指定标识符的所有I/O事务被发送给位于辅助地点的辅助数据时,该组辅助数据处于所希望的一致状态。此时,辅助数据是在主地点形成一致事务集时,位于主地点的主数据的准确副本,辅助地点可根据辅助数据产生副本。在特定的事务集已在辅助地点被应用于辅助数据之后,这些副本是反映位于主地点的主数据的“一致”副本。
图2A和2B根据本发明的一些实现,图解说明由每个备用组件100、102和104保持的数据。在图2A中,表200把备用组件映射到它们负责的卷。在图2B中,表210为每个更新识别相关的顺序标识符,从其收到数据更新的卷(即,“源”卷),将向其发送数据更新的卷(即,“目标”卷),数据更新被镜像到的备用组件,和从其镜像数据更新的备用组件。
图3A和3B根据本发明的一些实现,图解说明在备用组件100、102或104中实现的,用于处理在备用组件100、102或104接收的数据更新的逻辑。控制开始于方框300,备用组件100、102或104接收关于某一卷的数据更新。在方框302中,备用组件100、102或104确定数据更新是否接收自主源(例如,主控制单元110、130或150)。如果是,那么处理进入方框304,否则,数据更新接收自另一备用组件100、102或104,处理进入方框320。
在方框304中,收到数据更新的备用组件100、102或104确定它是否负责已收到其数据更新的卷。如果是,那么处理进入方框306,否则,处理进入方框312。
在方框306中,备用组件100、102或104接受该数据更新,并向该数据更新分配一个顺序标识符。在一些实现中,顺序标识符来自与某一卷相关的流水号列表。在这些实现中,每个卷具有一系列不断增大的编号,以便简化按顺序放置事务(例如在系统故障之后)。在一些备选实现中,对于多个卷,使用大型的序列号列表。在方框308中,备用组件100、102或104把数据更新和顺序标识符镜像到不负责收到关于其的数据更新的卷的另一备用组件100、102或104。在方框310中,备用组件100、102或104始终监视(keep track of)哪个备用组件100、102或104发送该数据更新。即,如果关于某一卷的数据更新从主源到达负责该卷的备用组件100、102或104,那么该备用组件100、102或104接受该更新,分配一个顺序标识符,并把该数据更新镜像到其它备用组件100、102或104之一。
在方框312中,不负责收到关于其的数据更新的卷的备用组件100、102或104接受该数据更新。在方框314中,该备用组件100、102或104把数据更新镜像到负责收到关于其的数据更新的卷的备用组件100、102或104。在方框316中,备用组件100、102或104从负责该卷的备用组件100、102或104接收顺序标识符,并始终监视该顺序标识符和哪个备用组件100、102或104发送该更新。即,如果关于某一卷的数据更新从主源到达不负责该卷的备用组件100、102或104,那么该备用组件100、102或104接受该更新,把该数据更新镜像到负责该卷的备用组件100、102或104。
在方框320(图3B)中,备用组件100、102或104已从另一备用组件100、102或104收到数据更新,并确定它是否负责该卷。如果是,那么处理进入方框322,否则,处理进入方框328。
在方框322中,备用组件100、102或104接收该更新,并分配一个顺序标识符。在方框324中,备用组件100、102或104始终监视哪个备用组件100、102或104发送该更新。在方框326中,备用组件100、102或104向镜像包括该顺序标识符的更新的备用组件100、102或104发送确认。即,如果关于某一卷的数据更新从另一备用组件100、102或104到达负责该卷的备用组件100、102或104,那么接收镜像的数据更新的备用组件100、102或104接受该数据更新,向该数据更新分配一个顺序标识符,始终监视哪个备用组件100、102或104发送该更新,并发送包括该顺序标识符的确认。
在一些实现中,在方框328中,备用组件100、102或104确定该数据更新是否来自负责对其应用数据更新的卷的备用组件100、102或104。如果是,那么处理进入方框330,否则,处理进入方框332。在方框330中,该备用组件100、102或104接受数据更新和顺序标识符。在方框332中,该备用组件100、102或104监视哪个备用组件100、102或104发送该数据更新。在方框334中,该备用组件100、102或104拒绝该数据更新,或者可选地,进行出错处理。
在一些备选实现中,从主源接收数据更新的每个备用组件100、102或104对数据更新打上时间戳(代替分配的序列号,或者除了分配的序列号之外)。在这样的实现中,借助网络时间协议(NTP)机制,可使所有备用组件100、102和104的内部时钟保持同步,从而时间戳对数据更新排序有效。在另外的实现中,使用所有备用组件100、102和104的公共计时器来确保时间戳准确,在这种情况下,备用组件100、102或104会根据需要向公共计时器请求时间戳。
在一些实现中,当正从负责存在数据更新的卷的备用组件100、102或104镜像数据更新时,该数据更新可从任何备用组件100、102或104镜像到任何备用组件100、102或104。在一些实现中,每个备用组件100、102或104具有默认的备用组件100、102或104,备用组件100、102或104把数据更新镜像到其默认的备用组件100、102或104上。
图4根据一些实现,图解说明在每个备用组件100、102和104中实现的用于一致事务集形成时期的逻辑。控制开始于方框400,每个备用组件100、102和104接收并处理数据更新,从而形成一致事务集。
在方框402中,在一致事务集形成时期的终点附近,备用组件100、102和104确定在下一形成时期内,哪个备用组件100、102或104负责哪些卷。例如,这可按照循环方式来完成。另一方面,该分配可以基于更复杂的公式或技术。“一致事务集形成时期”可被描述成一组备用组件100、102和104接收数据更新,并把数据更新放入一致事务集中的时期。在一致事务集形成时期结束时,完成一致事务集。
备用组件100、102和104之间卷的重新分配均衡到达每个备用组件100、102和104的数据更新的数量。在一些实现中,由于条件可能因形成时期而异,因此每个形成时期进行这种重新分配,以确保良好的均衡。在一些实现中,在形成时期的终点附近进行这种重新分配,以致在下一形成时期的数据更新到达之前,完成所述分配。在一些实现中,备用组件100、102和104第一次接收数据更新(即在任何形成时期之前)时,备用组件100、102和104在它们之间分配负责特定卷的职责。另外,在一些实现中,卷可被重新分配给少于所有可用备用组件100、102和104的一些备用组件(例如,由于存在少于备用组件的卷)。
在方框404中,在一致事务集形成时期结束时(即,在每个备用组件100、102和104形成一致事务集之后),经过备用组件160、162和164,每个备用组件100、102和104把关于它所负责的卷的数据更新传输到辅助控制单元116、136和156。在方框406中,为另一备用组件100、102或104镜像数据更新的每个备用组件100、102或104确定镜像的数据更新是否已被成功发送给备用组件160、162和164,如果是,那么丢弃镜像的数据更新。在一些实现中,备用组件160、162和164可通知负责位于辅助控制单元116、136和156的卷的备用组件100、102或104,数据更新被成功接收,得到通知的备用组件100、102或104向对其镜像数据更新的备用组件100、102或104发送通知。
图5根据本发明的一些实现,图解说明发新的备用组件在线时的逻辑。控制开始于方框500,加入一个新的备用组件。在方框502中,在一致事务集形成时期的终点附近,当进行卷分配时,新的备用组件被计入。即,新的备用组件可被赋予负责一个或多个卷的职责。在方框504中,在下一个一致事务集形成时期,新的备用组件开始接受并传输来自主源的数据更新。
图6A和6B根据本发明的一些实现,图解说明当备用组件100、102或104发生故障或者被除去(即不再可用)时的逻辑。控制开始于方框600,在一致事务集形成时期内,备用组件100、102或104发生故障或者被除去。在这种情况下,其它备用组件100、102和/或104重构发生故障或者被除去的备用组件100、102或104的数据更新,并继续一致事务集形成时期,而不会丢失任何数据更新。在方框602中,当注意到备用组件100、102或104发生故障或者被除去时,分配给发生故障或者被除去的备用组件100、102或104的卷被重新分配给剩余的备用组件100、102和/或104。在一些备选实现中,可存在可供使用的一个额外备用组件(例如图1B中的108)(即N+1系统体系结构,这里N代表有效备用组件的数目),发生故障或者被除去的备用组件100、102或104的所有卷被分配给该额外的备用组件108。
由于用于在故障备用组件100、102或104的当前一致事务集的数据更新也被镜像到其它备用组件100、102或104,因此能够在新分配的一个或多个备用组件100、102或104上重构该数据更新。在方框604(图6B)中,镜像关于备用组件100、102或104不负责的卷的数据更新的每个备用组件100、102或104把该数据更新发送给新分配的负责该卷的备用组件100、102或104。新分配的备用组件使用数据更新的顺序标识符正确地对数据更新排序。
另外,新分配的备用组件100、102或104可能已包含关于分配给备用组件100、102或104的某一卷的至少一些数据更新,因为备用组件100、102或104是故障或被除去的备用组件100、102或104的镜像地点。在方框606中,已包含给故障或被除去的备用组件100、102或104的一些数据更新的每个这些新分配的备用组件100、102或104把数据更新镜像到其它备用组件100、102或104。随后,数据更新重新位于两个地方。
故障或被除去的备用组件100、102或104还起关于分配给系统体系结构中的其它备用组件100、102或104的卷的数据更新的镜像地点的作用。于是,备用组件100、102或104认识到已被镜像到故障或除去的备用组件100、102或104的数据更新不再具有第二副本,每个备用组件100、102或104再次把数据更新镜像到其它备用组件100、102或104(方框608)。在转移卷的所有权之后,处理继续照常进行。
在一些备选实现中,每个备用组件100、102或104可镜像数据和/或描述哪些数据被镜像的元数据。从而,在一些实现中,只镜像元数据。在这些备选实现中,当元数据被镜像时,在发生故障的情况下,会按照关于重新分配镜像数据所述的相同方式重新分配元数据。在重新分配元数据之后,具有元数据的新的负责备用组件100、102或104会向包含与元数据对应的数据的恰当主控制单元110、130或150请求实际数据。另外,如果从主源接收数据更新的备用组件100、102或104来被赋予负责该数据所存在的卷的职责,那么该备用组件100、102或104会传送该数据(可选地,元数据),从而被赋予负责该数据所存在卷的职责的备用组件100、102或104会具有该数据。
从而,本发明的实现提供的系统体系结构为可量测性(scalability)创造条件。本发明的实现提供一种具有形成一致事务集的任意数目备用组件的体系结构。此外,备用组件能够在任意时候加入或离开一组备用组件。
从网格(grid)计算来看,这些特征是有益的,在网格计算下,希望加入或除去备用组件。另外,这种系统体系结构使得系统能够容许单个备用组件的故障,而不会丢失任何数据。
特定的卷被分配给特定的备用组件,但是关于该卷的数据更新可从主源发送给任何备用组件,从而数据更新被镜像到被分配将对其应用该数据更新的卷的备用组件。在备用组件故障或者除去的情况下,分配给故障或被除去的备用组件的卷被重新分配给剩余的备用组件,剩余的备用组件使用顺序标识符来排列数据更新。另外,在一致事务集形成之间,可动态改变卷分配。此外,最小的备用组件单元是单个备用组件。
IBM,Enterprise Storage Server和ESCON是国际商用机器公司在美国和/或其它国家的注册商标或常见法律标记。
利用标准编程和/或工程技术来产生软件、固件、硬件或它们的任何组合,所述的用于任意数目的备用组件的系统体系结构的技术可被实现成一种方法、设备或制造产品。这里使用的术语“制造产品”指的是用硬件逻辑电路(例如集电电路芯片,可编程门阵列(PGA),专用集成电路(ASIC)等)或计算机可读介质,例如磁存储介质(例如硬盘驱动器,软盘驱动器,磁带等),光学存储器(CD-ROM,光盘等),易失性和非易失性存储装置(例如EEPROM,ROM,PROM,RAM,DRAM,SRAM,固件,可编程逻辑器件等)实现的代码或逻辑。计算机可读介质中的代码由处理器访问和执行。还可通过传输介质,或者通过网络从文件服务器访问用其实现各种实现的代码。这种情况下,其中实现所述代码的制造产品可包括传输介质,例如网络传输线,无线传输介质,通过空间传播的信号,无线电波,红外信号等。从而,“制造产品”可包括包含所述代码的介质。另外,“制造产品”可包括其中包含,处理和执行所述代码的硬件和软件组件的组合。当然,本领域的技术人员会认识到可对该结构做出许多修改,而不会脱离本发明的范围,并且制造产品可包含本领域已知的任何信息承载介质。
图3A、3B、4、5、6A和6B描述按照特定顺序发生的具体操作。在备选实现中,一些逻辑操作可按照不同的顺序被执行,修改或删除。此外,一些操作可被加入上述逻辑中,并且仍然符合所述实现。此外,这里描述的操作可顺序发生,或者一些操作可并行被处理,或者描述成由单一进程执行的操作可由分布式进程执行。
可用软件,硬件,可编程和不可编程门阵列逻辑电路,或者用硬件,软件或门阵列逻辑电路的某一组合实现图3A、3B、4、5、6A和6B的图解说明的逻辑。
图7图解说明根据本发明的某些实现可使用的计算机系统的体系结构。例如,主控制单元,辅助控制单元,和/或备用组件可实现计算机体系结构700。计算机体系结构700可实现处理器702(例如微处理器),存储器704(例如易失性存储装置),和存储器710(例如,诸如硬盘驱动器,光盘驱动器,磁带驱动器之类非易失性存储区)。存储器704可包括一个或多个缓冲区(未示出)。操作系统705可在存储器704中执行。存储器710可包括内部存储装置或连接的或网络可访问的存储器。存储器710中的计算机程序706可按照本领域已知的方式被装入存储器704中,并由处理器702执行。该体系结构还包括能够实现通过例如网络,与其它组件和/或计算机通信的一个或多个网卡708(例如光纤通道,与其它组件和/或计算机等通信的网际协议)。输入装置712用于把用户输入提供给处理器702,可包括键盘,鼠标,铁笔,麦克风,触摸显示屏,或者本领域中已知的任何其它激活或输入机构。输出装置714能够呈现来自处理器702,或者其它组件,例如显示监视器,打印机,存储器等的信息。计算机系统的计算机体系结构700可包括比图解所示组件少的组件,这里未图解说明的其它组件,或者图解说明的组件和另外组件的组合。
计算机体系结构700可包括本领域已知的任何计算装置,例如主机,服务器,个人计算机,工作站,膝上型计算机,手持式计算机,电话机,网络设备,虚拟化装置,存储器控制器等。可使用本领域已知的任何处理器702和操作系统705。
出于举例说明的目的,给出了本发明的实现的上述描述。上述描述并不是穷举的,或者并不意图把本发明局限于公开的具体形式。鉴于上述教导,许多修改和变化是可能的。本发明的范围不由该详细说明限定,而是由附加的权利要求限定。上述说明,例子和数据提供本发明的组成物的制造和使用的完整描述。由于在不脱离本发明的精神和范围的情况下,可做出本发明的许多实现,因此本发明归属于下面附加的权利要求。

Claims (26)

1.一种利用多个备用组件传输数据的方法,包括:
把关于某一部分数据的责任分配给第一备用组件;和
当在第一备用组件从主源收到关于该部分数据的数据更新时,把该数据更新镜像到未被赋予关于该部分数据的责任的第二备用组件,其中所述第一备用组件和第二备用组件用于将至少一部分数据更新从一个或多个主源传输到一个或多个辅助源,并且第一备用组件可以和第二备用组件通信。
2.按照权利要求1所述的方法,还包括:
当在未被赋予关于该部分数据的责任的第二备用组件从主源收到关于该部分数据的数据更新时,把数据更新转发给第一备用组件。
3.按照权利要求1所述的方法,还包括:
当在第一备用组件从不负责该部分数据的第二备用组件收到关于该部分数据的数据更新时,
向该数据更新分配一个序列号;和
通过把该序列号发送给第二备用组件,确认该数据更新的接收。
4.按照权利要求1所述的方法,还包括:
当在不负责该部分数据的第二备用组件收到关于该部分的数据更新时,保存该数据更新。
5.按照权利要求1所述的方法,其中第一备用组件和第二备用组件通过第一通信路径通信,其中第一备用组件和第二备用组件通过第二通信路径与主源通信。
6.按照权利要求1所述的方法,其中第一备用组件,第二备用组件和主源通过一个通信路径通信。
7.按照权利要求1所述的方法,还包括:
其中多个备用组件中的每一个都保持一个映射,该映射指定哪个备用组件负责哪部分数据。
8.按照权利要求1所述的方法,其中当多个备用组件之一把数据更新镜像到另一备用组件时,还包括:
连同镜像的数据更新一起发送顺序标识符;和
监视哪个备用组件发送该数据更新。
9.按照权利要求1所述的方法,其中当多个备用组件之一从另一备用组件接收镜像的数据更新时,还包括:
连同镜像的数据更新一起接收顺序标识符;和
监视哪个备用组件发送该数据更新。
10.一种利用一组备用组件处理数据更新的方法,包括:
确定新的备用组件有效;
在一致事务集形成时期的终点附近,把关于一个或多个部分数据的责任分配给该组中的每个备用组件以及新的备用组件,其中所述该组中的每个备用组件和新的备用组件用于将至少一部分数据更新从一个或多个主源传输到一个或多个辅助源,并且所述新的备用组件可以和所述该组中的每个备用组件通信;和
在下一个一致事件集形成时期中,利用该组中的每个备用组件和新的备用组件处理数据更新。
11.按照权利要求10所述的方法,其中新的备用组件成为该组备用组件的一部分。
12.一种利用一组备用组件处理数据更新的方法,所述一组备用组件包括第一备用组件和该组中的每个其它备用组件,所述第一备用组件和其它备用组件用于将至少一部分数据更新从一个或多个主源传输到一个或多个辅助源,并且所述第一备用组件可以和所述其它备用组件通信,所述方法包括:
确定该组中的所述第一备用组件不再可用;和
把关于所述第一备用组件被分配责任的各部分数据重新分配给该组中的每个所述其它备用组件。
13.按照权利要求12所述的方法,其中该组中正在镜像第一备用组件的数据更新的每个备用组件把数据更新镜像到负责数据更新对应的那部分数据的备用组件。
14.按照权利要求12所述的方法,其中重新分配一部分数据、并且具有关于该部分的数据更新的每个备用组件把数据更新镜像到另一备用组件。
15.按照权利要求12所述的方法,其中把数据更新镜像到第一备用组件的该组中的每个其它备用组件把数据更新镜像到另一备用组件。
16.一种利用多个备用组件传输数据的系统,包括:
把关于某一部分数据的责任分配给第一备用组件的装置;和
当在第一备用组件从主源收到关于该部分数据的数据更新时,把该数据更新镜像到未被赋予关于该部分数据的责任的第二备用组件的装置,其中所述第一备用组件和第二备用组件用于将至少一部分数据更新从一个或多个主源传输到一个或多个辅助源,并且第一备用组件可以和第二备用组件通信。
17.按照权利要求16所述的系统,还包括:
当在未被赋予关于该部分数据的责任的第二备用组件,从主源收到关于该部分数据的数据更新时,把数据更新转发给第一备用组件的装置。
18.按照权利要求16所述的系统,还包括:
当在第一备用组件从不负责该部分数据的第二备用组件收到关于该部分数据的数据更新时,
向该数据更新分配一个序列号的装置;和
通过把该序列号发送给第二备用组件,确认该数据更新的接收的装置。
19.按照权利要求16所述的系统,其中当多个备用组件之一把数据更新镜像到另一备用组件时,还包括:
连同镜像的数据更新一起发送顺序标识符的装置;和
监视哪个备用组件发送该数据更新的装置。
20.按照权利要求16所述的系统,其中当多个备用组件之一从另一备用组件接收镜像的数据更新时,还包括:
连同镜像的数据更新一起接收顺序标识符的装置;和
监视哪个备用组件发送该数据更新的装置。
21.一种利用一组备用组件处理数据更新的系统,包括:
确定新的备用组件有效的装置;
在一致事务集形成时期的终点附近,把关于一个或多个部分数据的责任分配给该组中的每个备用组件以及新的备用组件的装置,其中所述该组中的每个备用组件和新的备用组件用于将至少一部分数据更新从一个或多个主源传输到一个或多个辅助源,并且所述新的备用组件可以和所述该组中的每个备用组件通信;和
在下一个一致事件集形成时期中,利用该组中的每个备用组件和新的备用组件处理数据更新的装置。
22.按照权利要求21所述的系统,其中新的备用组件成为该组备用组件的一部分。
23.一种利用一组备用组件处理数据更新的系统,所述一组备用组件包括第一备用组件和该组中的每个其它备用组件,所述第一备用组件和其它备用组件用于将至少一部分数据更新从一个或多个主源传输到一个或多个辅助源,并且所述第一备用组件可以和所述其它备用组件通信,所述系统包括:
确定该组中的第一备用组件不再可用的装置;和
把关于第一备用组件被分配责任的各部分数据重新分配给该组中的每个其它备用组件的装置。
24.按照权利要求23所述的系统,其中该组中正在镜像第一备用组件的数据更新的每个备用组件把数据更新镜像到负责数据更新对应的那部分数据的备用组件。
25.按照权利要求23所述的系统,其中重新分配一部分数据,并且具有关于该部分的数据更新的每个备用组件把数据更新镜像到另一备用组件。
26.按照权利要求23所述的系统,其中已把数据更新镜像到第一备用组件的该组中的每个其它备用组件把数据更新镜像到另一备用组件。
CNB2005100509578A 2004-02-25 2005-02-24 任意数目的备用组件的系统体系结构用方法和系统 Active CN100388224C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/786,845 US7206911B2 (en) 2004-02-25 2004-02-25 Method, system, and program for a system architecture for an arbitrary number of backup components
US10/786,845 2004-02-25

Publications (2)

Publication Number Publication Date
CN1661563A CN1661563A (zh) 2005-08-31
CN100388224C true CN100388224C (zh) 2008-05-14

Family

ID=34861857

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100509578A Active CN100388224C (zh) 2004-02-25 2005-02-24 任意数目的备用组件的系统体系结构用方法和系统

Country Status (3)

Country Link
US (1) US7206911B2 (zh)
JP (1) JP4791051B2 (zh)
CN (1) CN100388224C (zh)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050216552A1 (en) * 2004-03-24 2005-09-29 Samuel Fineberg Communication-link-attached persistent memory system
US8949395B2 (en) * 2004-06-01 2015-02-03 Inmage Systems, Inc. Systems and methods of event driven recovery management
US8055745B2 (en) * 2004-06-01 2011-11-08 Inmage Systems, Inc. Methods and apparatus for accessing data from a primary data storage system for secondary storage
US7979656B2 (en) 2004-06-01 2011-07-12 Inmage Systems, Inc. Minimizing configuration changes in a fabric-based data protection solution
US8868858B2 (en) * 2006-05-19 2014-10-21 Inmage Systems, Inc. Method and apparatus of continuous data backup and access using virtual machines
US7698401B2 (en) * 2004-06-01 2010-04-13 Inmage Systems, Inc Secondary data storage and recovery system
US8224786B2 (en) * 2004-06-01 2012-07-17 Inmage Systems, Inc. Acquisition and write validation of data of a networked host node to perform secondary storage
US7676502B2 (en) * 2006-05-22 2010-03-09 Inmage Systems, Inc. Recovery point data view shift through a direction-agnostic roll algorithm
US9209989B2 (en) * 2004-06-01 2015-12-08 Inmage Systems, Inc. Causation of a data read operation against a first storage system by a server associated with a second storage system according to a host generated instruction
US7756833B2 (en) * 2004-09-22 2010-07-13 Microsoft Corporation Method and system for synthetic backup and restore
US7565581B1 (en) * 2004-09-23 2009-07-21 Emc Corporation Error handling policy
US8812433B2 (en) 2005-02-07 2014-08-19 Mimosa Systems, Inc. Dynamic bulk-to-brick transformation of data
US8918366B2 (en) 2005-02-07 2014-12-23 Mimosa Systems, Inc. Synthetic full copies of data and dynamic bulk-to-brick transformation
US8799206B2 (en) 2005-02-07 2014-08-05 Mimosa Systems, Inc. Dynamic bulk-to-brick transformation of data
US7657780B2 (en) * 2005-02-07 2010-02-02 Mimosa Systems, Inc. Enterprise service availability through identity preservation
US7313657B1 (en) * 2005-03-24 2007-12-25 Sprint Communications Company L.P. Conflict avoidance in data store replication
US7584226B2 (en) * 2005-05-24 2009-09-01 International Business Machines Corporation System and method for peer-to-peer grid based autonomic and probabilistic on-demand backup and restore
US8683144B2 (en) * 2005-09-16 2014-03-25 Inmage Systems, Inc. Causation of a data read against a first storage system to optionally store a data write to preserve the version to allow viewing and recovery
US8601225B2 (en) * 2005-09-16 2013-12-03 Inmage Systems, Inc. Time ordered view of backup data on behalf of a host
JP4773788B2 (ja) * 2005-09-29 2011-09-14 株式会社日立製作所 記憶システムにおけるリモートコピー制御
US7552295B2 (en) * 2006-01-03 2009-06-23 International Business Machines Corporation Maintaining consistency when mirroring data using different copy technologies
JP4577242B2 (ja) * 2006-03-10 2010-11-10 日本電気株式会社 データバックアップシステム、データバックアップ方法、及びその動作制御プログラム
JP4830562B2 (ja) * 2006-03-17 2011-12-07 株式会社日立製作所 情報処理システムのデータ入出力方法及び情報処理システム
US8554727B2 (en) * 2006-05-19 2013-10-08 Inmage Systems, Inc. Method and system of tiered quiescing
US8527721B2 (en) * 2008-12-26 2013-09-03 Rajeev Atluri Generating a recovery snapshot and creating a virtual view of the recovery snapshot
US8838528B2 (en) * 2006-05-22 2014-09-16 Inmage Systems, Inc. Coalescing and capturing data between events prior to and after a temporal window
US8527470B2 (en) 2006-05-22 2013-09-03 Rajeev Atluri Recovery point data view formation with generation of a recovery view and a coalesce policy
US8150805B1 (en) * 2006-06-30 2012-04-03 Symantec Operating Corporation Consistency interval marker assisted in-band commands in distributed systems
US7634507B2 (en) * 2006-08-30 2009-12-15 Inmage Systems, Inc. Ensuring data persistence and consistency in enterprise storage backup systems
JP2009015476A (ja) * 2007-07-03 2009-01-22 Hitachi Ltd Cdpリモート構成におけるジャーナル管理方法
US20090259678A1 (en) * 2008-04-11 2009-10-15 Valencia John Alcario Bluetooth volume tracker
US8447940B2 (en) * 2008-05-02 2013-05-21 International Business Machines Corporation Backup copy enhancements to reduce primary version access
US8028194B2 (en) * 2008-07-25 2011-09-27 Inmage Systems, Inc Sequencing technique to account for a clock error in a backup system
JP5217765B2 (ja) * 2008-08-13 2013-06-19 日本電気株式会社 ディスクアレイ装置間の遠隔データコピー方法、システムおよびプログラム
US8069227B2 (en) * 2008-12-26 2011-11-29 Inmage Systems, Inc. Configuring hosts of a secondary data storage and recovery system
JP5233733B2 (ja) * 2009-02-20 2013-07-10 富士通株式会社 ストレージ装置,ストレージ制御装置およびストレージ制御プログラム
US9411687B2 (en) 2011-06-03 2016-08-09 Apple Inc. Methods and apparatus for interface in multi-phase restore
US9465696B2 (en) * 2011-06-03 2016-10-11 Apple Inc. Methods and apparatus for multi-phase multi-source backup
US8868859B2 (en) 2011-06-03 2014-10-21 Apple Inc. Methods and apparatus for multi-source restore
US8819471B2 (en) 2011-06-03 2014-08-26 Apple Inc. Methods and apparatus for power state based backup
US9372910B2 (en) * 2012-01-04 2016-06-21 International Business Machines Corporation Managing remote data replication
US9542423B2 (en) 2012-12-31 2017-01-10 Apple Inc. Backup user interface
US9558078B2 (en) 2014-10-28 2017-01-31 Microsoft Technology Licensing, Llc Point in time database restore from storage snapshots
CN107911159A (zh) * 2017-10-12 2018-04-13 北京电子工程总体研究所 一种基于wifi协议的星载无线容错通讯系统
CN112805949B (zh) * 2018-10-01 2022-08-09 华为技术有限公司 处理快照创建请求的方法以及存储设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504861A (en) * 1994-02-22 1996-04-02 International Business Machines Corporation Remote data duplexing
US5734818A (en) * 1994-02-22 1998-03-31 International Business Machines Corporation Forming consistency groups using self-describing record sets for remote data duplexing
US6003044A (en) * 1997-10-31 1999-12-14 Oracle Corporation Method and apparatus for efficiently backing up files using multiple computer systems
CN1276564A (zh) * 1999-06-03 2000-12-13 国际商业机器公司 数据处理器存储系统
US6341340B1 (en) * 1998-12-28 2002-01-22 Oracle Corporation Transitioning ownership of data items between ownership groups
US20030149736A1 (en) * 2002-02-07 2003-08-07 Microsoft Corporation Method and system for transporting data content on a storage area network

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US88746A (en) * 1869-04-06 Improvement in asphaltic pavement
US5615329A (en) * 1994-02-22 1997-03-25 International Business Machines Corporation Remote data duplexing
JP3403920B2 (ja) * 1997-06-18 2003-05-06 株式会社日立製作所 記憶システムおよび記憶制御装置
EP1008048B1 (en) * 1997-08-29 2001-10-31 Hewlett-Packard Company Data backup and recovery systems
JP4689137B2 (ja) * 2001-08-08 2011-05-25 株式会社日立製作所 リモートコピー制御方法、及びストレージシステム
US6959368B1 (en) * 1999-06-29 2005-10-25 Emc Corporation Method and apparatus for duplicating computer backup data
US6463501B1 (en) * 1999-10-21 2002-10-08 International Business Machines Corporation Method, system and program for maintaining data consistency among updates across groups of storage areas using update times
JP4434407B2 (ja) * 2000-01-28 2010-03-17 株式会社日立製作所 サブシステム及びこれらの統合システム
JP2002189570A (ja) * 2000-12-20 2002-07-05 Hitachi Ltd 記憶システムの二重化方法および記憶システム
JP3997061B2 (ja) * 2001-05-11 2007-10-24 株式会社日立製作所 記憶サブシステムおよび記憶サブシステムの制御方法
JP2003076592A (ja) 2001-09-04 2003-03-14 Hitachi Ltd データ格納システム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504861A (en) * 1994-02-22 1996-04-02 International Business Machines Corporation Remote data duplexing
US5734818A (en) * 1994-02-22 1998-03-31 International Business Machines Corporation Forming consistency groups using self-describing record sets for remote data duplexing
US6003044A (en) * 1997-10-31 1999-12-14 Oracle Corporation Method and apparatus for efficiently backing up files using multiple computer systems
US6341340B1 (en) * 1998-12-28 2002-01-22 Oracle Corporation Transitioning ownership of data items between ownership groups
CN1276564A (zh) * 1999-06-03 2000-12-13 国际商业机器公司 数据处理器存储系统
US20030149736A1 (en) * 2002-02-07 2003-08-07 Microsoft Corporation Method and system for transporting data content on a storage area network

Also Published As

Publication number Publication date
JP4791051B2 (ja) 2011-10-12
US7206911B2 (en) 2007-04-17
JP2005243026A (ja) 2005-09-08
CN1661563A (zh) 2005-08-31
US20050188165A1 (en) 2005-08-25

Similar Documents

Publication Publication Date Title
CN100388224C (zh) 任意数目的备用组件的系统体系结构用方法和系统
CN100403272C (zh) 用于处理到远程存储位置的故障恢复的方法、系统
US6148383A (en) Storage system employing universal timer for peer-to-peer asynchronous maintenance of consistent mirrored storage
US9501542B1 (en) Methods and apparatus for volume synchronization
CN101681383B (zh) 用于数据库管理系统的数据复制方法及系统
CN1996309A (zh) 使用不同复制技术执行数据镜像时保持一致性的方法系统
US7120769B2 (en) Point in time remote copy for multiple sites
CN101221573B (zh) 将储存库还原到先前状态的方法
CN100383749C (zh) 远程复制方法及远程复制系统
JP2894676B2 (ja) 非同期式遠隔コピー・システム及び非同期式遠隔コピー方法
JP4813924B2 (ja) データベース管理システム、ストレージ装置、ディザスタリカバリシステム及びデータベースのバックアップ方法
US7017003B2 (en) Disk array apparatus and disk array apparatus control method
US7934065B2 (en) Computer system storing data on multiple storage systems
CN100585566C (zh) 利用日志同步数据库数据非同步传送的恢复方式及装置
CN100428177C (zh) 数据同步方法、系统和程序
CN1983153B (zh) 数据处理系统中执行远程复制的方法和存储数据的方法
CN100524236C (zh) 存储控制装置及其数据管理方法
US7055059B2 (en) Remote data mirroring
CN100365586C (zh) 用于提供数据的镜象副本的方法、系统
US7650369B2 (en) Database system management method and database system
CN100495354C (zh) 在耦合会话环境内合并一簇会话的会话信息的方法和系统
DE602005002532T2 (de) Cluster-datenbank mit ferndatenspiegelung
CN101094154B (zh) 一种多主控模式的数据备份异地保护系统以及保护方法
US20050071710A1 (en) Method, system, and program for mirroring data among storage sites
CN101038565A (zh) 用于管理存储系统之间的数据拷贝的系统和方法

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