CN1291320C - 保存大容量存储系统的所选数据的快照 - Google Patents

保存大容量存储系统的所选数据的快照 Download PDF

Info

Publication number
CN1291320C
CN1291320C CNB028237064A CN02823706A CN1291320C CN 1291320 C CN1291320 C CN 1291320C CN B028237064 A CNB028237064 A CN B028237064A CN 02823706 A CN02823706 A CN 02823706A CN 1291320 C CN1291320 C CN 1291320C
Authority
CN
China
Prior art keywords
data
data block
block
mass storage
backup
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 - Lifetime
Application number
CNB028237064A
Other languages
English (en)
Other versions
CN1596400A (zh
Inventor
理查德·S·奥赫兰
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.)
EMC Inc
Original Assignee
EMC Inc
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 EMC Inc filed Critical EMC Inc
Publication of CN1596400A publication Critical patent/CN1596400A/zh
Application granted granted Critical
Publication of CN1291320C publication Critical patent/CN1291320C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency
    • 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
    • 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

Abstract

使用最小的数据传送来保持逻辑一致的备份。创建并存储原始数据的备份、或抽点、复本。用户在创建数据的下一个抽点复本(30)的处理中指定要备份(32)的数据块(29)。要备份(32)的数据块可能包括和具有用户所感兴趣数据的有效文件相关联的那些。不需要备份的数据块可能包括,例如,交换文件,打印机缓冲器和临时文件。在经过特定时间阶段之后,将对指定(29)为要备份的数据块做出的改变(28)应用(32)到抽点复本。因为仅将需要的数据块备份(32)到抽点复本(30),相比将所有数据块备份到抽点复本,更为有效地使用了存储器、处理周期和通信带宽。

Description

保存大容量存储系统的所选数据的快照
技术领域
本发明涉及计算机数据的保护,并且具体的说涉及一种用于仅对一个或多个大规模存储系统上的特定扇区采取快照副本的系统和方法。
背景技术
计算机已经成为大多数商业操作的一个整体扇区。在一些情况中,计算机是如此的重要以致当它们停止工作时,就无法进行商业操作。银行,保险公司,经纪公司,金融服务提供商,以及各种其他公司依靠计算机网络来存储、操控、并显示经常改变的信息。交易的成功或失败可能由准确和及时的信息是否可用来决定。服务提供商的信誉,或者他本身的存在与否,都可能依靠在计算机网络上保持的信息的可靠性。世界范围内的公司认识到它们数据的商业价值,并且在寻找可靠的、投资有效的方式来通过可靠的备份数据以此保护存储在它们的计算机网络上的信息。
通常,将比如交换文件、打印机缓冲器、自由扇区表(freesector table)以及“临时”文件的文件进行备份,即使那些文件通常不需要被备份。备份不需要的文件引起对处理时间、通信带宽和备份存储器容量的浪费。为了避免备份不需要的信息,开发了一种系统,凭借其可以选择单独的文件用于备份。(1)通过添加软件层来截取所有文件系统命令和(2)通过定义两个类型的文件:跟踪的和不跟踪的,来操作这些系统。对于跟踪的文件,系统提供文件的备份版本和更新版本。备份版本是在启动备份时存在的文件;更新版本是文件的当前版本,包括任何在启动备份后做出的更改。对于不跟踪的文件,仅当前(或更新)的版本可用。基本上,系统的作用就像存在软件层来截取文件系统命令一样。
通过存储文件更改,软件层提供文件的备份和更新版本,这样当启动备份时,它们不会重写已存在的原始文件数据。通过截取所有文件系统命令,系统可以提供文件的合适版本到程序请求入口。例如,当备份程序做出读取请求时,软件层提供所请求数据的备份版本。其他做出读取请求的程序接收文件数据的更新版本。
当仅跟踪少量文件时,截取所有文件系统命令的软件层是合适的解决方案。但是,随着跟踪文件数量的增加,该解决方案被证明是无法工作的。问题在于,该软件层实质上执行文件系统的工件。对于跟踪的文件,由操作系统执行的每一文件操作也以一个形式或另一形式由软件层执行。随着文件数量增加,软件层变得过载并且性能下降,从而系统不可用。
软件截取层还忽略可能在文件之间存在的关系。如上所述,存储在文件中的数据保持一致是不够的。在一个文件中存储的数据可能和存储在一个或多个其他文件中存储的数据有关。现有技术的软件层仅能够保证在备份处理中文件可访问。它没有提供包括备份操作的所有文件中数据的逻辑一致设置。因此,因为在所存储数据中的不一致,而使这个类型的软件层中所做出的备份可能不是那么有益。
因此,在现有技术中,具有用于仅备份需要备份的数据并保持文件之间关系的高效系统将表示一个进步。
发明内容
由本发明成功克服了在现有技术中的上述问题,本发明涉及一种用于仅对那些需要受保护的数据块来备份原始数据到那个数据的抽点复本的系统和方法。相对现有技术,当前的系统和方法提供四个显著的优点。首先,通过仅备份那些发生了变化的并被指定为需要备份的文件的、主大规模存储设备的数据块,本发明的备份系统和方法减少了需要备份的数据量。第二,因为通过仅备份那些需要备份的数据而将备份的数据量减少到绝对最小,因此,本发明的系统和方法提供对存储区域的更为高效的使用。第三,通过保证在进行备份时主存储设备处在逻辑一致状态,本发明的系统和方法强调了备份的准确性。第四,因为需要进行备份的数据减少到绝对最小,并且因为仅在逻辑一致状态进行备份,因此,备份频率可以增加。
本发明的方法开始时假定:对于指定进行备份的数据块,原始数据和该数据的抽点复本至少包括同样的数据。可能通过例如使用现有的备份技术或现有的磁盘镜像技术制作原始数据完全复本到抽点复本来实现这一点。一旦原始数据和抽点复本包括相同数据,本发明创建映射或另一数据结构,以列出所有改变了的数据块,跟踪在主大规模存储设备上对数据块发生的改变,识别该改变的数据块,并且从那些不需要备份的数据块中指定需要备份的数据块。通过识别在抽点复本和原始数据同步的时间起,那些在原始数据中的写入了新数据的存储位置来实现跟踪。识别那些对原始数据所做出的改变指示出需要对抽点复本做出的改变,以使得备份存储设备和主大规模存储设备同步(current)。将需要对备份存储设备做出的改变登记在列表或表中。
系统允许识别并将列表或表分离为需要备份的信息和不需要备份的信息。可以通过标记需要的信息,或通过标记不需要的信息来实现这个分离。在表中信息的识别和分离将备份的信息量减少到仅需要备份的信息量,这样增加了备份处理的速度,并且通过减少备份的信息量更为有效地使用了存储空间。另外,该识别和分离防止了将不需要的信息包括在备份中。
一旦识别了需要对原始数据做出的改变,将此改变发送到抽点复本。之后抽点复本具有所有可用数据,以使得备份存储设备和主大规模存储设备同步。为了在备份处理中保存原始数据,采取原始数据的静态抽点。这个静态抽点捕获已经对原始数据做出的改变和需要被传送到抽点复本的改变。为了使得备份对用户透明,优选的按以下方式采取静态抽点:使用户对大规模存储设备的访问不被中断。
为了确定何时应该做出静态抽点,本发明包括识别原始数据何时处在逻辑一致状态的机构。通过识别逻辑一致状态并且之后采取直到那个时间点之前所做出改变的静态抽点,当将此改变传送到抽点复本时,保证抽点复本捕获了逻辑一致状态。通过捕获连续逻辑一致状态的抽点,抽点复本可以逐一捕获逻辑一致状态。以这种方式,如果一旦需要抽点复本,则抽点复本就处在逻辑一致状态。抽点复本从一个逻辑一致状态移动到另一个逻辑一致状态,从而消除了现有技术的其中一个问题。
因为本发明采取数据块方法来备份大规模存储系统,并且因此仅备份那些被指定为受保护的数据块,因此,本发明将在做出备份时将需要被传送的数据量最小化到绝对最小可能。例如,如果大的数据库具有五个改变的记录,则现有技术的系统将复制该整个大的数据库。但是,本发明仅复制五个改变了的记录。因为数据量被最小化,因此,本发明特别适于备份数据到位于远程站点的备份系统。本发明可以使用低带宽通信链路来传送备份数据到远程备份站点。作为实例,在很多具有56.6Kb波特调制解调器的现有拨号电话线路的情况下已经完全足够了。
本发明的另外的优点将在下面的描述中提出,并且从描述中其部分会变得显而易见,或可从本发明的实践中学习。可能通过在附加权利要求中特别指出的工具和它们的组合的方式实现和获得本发明的优点。通过下面的描述和附加的权利要求,或通过从如在这里提出的本发明的实践中学习,本发明的这些和其他特征将变得更加完全显而易见。
附图说明
为了描述获得本发明的上述和其他优点和特征的方式,参考在附图中示出的本发明特定实施例,将给出对发明上述大致描述的特别描述。了解到这些附图仅示出了本发明的典型实施例,并且因此不能认为是在限制它的范围,通过使用附图,将更为具体和详细的描述和解释本发明,附图中:
图1是一方框图,示出了本发明的系统;
图2是示出了本发明的一个方法的时序图;
图3是本发明的一个实施例的系统级的方框图;
图4示出了图3的大规模存储读取/写入处理块的一个实施例的处理细节;
图5示出了图3的主备份处理块的一个实施例的处理细节;
图6示出了图3的备份读取处理块的一个实施例的处理细节;
图7A和7B是示出了根据本发明的一个实施例的方法实例的视图;并且
图8A和8B是示出了根据本发明的一个实施例的方法实例的视图。
具体实施方式
本发明扩展到用于仅对那些需要从大规模存储装置中备份的数据扇区采取抽点的系统和方法,而不是对在那个大规模存储装置中的所有数据采取抽点。因为仅对需要的数据采取抽点,因此,本发明在提供位于大规模存储装置中的数据备份复本中,最优化了时间和存储空间。
通过使用示出了实现本发明的系统和方法的特定实施例的结构或处理过程的视图来描述本发明。以这样的方式使用该视图来表现本发明不应该被解释为对本发明范围的限制。可通过通用或专用计算机来实践本发明,并且所有这些计算机系统都应该被包括在本发明的范围中。
在本发明范围内的实施例还包括在其中具有编码的计算机可执行指令或数据结构的计算机可读介质。这种计算机可读的介质可以是任何可由通用或专用计算机访问的可用介质。通过实例的方式,并且不是限定性的,这种计算机可读介质可以包括:RAM,ROM,EEPROM,CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备,磁光存储设备,或任何其他可以用来存储所需的计算机可执行指令和数据结构并且可由通用或专用计算机访问的介质。上述的组合也应该包括在计算机可读介质的范围中。反过来说,CPU的寄存器或其他存储计算机可执行指令或数据结构并同时解码和执行它们的处理单元也包括在计算机可读介质的范围中。计算机可执行指令包括:例如,使得通用计算机或专用计算机执行某些功能或功能组的可执行指令和数据。
术语“数据块”用来描述写入大规模存储装置或从大规模存储装置读取的数据的块。术语“数据块”意在被广泛的解释并且应该包括任何大小或格式的数据。例如,存储在盘上的单独扇区中的数据可以被合适的称为数据块。在扇区的组或群中存储的数据量可能也被合适的称为数据块。如果大规模存储装置是RAM或可访问存储设备的其他字或字节,则应该将术语数据块应用到数据的字节、字、或多个数据字单元。另外,术语“需要的数据块”用来描述被指定为进行备份的数据块,而且术语“不需要的数据块”用来描述不被指定为进行备份的数据块。
现在参考图1,示出了本发明的合适操作环境的系统级方框图。通常被示为10的系统包括:计算机系统12,其可能是任何类型的联网或独立计算机系统。例如,计算机系统12可能是和比如计算机网络18的计算机网络相连接的网络服务器计算机。计算机系统12还可能是独立系统。
在计算机系统12上附装有大规模存储装置,其用于在多个存储位置中存储多个数据块。每一存储位置由唯一地址或其他机构规定。大规模存储装置可以是任何存储数据块的存储机构。例如,这种大规模存储装置可能包括一个或多个磁或磁光的盘驱动。在图1中,例如,由大规模存储设备20示出这种大规模存储装置。
大规模存储设备20包括:原始数据14,其包括需要备份的数据块以及不需要备份的数据块。不需要备份的数据块的实例是交换文件、自由扇区表、打印机缓冲器、具有“.tmp”扩展的临时文件、以及其他不需要备份的文件。
大规模存储设备20可能还包括:在原始数据中数据块的抽点复本(snapshot copy,又称快照副本),该原始数据是需要被备份作为那些特定时间点存在的数据块。因此,“快照”副本指的是该副本已捕获了存在于一个时刻时间的所需数据块这样的事实。虽然示出快照副本16位于和原始数据相同的大规模存储设备中所包括的数据存储位置中,但是,另外的情况中,快照副本16可能位于不同存储设备的数据存储位置中。在一些情况中,通过比如计算机网络18的通信介质,计算机系统12将快照数据写入到不同的存储设备。但是,在这里描述的实例实施例中,快照副本16被存储在和原始数据14相同的大规模存储设备20中。
如在下面详细所述的,在本发明范围中的实施例在备份处理中使用全部或部分对应于所需数据块的大规模存储设备的快照副本。因此,在本发明范围中的实施例包括:保存存储器装置,其用于暂时存储所述大规模存储装置的数据块,从而在特定时间点为所需数据块创建大规模存储装置的静态快照。如在下面详细所述的,这种保存存储器装置可能包括:任何类型的可写存储设备,比如RAM,EEPROM,磁盘存储器,以及类似物。这种保存存储器装置可能还包括大规模存储设备20的一部分。在图1中,例如,以快照存储设备22示出了这种保存存储器装置。将在下面详细讨论保存存储器装置。
因为计算机系统12可以是任何类型的通用或专用计算机,因此,计算机系统12可能还包括任何其他构成通用或专用计算机的硬件。例如,计算机系统12可能还包括用于执行可编程代码装置的处理器装置。该处理器装置可以是微处理器或其他CPU设备。该处理器装置可能还包括多种专用处理器,比如数字信号处理器和类似物。计算机系统12可能还包括其他现有的计算机组件,比如用于向用户显示输出户的显示装置,用于输入数据给计算机系统12的输入装置,用于输出硬件复本打印输出的输出装置,比如RAM、ROM、EEPROM和类似物的存储器装置。
接下来参考图2,其示出了一种用来将比如图1的原始数据14的原始数据备份为比如图1的抽点复本16的抽点复本的概括方法。开始时,图2所示的方法假定,就所需的数据块而言,原始数据14和抽点复本16都是当前的。在本说明书和权利要求中,“当前的”意味着抽点复本包括原始数据14所有所需数据块的当前复本。在图2中,假定抽点复本16在时间T0具有原始数据14的当前复本。
在时间T0开始,图2概括的方法使抽点复本16相对于原始数据14保持在当前状态。在图2中概括的方法捕获连续的逻辑一致状态。在抽点复本16中的这个结果要么从一个逻辑一致状态移动到接下来的逻辑一致状态,要么允许抽点复本16捕获连续的逻辑一致状态。这相对于现有技术系统创建了极大的优点,可以使备份存储设备留在逻辑一致状态中。通过保证备份设备在逻辑一致状态,本发明保证了可使用的抽点复本是总是可用的。
现在返回图2,在时间T0开始跟踪原始数据14对应于所需数据块的改变。这在图2中由块28示出。优选的通过识别从时间T0开始在其中具有写入有新数据的大规模存储设备的数据块和是所需数据块的数据块来跟踪这种改变。如在下面详细解释的,可以通过保持识别那些具有从时间T0开始在其中写入有新数据的数据块的映射并通过保持所需数据块的映射来实现。
在一些时间点,需要捕获在原始数据14中对所需数据块做出的改变并且将那些改变传送到抽点复本16。在优选实施例中,系统识别主大规模存储设备的逻辑一致状态并且对从时间T0开始改变的至少所需数据块采取静态抽点。在图2中,逻辑一致状态被识别为时间T1并采取抽点。
将静态抽点设计成当在特定时间点存在数据时来对它进行保存,使得即使在抽点时间之后对原始数据做出改变,在特定时间点之后,所需数据块还可以保持在它们存在于抽点时间的状态。存在很多创建这种静态抽点的方式。任何这种方法可和本发明一起工作,但是,因为多种优点,使一些方法可能比其他方法更为优选。下面将详细描述如何采取静态抽点和用于创建静态抽点的优选方法。但是,对于这个概括,了解任何创建静态抽点的方法可用于本发明是很重要的。但是,采取静态抽点而不终止用户对大规模存储设备的读取或写入访问是优选的。
要么立即在时间T0之后,要么在计算资源在时间T0之后变得可用的时间过程中,使用映射或另一数据结构来指定备份所需的数据块。可以通过识别所需数据块来直接指定备份所需的数据块,或者也可以通过指定不需要备份操作的数据块来进行暗示。可能响应于用户识别文件或备份或不备份的文件类型来识别并指定这些数据块。之后,文件系统可能用来将这些文件映射到特定数据块。虽然前述技术可以用于指定备份的数据块,但是,本发明可以应用到其他用于识别和指定备份的数据块的技术来进行实践。例如,在图2的时间阶段29中,发生了指定需要备份操作的数据块的处理。
在时间T1,通过将其发送到抽点复本16,来备份在时间T0和时间T1之间所识别的所需数据块的改变。这在图2中由箭头30和块32示出。通过发送原始数据14的数据块来发送该改变到抽点复本16,该原始数据仅存储在那些在时间T0和时间T1之间写入了新数据的存储位置中,且该原始数据仅是被指定为受保护的数据块所需的。
因为在时间T1由抽点保存数据,因此,即使将新的数据在时间T1之后写入到大规模存储设备中,数据仍可用于传送到备份存储设备。使用映射或其他机构来识别应该被传送到备份存储设备的数据,该映射或其他机构是用来跟踪在时间T0和时间T1之间哪个存储位置具有写入其中的数据,并且用来指定需要备份的数据块。这样,仅发送对所需数据块的递增改变,并且除非整个文件改变,否则就不传送整个文件。另外,即使那些不需要的数据块存在有改变,也不发送它们。
要么立即在时间T1之后,要么在计算资源在时间T1之后变得可用的时间中,在时间阶段33使用映射或以上述参考时间阶段29所描述方式的另一数据结构来指定备份所需的数据块。另一种选择是,先前被指定为进行备份的、或等效的、不被备份的相同数据块可以继续到新的抽点中。在这个替代的方法中,用户不需要重复指定备份的数据块。上述确定先前的指定是否继续到新抽点的因素包括:抽点的频率,用户的偏好,以及从先前抽点起文件结构是否改变。
因为当执行备份时在时间T1之后可以将新的数据写入原始数据,因此,如果在时间T1之后做出另一备份,则使用一机构来识别在时间T1之后做出的改变。在图2中,如块34所示,对在时间T1之后的改变进行跟踪。这允许在时间T1之后对所需数据块做出的改变也被传送到抽点复本16,以使抽点复本16同步于稍后时间。
如图2所示,在时间T2上述顺序自行重复。这由箭头36,时间阶段37,块38和块40所示。如前所述,在时间T2采取的抽点应该表示逻辑一致状态,使得当在时间T1和T2之间对所需数据块做出的改变被传送到抽点复本16时,使抽点复本16成为在时间T2和逻辑一致状态同步。
从上面的概括可以做出一些意见。第一个意见是,本发明仅备份存储在从上次备份开始发生改变的存储位置中的数据。这相对现有技术具有显著优势。例如,考虑其中仅少量数据记录发生改变的数据库。如果发生改变,则现有技术系统将尝试备份整个数据库。但是,本发明仅备份那些因为数据库更改而实际上发生改变的少量数据块。另外,如将在下面详细解释的,本发明允许将已改变的数据块指定为需要备份的或不需要备份的。因此,只有在第一时刻和第二时刻之间发生的改变的、并需要备份的数据块被发送到抽点复本16。这样,存储器处理周期和通信带宽不会浪费在存储不需要备份的数据块备份复本。
另一和现有技术的重要不同也在上述描述中强调。本发明在当采取抽点时存在数据的时间来捕获它。本发明不是尝试将对原始数据14做出改变的时间顺序发送到抽点复本16。例如,如果在做出上次备份时间和当前备份时间之间,数据库的单一记录改变了十次,则某些现有技术系统将会发送十个改变到备份存储设备。但是,本发明只是简单的发送在当前备份时间之前做出的最后改变。在这个实例中,这个方案将发送到备份设备的数据量减小了十倍。本发明将发送到备份设备的数据量减少到需要做出逻辑一致备份的最小量。因此,本发明理想的适于其中抽点复本位于计算机系统12的远程站点的实施例。当备份系统位于远程站点时,现有的拨号电话线路可以用来在主系统和备份系统之间传送备份数据。
接下来转到图3,示出了实现在图2中所总结的方法的一个实施例的顶级视图。下面的描述呈现了每一图3所示的处理块的顶级概况。之后呈现每一处理块的细节。
在计算机系统的正常操作过程中,数据是周期性向或从附加的比如大规模存储设备20的大规模存储装置中写入或读取。因此,在本发明范围内的实施例包括:用于向大规模存储设备写入数据的装置和用于从大规模存储设备中读取数据的装置。在图3中,例如,通过大规模存储读取/写入处理块42示出了这种装置。虽然之后会呈现大规模存储读取/写入处理块42的细节,但是,大规模存储读取/写入处理块42的基本功能是将数据块写入主大规模存储设备20上的已识别存储位置,或从主大规模存储设备20上的已识别存储位置读取数据块。在图3中,从或向已识别存储位置读取或写入数据块的请求由大规模存储读取/写入请求44示出。每当请求读取或写入时,大规模存储读取/写入处理块42可以返回如大规模存储读取/写入响应46所示的响应。该响应可以包括:完成代码或其他所请求的操作和所请求的数据(在读取请求的情况中)成功或失败的指示符。
如结合图2所述的,本发明的方法跟踪在第一时刻和第二时刻之间发生的改变。因此,在本发明范围中的实施例包括:用于识别在第一时刻和第二时刻之间哪个原始数据14的存储位置存储了新数据在其中的装置。任何用于识别和跟踪这个位置的方法可以结合本发明使用。需要的只是可以识别从最后备份时起存储了新数据在其中的存储位置。在图3中,例如,由备份映射48示出了这种装置。备份映射48可以包括:用于主大规模存储设备20上的每一数据块的布尔入口。当数据块具有写入其中的新数据时,可以设置用于数据块的入口。另一选择是,还可以保持其中存储有新数据的数据块的列表。需要的只是区分和识别从特定时间点开始在其中存储有新数据的数据块。
如前所述,当做出备份时,至少对所需数据块做出静态抽点。因此,在本发明范围内的实施例包括:用于在特定时刻保存静态抽点的装置。使用静态抽点是优选的,因为它允许用户在对改变进行备份时来继续访问主大规模存储设备20。因为它需要一段时间来将该改变从原始数据14传送到抽点复本16,因此要被传送的数据必须保持未改变,直到其被发送为止。如果抽点复本16没有位于大规模存储设备20中,一种保证数据保持不变的方法是防止访问主大规模存储设备20。这可以防止将任何数据写入主大规模存储设备20,并保证备份的数据保持不变,直到将其传送到抽点复本16。不幸的是,十分不需要这个解决方法。因此,优选的是,当将该改变传送到抽点复本16时,至少对将被传送的数据采取静态抽点。这种静态抽点将被传送的数据保存在原始条件,直到其被传送为止,同时允许继续访问大规模存储设备20,从而可以继续将数据写入其中或从其中读取。
任何保存静态抽点的方法可以结合本发明使用。但是,优选的是,不论使用哪种方法都能够保存静态抽点,而不中断对主大规模存储设备20的访问。换句话说,优选以用户可以继续从大规模存储设备20中读取数据并将数据写入其中的方式来保存该静态抽点。
在图3中,由抽点处理块50示出用于保存静态抽点的装置。如图3所示,将抽点处理机构结合到大规模存储读取/写入处理块是有意义的。虽然下面呈现了抽点处理块50的细节,但是,一个优选实施例通过将要被重写的原始数据14的数据块从原始数据14复制到抽点存储器22来保存静态抽点,并之后在抽点映射52中指示出该块已经被保存在抽点存储器22中。一旦将该复本放入抽点存储器22,则可以重写在原始数据14中的数据块复本。
如上结合图2所述的,如果做出连续备份的系列,则在做出备份的时间过程中,需要跟踪对原始数据14做出的改变。换句话说,需要在做出抽点之后跟踪对原始数据14所做的改变。在本发明范围内的实施例可以包括:装置,其用于识别在做出抽点的时间点之后在其中存储有新数据的原始数据14的存储位置。可以使用任何类型机构,该机构跟踪和识别在特定时间点之后在其中存储有新数据的大规模存储设备的存储位置。例如,可以使用类似于备份映射48的映射。作为另一实例,可以使用在特定时间点之后在其中存储有新数据的数据位置列表。根据使用的抽点机构的类型,抽点机构可能固有的跟踪这种信息。在这种实施例中,可能保存这个信息以用于之后的使用。在图3中,通过抽点映射52示出了这种装置。如下面详细描述的,抽点机构的一个实现方案跟踪在抽点映射(比如图3的抽点映射52)中做出抽点之后在其中存储了新数据的存储位置。
在本发明范围内的实施例包括:用于传送备份的数据块到抽点复本的装置。在图3中,例如,通过主备份处理块54示出这种装置。虽然在下面详细呈现主备份处理块54的细节,但是通用的主备份处理块54是采取备份的数据块,并且将那些数据块传送到抽点复本16。如结合图2所述的,并且如在下面详细所述的,被传送的数据块是那些从最后的备份开始已被存储在大规模存储设备上的存储位置中的所需数据块。
主备份处理块54可以结合启动备份和传送数据到抽点复本16的功能。在下面将更为详细的呈现如何启动备份的细节。
在呈现本发明方法的概况的图2的讨论中,静态抽点用于在特定时间点保存已改变的所需数据块的状态。之后将那些改变的所需数据块退回到抽点复本16。如果由静态抽点来保存改变的所需数据块,则那么在将所需数据块传送到抽点复本16之前,必须对其检索。因此,在本发明范围内的实施例可以包括:用于检索由静态抽点保存的所需数据块的装置。这种装置可以是用于将所需数据块传送到抽点复本16的装置的一部分或者这种装置可以是分离的。在图3中,由备份读取处理块56示出用于检索由静态抽点保存的所需数据块的装置。下面呈现备份读取处理块56的一个实施例的细节。这个处理块从它的存储位置中检索保存的数据,并且将检索的数据块传递到主备份处理块54,以传送到抽点复本。可以将这个功能结合到主备份处理块54中。但是,为了强调由备份读取处理块56执行的功能,在图3中分开的示出块。
将本发明成在抽点复本16为所需数据块捕获一个或多个逻辑一致备份状态。为了捕获这些逻辑一致备份状态,在本发明范围内的实施例可以包括:用于确定何时获得逻辑一致状态的装置。逻辑一致状态是其中在大规模存储系统上不存在逻辑不一致(比如不当终止的文件)的状态。逻辑一致状态可以由若干机构业识别。例如,逻辑一致状态可以由监视在大规模存储设备上的活动来识别。当大规模存储设备上不存在活动时,通常可以假定已经刷新了所有内部数据缓冲器并且它们的数据已经写入了该大规模存储系统,而且该大规模存储系统没有处于更新数据块的状态。另外,可以存在API,可调用其来识别何时达成逻辑一致状态。例如,操作系统或其他程序可以具有API调用,该调用可在返回何时达成逻辑一致状态时做出。作为再一实施例,系统可能向所有和网络连接的用户广播将在给定时间采取抽点的消息。之后,如果需要的话,用户可以采取合适的步骤来保证他们文件的逻辑一致状态。也可以使用其他机构。作为将在下面详细描述的,用于确定何时获得逻辑一致状态的装置可能结合到图3的处理块中的一个,例如,主备份处理块54。
现在参考图4,呈现了大规模存储读取/写入处理块42的一个实施例。如前所述,大规模存储读取/写入处理块42的功能是向或从大规模存储设备20中读取或写入数据。另外,假定抽点处理块50结合到读取/写入处理块42中,那么处理块42还负责为所需数据块在特定时间点保存并保持大规模存储设备20的静态抽点。图3中呈现的实现方案将抽点处理块50结合为整体功能。但是,如前所述,还可能分开地实现抽点处理块50。对于将抽点处理块50结合到大规模存储读取/写入处理块42中或分开实现抽点处理块50的选择被认为是设计上的选择,对于本发明的目的是不重要的。本发明的重要的方面是要包括了从或向大规模存储器设备存储设备中读取数据或写入数据的能力,以及在特定时间点至少保存并保持大规模存储设备20一部分的静态抽点的能力。
现在转到图4,判断块66首先测试是否做出了抽点请求。这个判断块识别结合到大规模存储读取/写入处理块42的抽点处理功能是否应该对图3的大规模存储设备20的至少一部分采取抽点。通过主备份处理块54产生抽点请求68。主备份处理块54在发布这种抽点请求之前首先识别逻辑一致状态。另一选择是,可将用于识别逻辑一致状态的装置结合到大规模存储读取/写入处理块42的抽点处理能力中。在这个情况中,之后大规模存储读取/写入处理块42识别逻辑一致状态并采取抽点。这种细节是设计上的选择,并且对于本发明的关注点来说不重要。
现在返回图4,如果接收了抽点请求,那么下一步是保存对应于所需数据块的大规模存储设备20的至少一部分的静态抽点。虽然本发明可以使用任何保存静态抽点的装置,但是,优选的使用特定处理来保存静态抽点。在步骤70、72、74、判断块84和85、以及下面所述的步骤86中总结了该优选的方法。本发明在名称为“Method andSystem for Providing a Static Snapshot of Data Stored on a Mass StorageSystem”的美国专利No.5,649,152中更为具体的描述。本质上,保存静态抽点的优选方法使用抽点存储器,比如图3的抽点存储器22,来保存被用新数据重写的大规模存储设备(比如图3的大规模存储设备20)的数据块。如下面详细解释的,将保存的数据块首先复制到抽点存储器中,并且对指示数据块已被保存的记录进行更新。这种记录可以存储在,例如,图3的抽点映射中。之后将新数据写入到大规模存储设备20,而不丢失所保存的数据块。
当采取抽点时,如判断块66所评估的,下一步是将抽点映射复制到如图4的步骤70所指示的备份映射中。如前所述,比如图3的备份映射48的备份映射用来指示在第一时刻和第二时刻之间哪个数据块发生了改变。之后将这些数据块传送到抽点复本16。如将在下面的说明中看出的,图3的抽点映射52识别那些从在特定时刻保存静态抽点开始发生了改变的数据块。这样,当采取新的抽点时,抽点映射52可以用作备份映射。将抽点映射52复制到备份映射48实现了对识别那些数据位置的所需功能,该数据位置在采取上个抽点的时间和当前时间之间存储有新数据。很明显,可能不需要将抽点映射复制到备份映射。可能简单的将抽点映射用作备份映射,且将新映射用作当前抽点映射。
在保存抽点映射使得它可以用作备份映射之后,下一步是清除当前的抽点映射。这个步骤在图4中由步骤72指示。抽点映射用来存储那些数据块的指示,该数据块从采取抽点开始在其中存储了新数据,而不管改变的数据块是用于备份的所需数据块还是不需要的数据块。这样,抽点映射指示哪个数据块存储在抽点存储器中(比如图4的抽点存储器22)。因为采取了新的抽点,因此,必须清除抽点映射。
在步骤72清除了抽点映射后,下一步是清除抽点存储器,比如图3的抽点存储器22。这由图4的步骤74指示。通过特别考虑这个步骤,应该注意可能不需要物理地擦除或清除抽点存储器。一般,对于任何其它类型的存储器,通常清除处理器中的索引来指示存储器为空就足够了。这样,如果将索引保持为抽点存储器映射(比如图3的抽点存储器映射52)的一部分,那么在步骤72中执行的清除抽点存储器映射将足以指示那个抽点存储器为空。但是,如果保持抽点存储器的索引和抽点存储器映射分开,那么可能在步骤74需要分开的清除索引。在清除了抽点映射和抽点存储器之后,系统准备好保存新的抽点。因此,执行过程回到图4指示的开始位置。
现在注意图4的判断块76。这个判断块测试由大规模存储读取/写入处理块42接收的消息是否是大规模存储读取或写入请求。在到达判断块78的时间之前,可能的消息要么是大规模存储读取请求或大规模存储写入请求。这是因为在到达判断块78之前,其它类型的请求要么被处理,要么被过滤掉。判断块78区分大规模存储读取请求和大规模存储写入请求。如果请求是大规模存储读取请求,那么下一步是从大规模存储设备20中检索所请求的数据块并且将数据返回到发出请求的处理。这在步骤80中示出。但是,如果该请求是写入请求,那么执行过程继续到判断块82。
判断块82确定是否保存抽点。如前所述,在优选实施例中,通过复制被重写入到保存存储器(比如图3的抽点存储器22)的数据块来保存抽点。在这个实施例中,本质上是递增地保存抽点。换句话说,当保存抽点时,按照前述的步骤72和72来使抽点存储器准备保存数据块。其后,在抽点存储器中不存储数据,直到发生将重写要被保存的数据的实际写入请求。这样,当以这种方式保存抽点时,重要的是,确定是否已采取抽点或大规模存储系统是否发生写入请求而必担心保存抽点数据。判断块82测试是否发生写入请求而不保存抽点数据的或是否应该为写入请求而保存抽点数据。如果应发生写入请求而不保存抽点数据,则判断块82指示执行过程继续到步骤88,其中将数据块写入到大规模存储设备,比如图3的大规模存储设备20。但是,如果应该保存抽点数据,那么执行过程继续到判断块84。
如前所述,当根据优选实施例采取抽点时,将被重写的数据首先复制到抽点存储器,比如图3的抽点存储器22。在抽点存储器中保存了数据之后,可以将新的数据块写入到大规模存储系统。抽点的目的是当在特定时间点在大规模存储系统上存在数据时来保存它。这样,抽点仅需要在当抽点时间存在数据时来保存它。判断块84测试在采取抽点的时间是否在此之前已经将存储在大规模存储系统中的原始数据块保存在抽点存储器中。换句话说,如果当前在指定的写入存储位置存储中的数据是当采取抽点时在那个位置上所存储的数据,并且如果在没有首次保存数据时就发生写入请求,则原始数据将丢失。但是,如果在采取抽点时存储在其中的原始数据在此之前已经被保存在抽点存储器中,那么因为在此之前已经保存了原始数据,因此,可以无顾虑的发生写入请求,并且重写任何存储在指定位置的数据。因此,如果判断块84确定原始数据还没有被存储在抽点存储器中,那么执行过程继续到判断块85。
判断块85确定是否将数据块标记为受保护。如图3的保护映射53所示,用户可指定数据块为需要备份的或不需要备份的,使得实际上仅备份需要备份的数据块。在这里将被指定为需要备份的数据块作为所需数据块提到,而且将被指定为不需要备份的数据块作为不需要的数据块提到。这个特征减少了备份需要的时间量和存储空间。由大规模存储读取/写入处理42接收用于备份43的指定所需/不需要数据块的请求。
作为最近采取的静态抽点的结果,在抽点映射52上的数据块指示存储在抽点存储器22中的数据块。大规模存储读取/写入处理42指示在保护映射53上那些需要备份的数据块。另一种选择是,抽点处理可以指示在保护映射53上那些不需要备份的数据块,通过将它们经常标记为总是处于当前状态来防止对它们的备份。而且,在另一实施例中,抽点映射52和保护映射53可以是一个映射。换句话说,在保护映射53上执行的功能可以在抽点映射52上执行。
如果没有将数据块标记为受保护,或者换句话说其是不需要备份的,那么执行过程从判断块85继续到步骤88,跳过步骤86。另一选择是,如果将数据块标记为受保护,那么执行过程继续到步骤86,其中将原始数据块复制到抽点存储器22。
在一些实施例中,可省略步骤85。无论已改变的数据块是需要的还是不需要的数据块,它们都应被保存。之后,当将数据块发送到抽点复本时,备份读取处理56可以使用保护映射53来过滤掉任何不需要的数据块,使得仅将需要的数据块发送到抽点复本,如图6的步骤113所示。
在步骤86保存了原始数据之后,或者在判断块84做出确定在此之前已经保存了原始数据,或者在判断块85做出确定没有将数据块标记为受保护,那么执行过程继续到步骤88,其中通过将包括有写入请求的数据块写入到大规模存储设备上的指定存储位置来实现写入请求。
之后,步骤90识别存储位置为包括了新数据。如前所述,可以通过在抽点映射(比如图3的抽点映射52)中放置入口来实现。步骤90表示的只是先前所述的用于识别在其中具有写入了新数据的大规模存储设备存储位置的装置的一个实例。之后,可以将响应返回到做出写入请求的处理,发送这种请求在图4中由步骤92所示。通常,将这种响应发送到发布写入请求的处理,以便不仅指示写入操作的成功或失败,还指示写入操作的完成。之后,执行过程回到起始点,由此开始处理下一个请求。
下面转到图5,呈现了实现主备份处理块54的一个实施例的细节。如前所述,主备份处理块54负责获得需要被传送到抽点复本的数据块并且之后完成传送。首先,步骤100识别逻辑一致备份状态。在识别了逻辑一致状态之后,保存该逻辑一致状态的抽点,使得继续进行备份。在步骤102保存抽点,其通知抽点处理(例如结合到图3的大规模存储读取/写入处理块42结合的抽点处理块50)来采取抽点。在一个实施例中,这使得将抽点请求68发送到大规模存储读取/写入处理块42。如前所述,这个请求使得执行图4的步骤70,72和74,该步骤准备采取抽点。之后,通过图4的判断块84,判断块85和步骤86保存在采取抽点时存储在大规模存储设备20中用于所设计数据块的原始数据。
在为了保存由图5的步骤100识别的逻辑一致备份状态,在采取抽点之后,图5的下一步是如步骤104所示的汇编数据块,以传送到抽点复本16。在汇编了数据块以形成汇编数据64之后,步骤106将汇编数据64发送到抽点复本16。这可以通过将数据发送到用于写入抽点复本的大规模存储读取/写入处理块42来实现。之后,执行过程回到开始点,由此,主备份处理块54识别接下来的逻辑一致状态,以重复上述过程。
如前所述,通过步骤104发送到抽点复本16的数据块仅是那些从上次备份开始改变了的并且需要备份的数据块。另外,当数据块在采取抽点的时间存在时则传送它。这样,仅传送那些在备份映射(比如图3的备份映射48)中被识别为已经改变了的,以及那些在保护映射(比如图3的保护映射53)中被识别为受保护的数据块。抽点按照在采取抽点时那些所需数据块所处在的状态来保存它们。因此,主备份块54需要检索由抽点保存的某些数据块。主备份处理块54可以结合需要来从抽点和/或大规模存储系统中检索数据块的功能,或可能将这种功能结合进分开的处理块。结合了这种功能的分开的处理块在图3中由备份读取处理块56所示。图6示出了设计来恢复由这些抽点保存的数据的备份读取处理块56的一个实施例。
在图6中,判断块112强调备份读取处理块56仅处理要检索当采取抽点时已存在数据的读取请求的事实。如果该处理的结构和构造保证了仅将这种读取请求发送到图3的备份读取处理块56,则可能不需要这个判断块。类似的,判断块113强调备份读取处理块56仅检索所需数据块以用于最终传送到备份系统的事实。检查数据块是否是所需数据块由参考图3的保护映射53来实现。
在合适的情况下,可以省略判断块113。例如,如图4的判断块85所示的,本发明的一些实施例可能仅保存被标记为受保护的数据块。其中仅将保护的数据块放置在抽点存储器中,因为判断块114指示数据块已被存储在抽点存储器中已必要地表示出将该数据块标记为受保护,所以可以消除判断块113。
为了检索所需的数据块,当采取抽点的时间它存在时,必须确定数据块驻留在何处。如前面结合图4所述的,在采取抽点之后,当所需数据块第一次被新数据块所重写时,就将所需数据块复制到抽点存储器,比如图3的抽点存储器22。这意味着如果从来没有重写所需数据块,那么当采取抽点的时间所需数据块存在时,在大规模存储设备中存储的该所需所需数据块是原始的所需数据块。但是,如果所需数据块被重写了一次或多次,那么在抽点存储器中存储的是原始的所需数据块。图6的判断块114确定从采取抽点开始请求的所需数据块是否改变了。这可以通过检查抽点映射(比如图3的抽点映射52)来实现,以确定是否更改了数据块。如前所述,抽点映射识别那些从采取抽点开始改变了的存储位置或数据块。
如果从采取抽点开始存储位置在其中存储了新的数据,那么步骤116指示从抽点存储器中检索数据块。但是,如果从采取抽点开始存储位置的内容没有改变,那么步骤118指示从大规模存储设备20中检索数据块。在任一情况中,通过步骤120将指定为受保护的数据块返回到请求处理。
为了详细示出图3-6创建备份的操作,在图7A,7B,8A和8B中呈现了详细实例。在图7A和7B中所示的实施例和在图8A和8B中所示的实施例的不同在于,图7A和7B操作在好像判断块85不存在于图4一样。因此,图7A和7B描绘了以下本发明实施例:在抽点存储器中存储有受保护的和不受保护的数据块,但是当向抽点存储器请求数据块时仅提供受保护的数据块。相反的,图8A和8B描绘了以下本发明实施例:在抽点存储器中仅存储受保护的数据块,意味着如果数据块出现在抽点存储器中,则它就是受保护的数据块。如上所示,本发明的实践可能具有或不具有图4的判断块85(在抽点存储器中仅存储受保护的数据块)。以下对图7A和7B的讨论在假定不存在图4的判断块85,并且因此在抽点存储器中存储受保护的和不受保护的数据块。
首先参考图7A,考虑在大规模存储设备20原始数据部分14的号码为1-6的存储位置中所存储的数据块122的组。类似的,备份映射48具有六个对应于存储位置122的映射位置126,抽点映射52具有六个对应于存储位置122的映射位128,并且保护映射53也具有六个对应于存储位置122的映射位置129。如图7A所述,在时间T0清除映射位置126,128。但是,标记映射位置129的位置3,其指示将数据块122的数据块3被指定为不受保护。
图7B示出了大规模存储设备20的抽点复本16部分也具有数据块124的组,类似地存储在号码为1-6的存储位置。但是,示出数据块3仅为了保证在图7A和7B中的相应数据块具有相应的号码。因为图7A中的映射位置129的位置3指示在备份过程中不传送数据块122的数据块3,因此,在备份存储器24中不需要存在数据块124的数据块3。就是说,备份存储器24不需要具有对应于来自主大规模存储22的数据块122的数据块3的数据块。这样,可以从数据块124中整个省略数据块3,而不是简单的将该块变成灰色。在时间T0,至少在只要考虑所需数据块1,2和4-6时,在124中存储的数据块和在122中存储的数据块相同。
假定在时间T0之后,在存储位置122的位置3和4存储数据块130。之后为了将数据块130写入到合适的存储位置,将一个或多个大规模存储写入请求呈现给图3的大规模存储读取/写入处理块42。转到图4,以下面的方式处理大规模存储写入请求。
结合判断块66,76和78来确定将写入请求呈现给大规模存储读取/写入处理块42。这样执行过程通过这三个判断块到判断块82。如前所述,判断块82测试是否采取抽点。在这个实例的点上,没有采取抽点。这样执行过程继续到步骤88,在该步骤将请求的数据块写入到图7A的大规模存储20。这样将数据块130存储在存储位置122,以产生存储位置132。如在这里所示的,将在位置3和4中存储的数据块更改为3a和4a。
返回图4,步骤90之后指示其中存储了新数据的存储位置应该被指示为更改的。在很多抽点实施例中,抽点映射可以用于这个目的。在图7A中,使用映射134并使映射位置3和4变灰色来指示将数据存储在存储位置3和4中。注意到在备份映射48中的,如映射位置126所指示的存储位置在该点保持未改变。返回到图4,由步骤92返回写入请求响应,并且执行过程回到起始点来等待下一个请求。
现在转到图7A,假定下一个请求包括要存储在位置3,4和6的三个数据块136。因为还没有采取抽点,因此,以和前述写入请求的相同方式处理这个请求,即通过图4的判断块66,76,78和82进行处理到图4的步骤88来执行这一过程。步骤88指示在大规模存储设备中存储了新数据,使得图7A的存储位置138现在指示在位置3存储的数据块改变为3b,在位置4存储的数据块改变为4b,并且在位置6存储的数据块改变到6a。就像前述的写入请求,之后更新映射位置140来指示除了位置3和位置4,位置6也发生了改变。映射位置126保持未改变。
现在参考图5,假定在该实例中的这点,图3的主备份处理块54之后在图5的步骤100识别逻辑一致备份状态。在识别逻辑一致备份状态之后,步骤102将图3的抽点请求68发送到大规模存储读取/写入处理块42。
现在转到图4,这个抽点请求由判断块66处理,从而执行步骤70,72和74。在步骤70中,将抽点映射复制到备份映射。在图7A中,这意味着将映射位置140复制到备份映射48的映射位置142。这样,映射位置142指示在位置3,4和6中存储了新数据。现在转到图4,步骤72清除抽点映射,并且步骤74清除抽点存储器,如前所述。图4的执行过程之后返回起始点来等待另外的处理。
假定在该点处,写入请求到达大规模存储读取/写入处理块42,请求图7A的数据块144存储在存储位置138中。因为这是写入请求,因此,执行过程通过判断块66,76和78继续到图4的判断块82。不像前述的写入请求,现在如图7A和7B所示,是在时间T1采取抽点。这样,执行过程继续到判断块84。
判断块84确定在要被重写的存储位置中所存储的数据在此之前是否被存储在抽点存储器中。在这个实例中,将数据块144存储在存储位置1和3。因为存储位置1和3还没有被放置在抽点存储器中,因此,执行过程继续到步骤86,其中将存储位置138的位置1和3复制到抽点存储器22。(记住,在这个实施例中,图4的判断块85不存在)。在图7A中,这由包括数据块1的存储位置146和包括数据块3b的存储位置148示出。
在抽点存储器22中保存了数据块13b之后,在步骤88中将新的数据块写入到大规模存储设备。返回到图7A,这意味着将数据块1a和3c写入到存储位置138中,以产生存储位置150,在该存储位置150数据块1a重写了数据块1并且数据块3c重写了数据块3b。之后图5的步骤90指明需要将其标识为已更改的数据块。这样,更改抽点映射52的映射位置152来指示存储位置1和存储位置3具有存储在其中的新数据。之后,像图4的步骤92所示的,返回写入请求响应。
现在返回到图5,如图5的步骤102所示,通过图3的大规模存储读取/写入处理块42来在时间T1采取抽点。之后,步骤104和106指示应该将在采取抽点之前改变的数据块然后汇编入发射分组,并且发送到抽点复本16。应该被传送的数据块由包括在备份映射48和保护映射53中的信息所指示。
返回到图7A,备份映射48的映射位置142指示在时间T1采取抽点之前存储位置3,4和6已经发生了改变。抽点位置152的检验指示数据块4和6是在大规模存储系统上,并且数据块3是在抽点存储器22中。之后图5的步骤104请求存储在存储位置3,4和6上的数据块由图3的备份读取处理块56来进行检索。
如图6所示,备份读取处理块56处理这些从主备份处理块54接收的请求。该请求是用于在存储位置3,4和6中存储的数据块。关于在存储位置3中存储的数据块,判断块113确定将在存储位置3中存储的数据块标记为不受保护的,并且因此不在步骤120返回。因为没有将在位置4和6存储的数据块标记为不受保护,因此,图6的判断块114之后在步骤118中从大规模存储设备检索存储在存储位置4和6的数据块,并且在步骤120中将其返回到主备份处理块54。这个处理在图7A中以图形示出,其中通过从存储位置150检索数据块4b和6a来汇编数据块153。之后将数据块153通过大规模存储读取/写入处理块42传送到抽点复本16。这在图7A和7B中以图形示出。在图7B中,由抽点复本16接收数据块153并且将其应用到存储位置124,在获得存储位置154。存储位置154和原始数据的存储位置138相同(图7A),但是和存储位置3不同,因为其被标识为不需要备份的。回想存储位置138表示当采取抽点时大规模存储设备20在时间T1的状态。这样,为了使得抽点复本16和原始数据14在时间T1同步,现在将在时间T0和时间T1之间发生的变化备份到抽点复本16。
现在返回图7A,假定现在将数据块156写入到存储位置150。数据块156的写入使得存储在存储位置1,4和6中的数据块发生改变。大规模存储读取/写入处理块42处理被存储在位置4和6中的数据块的写入,将像前述在时间T1之后被存储在那些位置的数据块144(数据块4b和数据块6a)被存储在抽点存储器22中那样。之后将新的数据块4c和6b写入到大规模存储设备20。
关于被存储在存储位置1的数据块,图4的执行过程继续向下,到判断块84。回想这个判断块测试在采取抽点的时间在存储位置中存储的数据块在此之前是否被保存在抽点存储器中。关于在存储位置1中存储的数据块,如图7A的数据块146所指示的,在此之前已将该数据块保存在抽点存储器22中。这样,图4指示跳过步骤86,并且将新的数据简单地写入到大规模存储设备。在图7A中,这使得数据块1b代替数据块1a,从而数据块1a丢失。
回想本发明仅传送那些从上次备份开始发生了改变的存储位置的所需数据块。另外,当在采取抽点的时间存在数据块时传送它。这样,如果在从上次备份开始的时间过程中,在原始数据中的特定存储位置具有在其中存储的五个不同的数据块,则仅将最后存储的数据块(例如,刚好在采取抽点之前)传送到抽点复本。这是因为抽点复本16在当采取抽点时仅保存逻辑一致备份。换句话说,抽点复本从一个时刻的逻辑一致状态移动到另一时刻的逻辑一致状态。在时间中的离散时刻保存所需数据块的逻辑一致备份提供了相对现有技术的显著优点。
例如,考虑捕获对原始数据做出的每一和各个改变的现有技术的系统。这个现有技术系统会尝试将每一写入操作发送到原始数据和发送到备份复本。理论上,这使得备份复本是大规模存储设备的相同复本。但是,这个方法会出现问题。特别的,每次发送各个更新到备份复本需要相对大的带宽。通过将单一数据块的多个更新合并为单一的更新,本发明减少了必须在原始和备份复本之间传送的数据量。
另外,如果包括原始数据的主系统在写入更新过程中崩溃,则它可能将原始数据留在逻辑一致状态。如果备份复本跟踪对原始数据做出的各个改变,那么当主系统崩溃时,则还可能将备份复本留在相同的逻辑一致状态。这个实例强调了在识别第二逻辑一致状态之前留下已知的逻辑一致状态。通过保持先前的逻辑一致状态直到识别了新的逻辑一致状态,并且之后将抽点复本从先前的逻辑一致状态移动到下一个逻辑一致状态,而不通过在两个逻辑一致状态之间的逻辑不一致状态的过渡,本发明避免了这个问题。
返回到图7A,当将数据块156应用到存储位置150时,存储位置158产生。之后将映射位置152更新,以指示从时间T1开始改变了的存储位置现在除了包括存储位置1和3外还包括存储位置4和6。这在图7A中由抽点存储器52的映射位置160示出。
假定现在对大规模存储设备20做出第二备份。在这个情况中,如前在图5中所述来做出备份,其中执行过程继续到步骤100,在此识别逻辑一致状态。在图7A中,假定在时间T2识别这个逻辑一致状态。之后图5的步骤102通知在时间T2采取抽点。如前结合在时间T1采取抽点所述的,大规模存储读取/写入处理块42接收抽点请求,比如图3的抽点请求68,并且在步骤70中将抽点映射复制到备份映射。这在图7A中指示,其中备份映射48的映射位置162变化为和抽点映射52的映射位置160相同。
之后,图4的步骤72和74指示应该清除抽点映射和抽点存储器。在图7A中,如由抽点映射52的映射位置164所指示的来清除抽点映射。但是,抽点存储器22仍然显示在其中存储的数据块。这是为了示出只要清除了抽点存储器22的索引而使得抽点存储器22出现为不包括数据块,数据块就可能仍然物理地驻留于抽点存储器22中。
假定在时间T2采取抽点之后没有数据块在存储位置158中,那么根据图6所示的处理将数据块166从存储位置158中读取出来。注意到因为图5的判断块113使用保护映射位置129来确定位置3是不受保护的,因此,不读取存储位置158的位置3。因此,数据块3没有被读取并被传送到备份系统。之后如图5的步骤104和106所示,将读取的数据块通过大规模存储读取/写入处理块42发射到抽点复本。如图7B所示,之后为了到达存储位置168,将数据块166应用到存储位置154,其中该存储位置168是原始数据的存储位置158的相同复本(图7A),但是存储位置3除外,因为将存储位置3是被识别为不需要备份的。
现在转到图8A和8B,图8A和8B示出了在抽点存储器中仅存储受保护数据块的本发明实施例,意味着如果数据块在抽点存储器中出现,它就是受保护的数据块。如上所述,本发明可以实践为包括也可以不包括图4的判断块85(在抽点存储器中仅存储受保护的数据块)。下面的图8A和8B的描述假定图4的判断块85存在,并且因此在抽点存储器中仅存储受保护的数据块。因为很多关于图7A和7B的前述讨论也可以应用于8A和8B,因此,下面的图8A和8B的描述主要集中在图7A,7B,8A和8B之间的不同一抽点存储器22的操作上。
在时间T1,如图3进一步所示的,将抽点请求68发送到大规模存储读取/写入处理块42。再次转到图4,这个抽点请求由判断块66处理,从而执行步骤70,72和74。在步骤70中,将抽点映射复制到备份映射。在图8A中,这意味着将映射位置140复制到备份映射48的映射位置142。这样,映射位置142指示位置3,4和6在其中存储了新的数据。返回图4,如前所述的,步骤72清除抽点映射并且步骤74清除抽点存储器。之后,在图4中的执行过程返回到起始点,并且等待进一步的处理。
在该点处,写入请求到达大规模存储读取/写入处理块42,其请求将图8A的数据块144存储在存储位置138中。因为这是写入请求,因此,执行过程通过判断块66,76和78继续到图4的判断块82。如在图8A和8B中所指示的,在时间T1采取抽点,执行继续到判断块84。到现在为止,这个参考图7A和7B所述的处理相同。
判断块84确定在要被重写的存储位置中存储的数据在此之前是否被存储在抽点存储器中。在这个实例中,将数据块144存储在存储位置1和3中。因为存储位置1和3还没有被放置到抽点存储器,因此,处理过程执行判断块85,以区分需要备份和不需要备份的数据块。因为将图8A中保护映射位置129的数据块3标记为不需要备份的,执行过程从判断块85继续到步骤88,跳过步骤86。不将存储位置138的数据块3b复制到抽点存储器22。但是,将保护映射位置129的数据块1识别为需要备份的,并且因此将其标记为受保护的(也就是,不将数据块1标记为不受保护的)。因此,当处理数据块1时,执行过程从判断块85继续到步骤86,并且将存储位置138的数据块1复制到抽点存储器22。在图8A中,参考146,这由包括数据块1的抽点存储器22示出。如上所述,保证抽点存储器2仅包括受保护的数据块是图7A和7B的实施例与图8A和8B的实施例之间的不同。
在抽点存储器22中保存了数据块1之后,在步骤88中将新的数据块写入到原始数据。返回图8A,这意味着将数据块1a和3c写入进存储位置138,以产生存储位置150,在该存储位置150中数据块1a重写数据块1,并且数据块3c重写数据块3b。之后,图5的步骤90指明该数据块需要被识别为是更改的。这样,更改抽点映射52的映射位置152来指示存储位置1和存储位置3在其中存储了新的数据。之后如图4的步骤92所示,返回写入请求响应。
在该点处,图8A和8B所示的实施例通过像图7A和7B所示的实施例那样继续操作。返回图5,通过图3的大规模存储读取/写入处理块42,如图5的步骤102所示,在时间T1采取抽点。之后步骤104和106指示之后应该将在采取抽点之前改变的数据块进行汇编,并且将其发送到抽点复本。应该被传送的数据块由包括在备份映射48和保护映射53中的信息指示。
返回图8A,备份映射48的映射位置142指示在时间T1采取抽点之前存储位置3,4和6已经改变了。抽点位置152的检验指示了数据块4和6在大规模存储系统上,并且如果数据块3被标记为受保护的,则它将在抽点存储22上(但是,如上所述,因为在映射位置129中将数据块3被标记为不受保护,因此数据块3没有存储在抽点存储器22中)。之后图5的步骤104请求由图3的备份读取处理块56检索存储在存储位置3,4和6中的数据块。
如图6所示,备份读取处理块56处理这些从主备份处理块54接收的请求。该请求是用于在存储位置3,4和6中存储的数据块。关于在存储位置3中存储的数据块,判断块113确定将该数据块标记为不受保护的,并且因此在步骤120没有返回该数据块。因为没有将在存储在位置4和6的数据块标记为不受保护,因此,图6的判断块114之后在步骤118中从原始设备检索存储在存储位置4和6的数据块,并且在步骤120中将其返回到主备份处理块54。这个处理在图8A中以图形示出,其中通过从存储位置150检索数据块4b和6a来汇编数据块153。之后通过大规模存储读取/写入处理块42将数据块153传送到抽点复本。将数据块153应用到存储位置124来获得存储位置154。存储位置154和主系统(图8A)的存储位置138相同,但是存储位置3除外,因为其被标识为不需要备份的。回想存储位置138表示当采取抽点时大规模存储设备20在时间T1的状态。这样,现在将在时间T0和时间T1之间发生的变化返回到抽点复本16,以使得抽点复本和原始数据在时间T1同步。
现在返回图8A,假定现在将数据块156写入到存储位置150。数据块156的写入使得存储在存储位置1,4和6中的数据块发生改变。大规模存储读取/写入处理块42处理被存储在位置4和6中的数据块的写入,如前面结合在时间T1之后被存储在那些位置的数据块144(数据块4b和数据块6a被存储在抽点存储器22中)所述。之后将新的数据块4c和6b写入到原始数据14。
关于被存储在存储位置1的数据块,图4的执行过程继续向下,到判断块84。回想这个判断块测试在采取抽点的时间在存储位置中存储的数据块在此之前是否被保存在抽点存储器中。如图8A的数据块146所指示的,在此之前已将数据块保存在抽点存储器22中。这样,图4指示跳过步骤86,并且将新的数据简单地写入原始数据。在图8A中,这使得数据块1b代替数据块1a,从而使得数据块1a丢失。当将数据块156应用到存储位置150时,存储位置158产生。之后更新映射位置152,以指示从时间T1开始改变了的存储位置现在除了包括存储位置1和3外还包括存储位置4和6。这在图8A中由抽点存储器52的映射位置160示出。
假定现在对大规模存储设备20做出第二备份。在这个情况中,如图5中前述的做出备份,其中执行继续到步骤100,在此识别逻辑一致状态。在图8A中,假定在时间T2识别这个逻辑一致状态。之后图5的步骤102通知在时间T2采取抽点。如前结合在时间T1采取抽点所述的,大规模存储读取/写入处理块42接收抽点请求,比如图3的抽点请求68,并且在步骤70中将抽点映射复制到备份映射。这在图8A中指示,其中备份映射48的映射位置162改变为和抽点映射52的映射位置160相同。
之后,图4的步骤72和74指示应该清除抽点映射和抽点存储器。在图8A中,如由抽点映射52的映射位置164所指示的来清除抽点映射。但是,抽点存储器22仍然显示在其中存储有数据块。这是为了示出只要清除了抽点存储器22的索引而使得抽点存储器22出现为不包括数据块,数据块就可能仍然物理地驻留于抽点存储器22中。
假定在时间T2采取抽点之后没有数据块在存储位置158中,那么根据图6所示的处理,将数据块166从存储位置158中读取出来。注意到因为图5的判断块113使用保护映射位置129来确定位置3是不受保护的,因此没有读取存储位置158的位置3。因此,不将数据块3读取并传送到备份系统。之后如图5的步骤104和106所示,将读取的数据块进行汇编并通过大规模存储读取/写入处理块42发送到抽点复本。为了到达存储位置168,将数据块166应用到存储位置154,其中该存储位置168是原始数据的存储位置158的相同复本(图8A),但是存储位置3除外,因为用户将存储位置3识别为不需要备份的。
如在这里所述的,仅备份那些改变了的、并且被指定为受保护的数据块。在图4的步骤85中,如果数据块没有被指定为受保护的,则仅简单地写入该数据块,而不将原始数据块写入到抽点存储器;这样,保留了抽点存储存储器。而且,因为仅在数据块被指定为受保护的情况下才将其发射到备份系统,因此,传送更少的数据到备份系统可以使得备份时间加快。
本发明可能具体表现为其它特定形式而不脱离它的精神和基本特征。所述实施例在各个方面应认为仅是说明性的,而不是限制性的。因此,本发明的范围由所附权利要求指示,而不是由前述描述指示。所有在权利要求的含义和等效范围内的改变都应被包含在它的范围之内。

Claims (15)

1.一种将被指定为要备份的数据块备份到快照副本的方法,所述方法与具有大规模存储设备的计算机系统相关执行,该大规模存储设备在多个数据块中存储数据,并且具有到包含数据快照副本的数据存储位置的入口,该方法包括以下步骤:
识别在特定时间阶段中在大规模存储设备中改变了的数据块;
从所识别的数据块中指定数据块作为要备份的数据块,或从所识别的数据块中指定将不被备份的其它数据块,每种指定均基于从用户接收到的输入;以及
将要备份的数据块副本传送到包含快照副本的数据存储位置,以使将所传送的数据块副本包括在该快照副本中。
2.如权利要求1所述的方法,其中识别改变了的数据块的步骤包括以下步骤:保持包括用于至少在特定时间阶段中改变了的数据块入口的表。
3.如权利要求1所述的方法,其中指定要备份的数据块的步骤包括以下步骤:保持大规模存储设备的数据块的映射,在该大规模存储设备中将需要的数据块指定为要备份的数据块。
4.如权利要求1所述的方法,其中指定要备份的数据块的步骤是通过识别其它不要备份的数据块来执行。
5.如权利要求1所述的方法,进一步包括以下步骤:从用户接收识别要备份的数据块的输入。
6.如权利要求1所述的方法,进一步包括以下步骤:从用户接收识别不要备份的数据块的输入。
7.如权利要求1所述的方法,其中执行识别改变了的数据块的步骤时不中断用户对所述大规模存储设备的访问。
8.如权利要求1所述的方法,其中包含快照副本的所述数据存储位置位于相对于大规模存储设备的远程。
9.如权利要求1所述的方法,其中包含快照副本的所述数据存储位置包括在大规模存储设备中。
10.如权利要求1所述的方法,其中传送要备份的数据块副本的步骤包括:仅传送代表在该时间阶段中所指定数据块最近改变的所指定数据块的副本,从而所指定数据块的任何中间改变都没有被传送到包含快照副本的数据存储位置。
11.一种创建所选定数据块的快照副本的方法,所述方法与具有用于存储数据块的大规模存储设备的计算机系统相关执行,包括以下步骤:
从用户接收用于识别要在快照副本中备份的大规模存储设备的需要的数据块的信息;
当在大规模存储设备处的数据块在第一时间点之后发生改变时,从需要的数据块中识别大规模存储设备处在所述第一时间点和第二时间点之间已经发生改变的数据块:
在所述第二时间点,在位于数据存储位置处的所述快照副本中保存改变的数据块,其中改变了的数据块的副本代表所述需要的数据块的最近改变的原始副本:以及
提供到所述需要的数据块的快照副本的入口。
12.如权利要求11所述的方法,其中创建快照副本而不中断用户对计算机系统的访问,以使在创建快照副本时,用户可以继续发出I/O请求到大规模存储设备。
13.如权利要求11所述的方法,其中识别在大规模存储设备中改变了的需要的数据块的步骤包括以下步骤:保持包括用于在所述第一时间点和所述第二时间点之间改变了的需要的数据块入口的表。
14.如权利要求11所述的方法,进一步包括以下步骤:当需要的数据块在第一时间点存在时,保持快照副本作为需要的数据块的备份。
15.如权利要求11所述的方法,其中快照副本包括:
需要的数据块中在所述第一时间点和所述第二时间点之间已改变的数据块的保存副本;以及
需要的数据块中在所述第一时间点和所述第二时间点之间没有改变的那些数据块的原始副本。
CNB028237064A 2001-11-29 2002-11-15 保存大容量存储系统的所选数据的快照 Expired - Lifetime CN1291320C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/997,643 US7296125B2 (en) 2001-11-29 2001-11-29 Preserving a snapshot of selected data of a mass storage system
US09/997,643 2001-11-29

Publications (2)

Publication Number Publication Date
CN1596400A CN1596400A (zh) 2005-03-16
CN1291320C true CN1291320C (zh) 2006-12-20

Family

ID=25544232

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028237064A Expired - Lifetime CN1291320C (zh) 2001-11-29 2002-11-15 保存大容量存储系统的所选数据的快照

Country Status (7)

Country Link
US (2) US7296125B2 (zh)
EP (1) EP1449088A4 (zh)
JP (1) JP4181044B2 (zh)
KR (1) KR100560726B1 (zh)
CN (1) CN1291320C (zh)
AU (1) AU2002350221A1 (zh)
WO (1) WO2003048941A1 (zh)

Families Citing this family (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6526418B1 (en) * 1999-12-16 2003-02-25 Livevault Corporation Systems and methods for backing up data files
EP1436873B1 (en) 2001-09-28 2009-04-29 Commvault Systems, Inc. System and method for generating and managing quick recovery volumes
US6826666B2 (en) * 2002-02-07 2004-11-30 Microsoft Corporation Method and system for transporting data content on a storage area network
US7043507B2 (en) * 2002-02-28 2006-05-09 Veritas Operating Corporation System and method for validated indirect data backup using operating system I/O Operations
US6993539B2 (en) * 2002-03-19 2006-01-31 Network Appliance, Inc. System and method for determining changes in two snapshots and for transmitting changes to destination snapshot
US7096330B1 (en) * 2002-07-29 2006-08-22 Veritas Operating Corporation Symmetrical data change tracking
CA2508089A1 (en) 2002-10-07 2004-04-22 Commvault Systems, Inc. System and method for managing stored data
US7707184B1 (en) * 2002-10-09 2010-04-27 Netapp, Inc. System and method for snapshot full backup and hard recovery of a database
US7380081B2 (en) * 2003-06-06 2008-05-27 Hewlett-Packard Development Company, L.P. Asynchronous data redundancy technique
US7136974B2 (en) * 2003-06-19 2006-11-14 Pillar Data Systems, Inc. Systems and methods of data migration in snapshot operations
US9489150B2 (en) 2003-08-14 2016-11-08 Dell International L.L.C. System and method for transferring data between different raid data storage types for current data and replay data
WO2005017737A2 (en) 2003-08-14 2005-02-24 Compellent Technologies Virtual disk drive system and method
US7165155B1 (en) * 2003-08-29 2007-01-16 Emc Corporation System and method for tracking changes associated with incremental copying
US7702670B1 (en) * 2003-08-29 2010-04-20 Emc Corporation System and method for tracking changes associated with incremental copying
US7225208B2 (en) * 2003-09-30 2007-05-29 Iron Mountain Incorporated Systems and methods for backing up data files
CA2544064C (en) 2003-11-13 2012-02-07 Commvault Systems, Inc. System and method for performing integrated storage operations
WO2005048085A2 (en) 2003-11-13 2005-05-26 Commvault Systems, Inc. System and method for performing an image level snapshot and for restoring partial volume data
US7139887B2 (en) * 2003-12-31 2006-11-21 Veritas Operating Corporation Coordinated storage management operations in replication environment
US7636821B2 (en) * 2004-01-15 2009-12-22 International Business Machines Corporation Asynchronous hybrid mirroring system
JP2005235058A (ja) 2004-02-23 2005-09-02 Hitachi Ltd スナップショット取得方法、スナップショット取得装置及びスナップショット取得機能を備えたコンピュータシステム
US7343449B2 (en) * 2004-03-22 2008-03-11 Hitachi, Ltd. Storage subsystem and storage system
JP4439960B2 (ja) * 2004-03-22 2010-03-24 株式会社日立製作所 ストレージ装置
US20050223180A1 (en) * 2004-03-31 2005-10-06 Philip Derbeko Accelerating the execution of I/O operations in a storage system
US20060015764A1 (en) * 2004-07-13 2006-01-19 Teneros, Inc. Transparent service provider
US20060015584A1 (en) * 2004-07-13 2006-01-19 Teneros, Inc. Autonomous service appliance
US7363365B2 (en) 2004-07-13 2008-04-22 Teneros Inc. Autonomous service backup and migration
US7363366B2 (en) 2004-07-13 2008-04-22 Teneros Inc. Network traffic routing
US7380157B2 (en) * 2004-10-27 2008-05-27 Pillar Data Systems, Inc. Staggered writing for data storage systems
US20060106893A1 (en) * 2004-11-02 2006-05-18 Rodger Daniels Incremental backup operations in storage networks
US8959299B2 (en) 2004-11-15 2015-02-17 Commvault Systems, Inc. Using a snapshot as a data source
US20060123211A1 (en) * 2004-12-08 2006-06-08 International Business Machines Corporation Method for optimizing a snapshot operation on a file basis
US7464234B1 (en) * 2005-03-23 2008-12-09 Symantec Corporation Position independent incremental backup
US7159072B2 (en) * 2005-03-24 2007-01-02 Hitachi, Ltd. Method and apparatus for monitoring the quantity of differential data in a storage system
EP1915682A4 (en) * 2005-06-29 2014-10-01 Emc Corp CREATING A UNIQUE CLIENT INSTANTANE USING A CLIENT UTILITY
CN100405310C (zh) * 2005-07-12 2008-07-23 中国科学院计算技术研究所 一种快照系统及方法
US7506116B2 (en) * 2005-07-19 2009-03-17 International Business Machines Corporation Maintaining and using information on updates to a data group after a logical copy is made of the data group
US20070027938A1 (en) * 2005-07-26 2007-02-01 Scribe Software Inc. Detecting data changes
US7991971B2 (en) * 2005-09-09 2011-08-02 Microsoft Corporation State management for transactional backup consistency
US7325111B1 (en) 2005-11-01 2008-01-29 Network Appliance, Inc. Method and system for single pass volume scanning for multiple destination mirroring
US7617262B2 (en) 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US7651593B2 (en) 2005-12-19 2010-01-26 Commvault Systems, Inc. Systems and methods for performing data replication
US7962709B2 (en) 2005-12-19 2011-06-14 Commvault Systems, Inc. Network redirector systems and methods for performing data replication
US7606844B2 (en) 2005-12-19 2009-10-20 Commvault Systems, Inc. System and method for performing replication copy storage operations
EP1974296B8 (en) 2005-12-19 2016-09-21 Commvault Systems, Inc. Systems and methods for performing data replication
US7636743B2 (en) 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
US8655850B2 (en) 2005-12-19 2014-02-18 Commvault Systems, Inc. Systems and methods for resynchronizing information
US7509467B2 (en) * 2006-01-13 2009-03-24 Hitachi, Ltd. Storage controller and data management method
JP4800056B2 (ja) * 2006-02-09 2011-10-26 株式会社日立製作所 ストレージシステム及びその制御方法
JP4856955B2 (ja) * 2006-01-17 2012-01-18 株式会社日立製作所 Nasシステム及びリモートコピー方法
US7904492B2 (en) * 2006-03-23 2011-03-08 Network Appliance, Inc. Method and apparatus for concurrent read-only access to filesystem
JP5048760B2 (ja) 2006-05-24 2012-10-17 コンペレント・テクノロジーズ Raid管理、再割振り、およびリストライピングのためのシステムおよび方法
US8726242B2 (en) 2006-07-27 2014-05-13 Commvault Systems, Inc. Systems and methods for continuous data replication
US8533158B1 (en) 2006-09-28 2013-09-10 Emc Corporation Reclaiming data space by rewriting metadata
US8862639B1 (en) 2006-09-28 2014-10-14 Emc Corporation Locking allocated data space
US9454536B1 (en) 2006-09-28 2016-09-27 Emc Corporation Space compaction and defragmentation mechanisms in data space
US7647466B1 (en) 2006-09-28 2010-01-12 Emc Corporation Linear space allocation mechanisms in data space
US7594085B1 (en) 2006-09-28 2009-09-22 Emc Corporation Reclaiming data space
US7587431B1 (en) * 2006-09-28 2009-09-08 Emc Corporation Updating snapshots
US7526623B1 (en) 2006-09-28 2009-04-28 Emc Corporation Optimizing reclamation of data space
US7756831B1 (en) 2006-09-28 2010-07-13 Emc Corporation Cooperative locking between multiple independent owners of data space
US7676510B1 (en) * 2006-12-22 2010-03-09 Network Appliance, Inc. Space reservation monitoring in a fractionally reserved data storage system
US7801867B2 (en) * 2006-12-27 2010-09-21 Microsoft Corporation Optimizing backup and recovery utilizing change tracking
US7685189B2 (en) * 2006-12-27 2010-03-23 Microsoft Corporation Optimizing backup and recovery utilizing change tracking
US8290808B2 (en) 2007-03-09 2012-10-16 Commvault Systems, Inc. System and method for automating customer-validated statement of work for a data storage environment
CN100456255C (zh) * 2007-04-29 2009-01-28 华为技术有限公司 一种取快照数据的装置及方法
WO2009031156A2 (en) * 2007-09-09 2009-03-12 Ingrid Networks Ltd Method and apparatus for grid based data protection
US7865475B1 (en) * 2007-09-12 2011-01-04 Netapp, Inc. Mechanism for converting one type of mirror to another type of mirror on a storage system without transferring data
US8489554B2 (en) * 2007-10-05 2013-07-16 Ge Intelligent Platforms, Inc. Methods and systems for operating a sequence of events recorder
US8386733B1 (en) * 2008-02-15 2013-02-26 Symantec Corporation Method and apparatus for performing file-level restoration from a block-based backup file stored on a sequential storage device
US8392675B1 (en) * 2008-04-30 2013-03-05 Netapp, Inc. System and method for reduced-overhead snapshot creation
US8065272B2 (en) * 2008-05-30 2011-11-22 Symantec Corporation Systems and methods for tracking changes to a volume
CN102084350B (zh) * 2008-07-02 2013-09-18 惠普开发有限公司 数据的远程副本的验证
US8123739B2 (en) * 2008-08-19 2012-02-28 Cook Medical Technologies Llc Drainage catheter and method for catheterizing a patient
US8250033B1 (en) 2008-09-29 2012-08-21 Emc Corporation Replication of a data set using differential snapshots
US8250035B1 (en) 2008-09-30 2012-08-21 Emc Corporation Methods and apparatus for creating a branch file in a file system
US8117160B1 (en) 2008-09-30 2012-02-14 Emc Corporation Methods and apparatus for creating point in time copies in a file system using reference counts
EP2300921B1 (en) 2008-10-30 2011-11-30 International Business Machines Corporation Flashcopy handling
US8204859B2 (en) 2008-12-10 2012-06-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US8296469B2 (en) * 2008-12-31 2012-10-23 Intel Corporation Scalable method and apparatus for link with reconfigurable ports
US8515911B1 (en) 2009-01-06 2013-08-20 Emc Corporation Methods and apparatus for managing multiple point in time copies in a file system
JP5413948B2 (ja) 2009-01-27 2014-02-12 日本電気株式会社 ストレージシステム
US8918606B1 (en) * 2009-05-01 2014-12-23 Symantec Corporation Techniques for providing incremental backups
US8832684B2 (en) * 2009-06-18 2014-09-09 The Johns Hopkins University Methods for improving atomicity of runtime inspections
US8468292B2 (en) 2009-07-13 2013-06-18 Compellent Technologies Solid state drive data storage system and method
US8645647B2 (en) * 2009-09-02 2014-02-04 International Business Machines Corporation Data storage snapshot with reduced copy-on-write
US9092500B2 (en) 2009-09-03 2015-07-28 Commvault Systems, Inc. Utilizing snapshots for access to databases and other applications
US8719767B2 (en) 2011-03-31 2014-05-06 Commvault Systems, Inc. Utilizing snapshots to provide builds to developer computing devices
US8433682B2 (en) 2009-12-31 2013-04-30 Commvault Systems, Inc. Systems and methods for analyzing snapshots
EP2519872A4 (en) 2009-12-31 2015-08-26 Commvault Systems Inc SYSTEMS AND METHOD FOR IMPLEMENTING DATA MANAGEMENT OPERATIONS USING SNAPSHOTS
US8433867B2 (en) * 2010-01-09 2013-04-30 International Business Machines Corporation Using the change-recording feature for point-in-time-copy technology to perform more effective backups
US8504517B2 (en) 2010-03-29 2013-08-06 Commvault Systems, Inc. Systems and methods for selective data replication
US8352422B2 (en) 2010-03-30 2013-01-08 Commvault Systems, Inc. Data restore systems and methods in a replication environment
US8725698B2 (en) 2010-03-30 2014-05-13 Commvault Systems, Inc. Stub file prioritization in a data replication system
US8504515B2 (en) 2010-03-30 2013-08-06 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US20110252208A1 (en) * 2010-04-12 2011-10-13 Microsoft Corporation Express-full backup of a cluster shared virtual machine
US8898508B2 (en) 2010-05-18 2014-11-25 Vmware, Inc. Method and system for enabling checkpointing fault tolerance across remote virtual machines
US8898518B2 (en) 2010-05-18 2014-11-25 Vmware, Inc. Method and system for enabling checkpointing fault tolerance across remote virtual machines
US8171338B2 (en) * 2010-05-18 2012-05-01 Vmware, Inc. Method and system for enabling checkpointing fault tolerance across remote virtual machines
US8898509B2 (en) 2010-05-18 2014-11-25 Vmware, Inc. Policy-based checkpointing fault tolerance across remote virtual machines
US8589347B2 (en) 2010-05-28 2013-11-19 Commvault Systems, Inc. Systems and methods for performing data replication
US9558074B2 (en) * 2010-06-11 2017-01-31 Quantum Corporation Data replica control
KR101651204B1 (ko) 2010-06-15 2016-08-26 삼성전자주식회사 스냅샷 이미지의 동기화 장치 및 방법
US8566640B2 (en) 2010-07-19 2013-10-22 Veeam Software Ag Systems, methods, and computer program products for instant recovery of image level backups
US8595454B1 (en) * 2010-08-31 2013-11-26 Symantec Corporation System and method for caching mapping information for off-host backups
US8756198B2 (en) 2010-09-29 2014-06-17 International Business Machines Corporation Enhancing data store backup times
US8849750B2 (en) * 2010-10-13 2014-09-30 International Business Machines Corporation Synchronization for initialization of a remote mirror storage facility
US8417674B2 (en) 2010-11-16 2013-04-09 Actifio, Inc. System and method for creating deduplicated copies of data by sending difference data between near-neighbor temporal states
US8402004B2 (en) 2010-11-16 2013-03-19 Actifio, Inc. System and method for creating deduplicated copies of data by tracking temporal relationships among copies and by ingesting difference data
US9858155B2 (en) 2010-11-16 2018-01-02 Actifio, Inc. System and method for managing data with service level agreements that may specify non-uniform copying of data
US8843489B2 (en) 2010-11-16 2014-09-23 Actifio, Inc. System and method for managing deduplicated copies of data using temporal relationships among copies
US8904126B2 (en) 2010-11-16 2014-12-02 Actifio, Inc. System and method for performing a plurality of prescribed data management functions in a manner that reduces redundant access operations to primary storage
US8646072B1 (en) * 2011-02-08 2014-02-04 Symantec Corporation Detecting misuse of trusted seals
US8943330B2 (en) * 2011-05-10 2015-01-27 Qualcomm Incorporated Apparatus and method for hardware-based secure data processing using buffer memory address range rules
WO2013019869A2 (en) 2011-08-01 2013-02-07 Actifio, Inc. Data fingerpringting for copy accuracy assurance
US8738624B1 (en) * 2011-09-27 2014-05-27 Amazon Technologies, Inc. Increasing distributed database capacity
AU2012324876A1 (en) 2011-10-18 2014-05-01 Institut National De La Recherche Agronomique Use of avermectin derivative for increasing bioavailability and efficacy of macrocylic lactones
US8949664B2 (en) * 2011-11-18 2015-02-03 Nokia Corporation Method and apparatus for providing information consistency in distributed computing environments
CN102622284B (zh) * 2012-02-21 2014-04-16 上海交通大学 面向海量存储系统的数据异步复制方法
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9146851B2 (en) 2012-03-26 2015-09-29 Compellent Technologies Single-level cell and multi-level cell hybrid solid state drive
US9201887B1 (en) * 2012-03-30 2015-12-01 Emc Corporation Cluster file server proxy server for backup and recovery
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
CN104769555A (zh) 2012-06-18 2015-07-08 艾克特菲欧有限公司 增强型数据管理虚拟化系统
US20140108588A1 (en) * 2012-10-15 2014-04-17 Dell Products L.P. System and Method for Migration of Digital Assets Leveraging Data Protection
US10176183B1 (en) 2012-10-31 2019-01-08 EMC IP Holding Company LLC Method and apparatus for reducing overheads of primary storage while transferring modified data
US9471245B1 (en) 2012-10-31 2016-10-18 Emc Corporation Method and apparatus for transferring modified data efficiently
US9235535B1 (en) * 2012-10-31 2016-01-12 Emc Corporation Method and apparatus for reducing overheads of primary storage by transferring modified data in an out-of-order manner
KR101451807B1 (ko) * 2012-12-24 2014-10-22 주식회사 케이티 NoSQL 메타 데이터의 백업 및 복원장치 및 방법
US9075762B2 (en) * 2013-01-04 2015-07-07 International Business Machines Corporation Setting copy permissions for target data in a copy relationship
US9262435B2 (en) 2013-01-11 2016-02-16 Commvault Systems, Inc. Location-based data synchronization management
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US9563683B2 (en) 2013-05-14 2017-02-07 Actifio, Inc. Efficient data replication
US9690837B1 (en) * 2013-06-28 2017-06-27 EMC IP Holding Company LLC Techniques for preserving redundant copies of metadata in a data storage system employing de-duplication
US9053216B1 (en) 2013-08-09 2015-06-09 Datto, Inc. CPU register assisted virtual machine screenshot capture timing apparatuses, methods and systems
US9690671B2 (en) * 2013-11-01 2017-06-27 Cloudera, Inc. Manifest-based snapshots in distributed computing environments
US9996423B2 (en) * 2013-11-04 2018-06-12 Falconstor, Inc. Point in time snapshots using copy on predicted write
US9665437B2 (en) 2013-11-18 2017-05-30 Actifio, Inc. Test-and-development workflow automation
US9665306B1 (en) * 2013-12-18 2017-05-30 EMC IP Holding Company LLC Method and system for enhancing data transfer at a storage system
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US9720778B2 (en) 2014-02-14 2017-08-01 Actifio, Inc. Local area network free data movement
US9348827B1 (en) * 2014-03-27 2016-05-24 Emc Corporation File-based snapshots for block-based backups
US9411821B1 (en) * 2014-03-27 2016-08-09 Emc Corporation Block-based backups for sub-file modifications
US9792187B2 (en) 2014-05-06 2017-10-17 Actifio, Inc. Facilitating test failover using a thin provisioned virtual machine created from a snapshot
US9594636B2 (en) 2014-05-30 2017-03-14 Datto, Inc. Management of data replication and storage apparatuses, methods and systems
US9772916B2 (en) 2014-06-17 2017-09-26 Actifio, Inc. Resiliency director
US9542108B2 (en) * 2014-06-30 2017-01-10 Scale Computing, Inc. Efficient migration of virtual storage devices to a remote node using snapshots
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US10379963B2 (en) 2014-09-16 2019-08-13 Actifio, Inc. Methods and apparatus for managing a large-scale environment of copy data management appliances
US10089185B2 (en) 2014-09-16 2018-10-02 Actifio, Inc. Multi-threaded smart copy
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
WO2016094819A1 (en) 2014-12-12 2016-06-16 Actifio, Inc. Searching and indexing of backup data sets
US9880904B2 (en) * 2014-12-12 2018-01-30 Ca, Inc. Supporting multiple backup applications using a single change tracker
US9870289B2 (en) * 2014-12-12 2018-01-16 Ca, Inc. Notifying a backup application of a backup key change
WO2016115135A1 (en) 2015-01-12 2016-07-21 Xiangdong Zhang Disk group based backup
US10311150B2 (en) 2015-04-10 2019-06-04 Commvault Systems, Inc. Using a Unix-based file system to manage and serve clones to windows-based computing clients
US10282201B2 (en) 2015-04-30 2019-05-07 Actifo, Inc. Data provisioning techniques
US10613938B2 (en) 2015-07-01 2020-04-07 Actifio, Inc. Data virtualization using copy data tokens
US10691659B2 (en) 2015-07-01 2020-06-23 Actifio, Inc. Integrating copy data tokens with source code repositories
US10394661B2 (en) 2015-09-22 2019-08-27 International Business Machines Corporation Policy driven data updates
US11106645B1 (en) * 2015-09-29 2021-08-31 EMC IP Holding Company LLC Multi point in time object store
CN105426269B (zh) * 2015-11-30 2018-10-12 上海爱数信息技术股份有限公司 一种提升Oracle备份性能的装置及方法
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US10956270B2 (en) * 2016-03-30 2021-03-23 Acronis International Gmbh System and method for data protection during full data backup
US10445298B2 (en) 2016-05-18 2019-10-15 Actifio, Inc. Vault to object store
US10476955B2 (en) 2016-06-02 2019-11-12 Actifio, Inc. Streaming and sequential data replication
US10152386B1 (en) * 2016-07-29 2018-12-11 Nutanix, Inc. Efficient disaster rollback across heterogeneous storage systems
CN106484321A (zh) * 2016-09-08 2017-03-08 华为数字技术(成都)有限公司 一种数据存储方法及数据中心
CN113064754B (zh) * 2016-09-23 2023-05-30 极海微电子股份有限公司 用于耗材盒的耗材芯片及其数据处理方法
US10783046B2 (en) 2016-11-22 2020-09-22 Nutanix, Inc. Executing resource management operations in distributed computing systems
US10191687B1 (en) * 2016-12-15 2019-01-29 EMC IP Holding Company LLC Adaptive snap-based replication in a storage system
US10528015B2 (en) 2016-12-15 2020-01-07 Trane International Inc. Building automation system controller with real time software configuration and database backup
US10241869B2 (en) * 2017-03-08 2019-03-26 International Business Machines Corporation Managing a deletion of a volume referenced by a snapshot of a consistency group
US10855554B2 (en) 2017-04-28 2020-12-01 Actifio, Inc. Systems and methods for determining service level agreement compliance
CN107332904A (zh) * 2017-06-29 2017-11-07 郑州云海信息技术有限公司 一种跨存储系统的数据迁移方法、装置及系统
US11403178B2 (en) 2017-09-29 2022-08-02 Google Llc Incremental vault to object store
US10732885B2 (en) 2018-02-14 2020-08-04 Commvault Systems, Inc. Block-level live browsing and private writable snapshots using an ISCSI server
US10740156B1 (en) 2018-02-22 2020-08-11 Amazon Technologies, Inc. Reversible representation-based partitioning of distributed computing environments
US10452453B1 (en) * 2018-02-22 2019-10-22 Amazon Technologies, Inc. Snapshot lineage preservation for representation-based partitions
US11176001B2 (en) 2018-06-08 2021-11-16 Google Llc Automated backup and restore of a disk group
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US11151090B2 (en) 2019-10-17 2021-10-19 EMC IP Holding Company LLC Snapshot management based on data churn delta
US11755416B2 (en) * 2020-01-14 2023-09-12 Druva Inc. Storage tiering for backup data
CN113986115A (zh) * 2020-07-27 2022-01-28 伊姆西Ip控股有限责任公司 用于复制数据的方法、电子设备和计算机程序产品
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4467421A (en) 1979-10-18 1984-08-21 Storage Technology Corporation Virtual storage system and method
US5038278A (en) 1988-04-01 1991-08-06 Digital Equipment Corporation Cache with at least two fill rates
US5089958A (en) 1989-01-23 1992-02-18 Vortex Systems, Inc. Fault tolerant computer backup system
GB8915875D0 (en) 1989-07-11 1989-08-31 Intelligence Quotient United K A method of operating a data processing system
US5163148A (en) 1989-08-11 1992-11-10 Digital Equipment Corporation File backup system for producing a backup copy of a file which may be updated during backup
US5157663A (en) 1990-09-24 1992-10-20 Novell, Inc. Fault tolerant computer system
US5426747A (en) 1991-03-22 1995-06-20 Object Design, Inc. Method and apparatus for virtual memory mapping and transaction management in an object-oriented database system
US5408642A (en) 1991-05-24 1995-04-18 Symantec Corporation Method for recovery of a computer program infected by a computer virus
US5414850A (en) 1991-08-23 1995-05-09 Stac Electronics, Inc. System for transparently compressing data files in a computer system
US5410667A (en) 1992-04-17 1995-04-25 Storage Technology Corporation Data record copy system for a disk drive array data storage subsystem
US5379398A (en) 1992-04-20 1995-01-03 International Business Machines Corporation Method and system for concurrent access during backup copying of data
US5448718A (en) 1992-04-20 1995-09-05 International Business Machines Corporation Method and system for time zero backup session security
US5263154A (en) 1992-04-20 1993-11-16 International Business Machines Corporation Method and system for incremental time zero backup copying of data
US5241668A (en) 1992-04-20 1993-08-31 International Business Machines Corporation Method and system for automated termination and resumption in a time zero backup copy process
US5241670A (en) 1992-04-20 1993-08-31 International Business Machines Corporation Method and system for automated backup copy ordering in a time zero backup copy session
US5379412A (en) 1992-04-20 1995-01-03 International Business Machines Corporation Method and system for dynamic allocation of buffer storage space during backup copying
US5241669A (en) 1992-04-20 1993-08-31 International Business Machines Corporation Method and system for sidefile status polling in a time zero backup copy process
JPH0827754B2 (ja) 1992-05-21 1996-03-21 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータシステムにおけるファイル管理方法及びファイル管理システム
US5403639A (en) 1992-09-02 1995-04-04 Storage Technology Corporation File server having snapshot application data groups
US5375232A (en) 1992-09-23 1994-12-20 International Business Machines Corporation Method and system for asynchronous pre-staging of backup copies in a data processing storage subsystem
CA2166420C (en) 1993-07-01 2006-03-28 James R. Woodhill System and method for distributed storage management on networked computer systems
DK0710375T3 (da) 1993-07-19 1999-09-20 Cheyenne Advanced Tech Ltd Filsikkerhedskopieringssystem
US5515502A (en) 1993-09-30 1996-05-07 Sybase, Inc. Data backup system with methods for stripe affinity backup to multiple archive devices
US5435004A (en) 1994-07-21 1995-07-18 International Business Machines Corporation Computerized system and method for data backup
US5835953A (en) 1994-10-13 1998-11-10 Vinca Corporation Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating
US5649152A (en) 1994-10-13 1997-07-15 Vinca Corporation Method and system for providing a static snapshot of data stored on a mass storage system
US5588934A (en) * 1995-04-11 1996-12-31 Grand Haven Stamped Products Shifter with means for actuating cable to key mechanism
US5819020A (en) 1995-10-16 1998-10-06 Network Specialists, Inc. Real time backup system
US5719889A (en) 1995-12-20 1998-02-17 International Business Machines Corporation Programmable parity checking and comparison circuit
US5790773A (en) 1995-12-29 1998-08-04 Symbios, Inc. Method and apparatus for generating snapshot copies for data backup in a raid subsystem
US6081875A (en) 1997-05-19 2000-06-27 Emc Corporation Apparatus and method for backup of a disk storage system
US6101585A (en) 1997-11-04 2000-08-08 Adaptec, Inc. Mechanism for incremental backup of on-line files
US6131148A (en) 1998-01-26 2000-10-10 International Business Machines Corporation Snapshot copy of a secondary volume of a PPRC pair
US6397229B1 (en) * 1998-02-02 2002-05-28 International Business Machines Corporation Storage-controller-managed outboard incremental backup/restore of data
US6205527B1 (en) * 1998-02-24 2001-03-20 Adaptec, Inc. Intelligent backup and restoring system and method for implementing the same
US6269381B1 (en) * 1998-06-30 2001-07-31 Emc Corporation Method and apparatus for backing up data before updating the data and for restoring from the backups
DE69938378T2 (de) * 1998-08-20 2009-04-30 Hitachi, Ltd. Kopieren von Daten in Speichersystemen
US6332177B1 (en) 1998-10-19 2001-12-18 Lsi Logic Corporation N-way raid 1 on M drives block mapping
US6665779B1 (en) * 1998-12-24 2003-12-16 Roxio, Inc. Image backup method for backing up disk partitions of a storage device
US6434681B1 (en) * 1999-12-02 2002-08-13 Emc Corporation Snapshot copy facility for a data storage system permitting continued host read/write access
US6625623B1 (en) * 1999-12-16 2003-09-23 Livevault Corporation Systems and methods for backing up data files
US6651075B1 (en) * 2000-02-16 2003-11-18 Microsoft Corporation Support for multiple temporal snapshots of same volume
US6618794B1 (en) * 2000-10-31 2003-09-09 Hewlett-Packard Development Company, L.P. System for generating a point-in-time copy of data in a data storage system
US6678809B1 (en) * 2001-04-13 2004-01-13 Lsi Logic Corporation Write-ahead log in directory management for concurrent I/O access for block storage

Also Published As

Publication number Publication date
EP1449088A1 (en) 2004-08-25
KR100560726B1 (ko) 2006-03-14
EP1449088A4 (en) 2007-12-26
US20030101321A1 (en) 2003-05-29
AU2002350221A1 (en) 2003-06-17
CN1596400A (zh) 2005-03-16
JP2005512191A (ja) 2005-04-28
JP4181044B2 (ja) 2008-11-12
US7296125B2 (en) 2007-11-13
KR20040071693A (ko) 2004-08-12
US7398366B2 (en) 2008-07-08
WO2003048941A1 (en) 2003-06-12
US20070079089A1 (en) 2007-04-05

Similar Documents

Publication Publication Date Title
CN1291320C (zh) 保存大容量存储系统的所选数据的快照
CN1242333C (zh) 数据管理方法、数据异步镜像方法和数据存储系统
CN1147788C (zh) 双重化计算机系统
EP1230598B1 (en) File system image transfer between dissimilar file systems
US9396198B2 (en) Computer system, file management method and metadata server
CN1311358C (zh) 对迁移和清除候选者的有效查找
EP2163988B1 (en) Snapshot system and method
US7870353B2 (en) Copying storage units and related metadata to storage
RU2446450C2 (ru) Преобразование машин в виртуальные машины
JP3792258B2 (ja) ディスク記憶システムのバックアップ装置および方法
CN1755673A (zh) 具备文件管理功能的文件系统及文件管理方法
CN1179281C (zh) 利用逻辑闪速存储器件进行最小单元更新的方法和设备
US7774316B2 (en) Filesystem snapshot enhancement to improve system performance
JP2003513355A5 (zh)
KR100317691B1 (ko) 로그 구조화 목표 저장장치를 사전에 구성하여 볼륨을 효율적으로 복사하는 방법 및 장치
CN1908907A (zh) 改善资料写入效率的方法以及实施此方法的子系统与系统
CN1770088A (zh) 存储网络中的增量备份操作
CN1524224A (zh) 信息备份的系统和方法
CN1786921A (zh) 复制控制器及其方法
CN1602479A (zh) 动态远程数据镜像设备组
CN1577334A (zh) 事务相容的写时复制数据库
CN1838128A (zh) 存储装置系统的控制技术
CN1404587A (zh) 使用虚拟驱动的分区的再生成方法、数据处理装置和数据存储装置
US20080065703A1 (en) Configurable views of archived data storage
US7680983B2 (en) Method of restoring data by CDP utilizing file system information

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
CX01 Expiry of patent term

Granted publication date: 20061220

CX01 Expiry of patent term