CN105960635B - 用于维护存储库中的源数据的系统和方法 - Google Patents
用于维护存储库中的源数据的系统和方法 Download PDFInfo
- Publication number
- CN105960635B CN105960635B CN201580007367.9A CN201580007367A CN105960635B CN 105960635 B CN105960635 B CN 105960635B CN 201580007367 A CN201580007367 A CN 201580007367A CN 105960635 B CN105960635 B CN 105960635B
- Authority
- CN
- China
- Prior art keywords
- time
- point
- copy
- repository
- data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/128—Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供用于从具有不同时间点的源数据(104)的存储库(110)中的源数据(104)的拷贝创建复原拷贝(124)的计算机程序产品、系统和方法。截至初始时间点的所有源数据(104)被复制至存储库(110)。响应于完成在初始时间点之后的时间点拷贝,将变化信息传输至存储库(110),变化信息指示源数据(104)中在时间点拷贝的时间点和随后的时间点之间发生变化的变化的数据(120)。对于每个时间点拷贝,将变化的源数据复制至存储库(110),变化的源数据包括在时间点拷贝的变化信息中被指示为发生变化的源数据(104)。接收复原请求以复原截至复原时间点的源数据(104)。将存储库(110)中截至复原时间点的源数据(104)从存储库(110)复制至复原拷贝(124)。
Description
技术领域
本发明涉及从具有不同时间点的源数据的存储库中的源数据的拷贝创建复原拷贝的计算机程序产品、系统和方法。
背景技术
在存储环境中,存储控制器可以使用时间点拷贝技术(诸如 (闪速拷贝)、快照等)创建生产卷(production volume)的时间点(“PiT”)拷贝。时间点拷贝按照即刻显现并且允许主机继续访问源卷而对拷贝卷的实际数据传输被推迟到稍后时间的方式来复制数据。PiT拷贝即刻显现,这是因为响应于在没有将数据从源卷复制至目标卷的情况下产生关系数据结构,“完整”响应被返回给复制操作。PiT拷贝技术通常推迟在PiT拷贝关系建立时将源卷中的数据传输到复制目标卷,直至对源卷上的数据块请求了写操作为止。数据传输也可以作为对系统性能影响最小的后台复制处理来进行。作为响应于PiT拷贝命令而立即建立的PiT拷贝关系包括指示块在源卷或复制卷处的卷中的位置的位图或其他数据结构。PiT拷贝包括源卷中的数据和要被传输到目标卷的更新所重写的数据的组合。IBM和FlashCopy是国际商业机器公司的商标,已在全世界许多管辖区域中注册了。
当接收到对PiT拷贝关系中所涉及的源卷中的块的更新时,在用于轨道的新数据被写入到源卷之前,截至时间点的轨道的拷贝必须被复制至副文件(side file)或目标卷,从而重写数据的时间点拷贝。从具有不同时间点的源数据的存储库中的源数据的拷贝创建复原拷贝是复杂的。因此,本领域中对于解决上述问题存在需求。
时间点拷贝和随后的时间点;对于每个时间点拷贝,将变化的源数据复制至存储库,所述变化的源数据包括在时间点拷贝的变化信息中被指示为发生变化的源数据;接收复原请求以复原截至复原时间点的源数据;确定存储库中截至复原时间点的源数据;以及将所确定的源数据从存储库复制至复原拷贝。
从另一方面看,本发明提供了一种用于维护存储库中的源数据的方法,所述方法包括以下步骤:将截至初始时间点的所有源数据复制至存储库;启动源数据在初始时间点之后的不同时间点的时间点拷贝;响应于完成每个时间点拷贝,将变化信息传输至存储库,所述变化信息指示源数据中在时间点拷贝的时间点和随后的时间点之间发生变化的变化的数据;对于每个时间点拷贝,将变化的源数据复制至存储库,所述变化的源数据包括在时间点拷贝的变化信息中被指示为发生变化的源数据;接收复原请求以复原截至复原时间点的源数据;确定存储库中截至复原时间点的源数据;以及将所确定的源数据从存储库复制至复原拷贝。
从另一方面看,本发明提供了一种用于维护存储库中的源数据的计算机程序产品,所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质能被处理电路读取,并且存储由所述处理电路运行以执行用于执行本发明的步骤的方法的指令。
从另一方面看,本发明提供了一种存储在计算机可读介质上并且能被加载至数字计算机的内部存储器中的计算机程序,所述计算机程序包括软件代码部分,当所述程序在计算机上运行时,用于执行本发明的步骤。
附图说明
如下面的图中所示出的,现在将参考优选实施例,仅通过举例的方式来描述本发明。
图1示出根据本发明的优选实施例的存储环境的实施例;
图2示出根据本发明的优选实施例的存储控制器时间点拷贝信息的实施例;
图3示出根据本发明的优选实施例的存储库时间点拷贝信息的实施例;
图4示出根据本发明的优选实施例的创建具有源数据和源数据在不同时间点的时间点信息的存储库的操作的实施例;
图5a、图5b和图5c示出根据本发明的优选实施例的源数据和存储库在不同时间点的状态的示例;
图6示出根据本发明的优选实施例的创建复原拷贝的操作的实施例;
图7示出根据本发明的优选实施例的确定要复制至复原拷贝的源数据的操作的实施例;以及
图8示出根据现有技术的可实现本发明的优选实施例并且可实现图1中的组件的计算机环境。
具体实施方式
所描述的实施例提供了用于创建存储库以维护源数据的完整拷贝和源数据的时间点拷贝、从而允许从存储库复原不同时间点的源数据的技术。另外。
发明内容
提供了用于从具有不同时间点的源数据的存储库中的源数据的拷贝创建复原拷贝的计算机程序产品、系统和方法。截至初始时间点的所有源数据被复制至存储库。启动源数据在初始时间点之后的不同时间点的时间点拷贝。响应于完成每个时间点拷贝,将变化信息传输至存储库,所述变化信息指示源数据中在时间点拷贝的时间点和随后的时间点之间发生变化的变化的数据。对于每个时间点拷贝,将变化的源数据复制至存储库,所述变化的源数据包括在时间点拷贝的变化信息中被指示为发生变化的源数据。接收复原请求以复原截至复原时间点的源数据。确定存储库中截至复原时间点的源数据,并且将所确定的源数据从存储库复制至复原拷贝。
从第一方面看,本发明提供了一种用于维护存储库中的源数据的系统,所述系统包括:处理器;以及包括程序指令的计算机可读存储介质,所述程序指令被所述处理器运行以执行操作,所述操作包括:将截至初始时间点的所有源数据复制至存储库;启动源数据在初始时间点之后的不同时间点的时间点拷贝;响应于完成每个时间点拷贝,将变化信息传输至存储库,所述变化信息指示源数据中在时间点之间发生变化的变化的数据;利用所描述的实施例,维护存储库中的时间点(“PiT”)拷贝信息的操作和执行复原操作的操作可以由独立于从源数据创建PiT拷贝的存储控制器逻辑的程序组件来执行,以便与存储控制器独立地维护、使用和管理所述存储库。
图1示出具有存储控制器100的数据存储环境的实施例,所述存储控制器100管理对包括源数据104的第一贮存器102(诸如由不同主机系统使用的生产卷)的访问。主机106包括存储库拷贝管理器软件108以管理源数据104到第二贮存器112中的存储库110的复制。存储控制器100、主机106和第二贮存器112可以通过网络114通信。
存储控制器100包括创建源数据104的时间点拷贝的时间点(“PiT”)拷贝管理器116,例如FlashCopy、快照等。当创建PiT拷贝时,PiT拷贝管理器116产生关于截至时间点创建的PiT拷贝的PiT拷贝信息200a。存储管理器100还包括操作系统118,所述操作系统118包括管理对源数据104的输入/输出(“I/O”)请求的代码和逻辑。操作系统118可以将源数据104配置在一个或多个卷中,并且数据按照数据单元(诸如轨道、逻辑块地址(LBA)、扩展块等)进行存储。PiT拷贝管理器116可以是由操作系统118提供的复制服务。
存储器102和存储器112可以按照独立磁盘冗余阵列(RAID)配置来存储轨道,在独立磁盘冗余阵列(RAID)配置中,轨道的步幅(stride)被写入到包括贮存器102和112的多个存储设备上。贮存器102和112可以各自包括本领域已知的一个或多个存储设备,诸如互联的存储设备,其中所述存储设备可以包括硬盘驱动器、包括固态电子元件的固态存储设备(SSD)(诸如EEPROM(电可擦除可编程只读存储器)、闪速存储器、闪速盘、随机存取存储器(RAM)、存储级存储器(SCM)等)、磁存储盘、光盘、磁带等。
网络114可以包括诸如一个或多个互联的局域网(LAN)、存储区域网(SAN)、广域网(WAN)、对等网络、无线网络等网络。
PiT拷贝管理器116执行PiT拷贝操作,所述PiT拷贝操作按照即刻显现并且允许处理继续访问源卷而对拷贝卷的实际数据传输被延迟到稍后时间的方式来复制数据。PiT拷贝即刻显现,这是因为响应于在没有复制数据的情况下产生关系数据结构,返回了完整响应。
存储库拷贝管理器108将在不同时间点的源数据104(包括所有源数据的初始拷贝)复制至存储库110,并且将在存储控制器100处的PiT拷贝信息200复制至存储库110,以存储在存储库110中作为为存储库PiT拷贝信息300。存储库拷贝管理器108使用PiT拷贝信息300来确定在源数据104处发生变化的数据,以复制至存储库110中的变化的数据120。为了将截至初始时间点的所有源数据复制至存储库110,存储库拷贝管理器108可以修改初始PiT拷贝的变化信息或PiT位图,以产生经修改的初始变化信息2000’,其中,PiT位图具有指示数据是否已发生变化的、用于源数据104中的每一个数据单元的比特,经修改的初始变化信息2000’指示源数据104中的每一个数据单元已发生变化。然后,存储库拷贝管理器108可以将经修改的初始变化信息2000’中所指示的所有源数据104复制至存储库110中的变化的数据120,以在存储库10中提供截至初始时间点的源数据104的完整拷贝。存储库拷贝管理器108可以使用在初始时间点之后的PiT拷贝的PiT拷贝信息200中的变化信息,将在不同时间点的变化的数据复制至存储库110中的变化的数据120。
利用所描述的实施例,存储库拷贝管理器108在单独的贮存器112中维护源数据104的单独的完整拷贝和源数据104的PiT拷贝信息300,使得可以独立于第一贮存器102中的源数据104和在存储管理器100处的PiT拷贝信息200a将数据复原至不同的时间点。因此,存储库110通过允许源数据104的独立复原提供独立于存储控制器100的冗余安全备份,以防止遭受存储管理器100或第一贮存器102处的故障。
在特定的实施例中,存储库110的创建和管理是由独立于存储管理100程序的存储库拷贝管理器108(诸如创建PiT拷贝的PiT拷贝管理器116)来管理的。
为了创建复原拷贝124,存储库拷贝管理器108可以利用复原拷贝信息130,所述复原拷贝信息130指示变化的数据120中需要被复制至复原拷贝124的源数据。
在图1的实施例中,存储库创建和复原操作可以由程序组件执行,诸如独立于存储控制器逻辑(例如创建PiT拷贝的PiT拷贝管理器116)的存储库拷贝管理器108。在替选实施例中,可以在存储控制器110上维护存储库拷贝管理器108和/或存储库110。
图2示出在时间Ti时刻的PiT拷贝的PiT拷贝信息200i的实例,所述PiT拷贝信息200i可以包括为存储控制器PiT拷贝信息200维护的信息,并且可以包括PiT拷贝标识符202、PiT拷贝202的时间点204、变化信息206和变化的PiT数据208,其中,PiT拷贝标识符202标识在存储控制器100处由PiT拷贝管理器116创建的PiT拷贝;PiT拷贝202的时间点204可以表示数据截至时间点204是一致的;变化信息206指示源数据104中的哪些数据或轨道自时间点204以来并且在PiT拷贝202打开的同时已发生变化,所述变化信息206可以包括具有用于每一个数据单元(例如轨道)的比特的位图,该比特可以被设置为两个值中的一个,从而指示由该比特代表的数据或轨道自时间点204以来有无被更新;变化的PiT数据208包括在时间点204之后在PiT拷贝202打开的同时已发生变化并且仍然正被更新的在时间点204的数据。可以为在初始时间T0获取的初始PiT拷贝和在随后时间点获取的随后的PiT拷贝维护PiT拷贝信息。
在一个实施例中,PiT拷贝可以在时间点204之后的时间完成或被冻结,使得变化的PiT数据208包括从时间点204起直至PiT拷贝202完成(例如被冻结或新的PiT拷贝被启动)时发生变化的数据,但是不包括在PiT拷贝202完成(例如被冻结)之后发生变化的数据。当在时间点204之后的时间点存在冻结命令或启动随后的PiT拷贝时,PiT拷贝202可以完成。完成的PiT拷贝202截至时间点可以是一致的。可以使用其他技术来完成(例如冻结)PiT拷贝。
图3示出在存储库110中维护的PiT拷贝信息300i的实例的实施例,PiT拷贝信息300i是根据来自存储控制器100的PiT拷贝信息200i的实例而产生的,并且PiT拷贝信息300i包括PiT拷贝标识符302、PiT拷贝302的时间点304、变化信息306和存储库偏移308,其中,PiT拷贝标识符302标识在存储控制器100处由PiT拷贝管理器116创建的PiT拷贝;PiT拷贝302的时间点304可以表示数据截至时间点304是一致的;变化信息306指示源数据104中的哪些数据或轨道自时间点304以来并且在PiT拷贝302打开的同时已发生变化,所述变化信息306可以包括位图;存储库偏移308指示变化的数据120中的偏移,PiT拷贝302的变化信息306中指示的数据位于该变化的数据120中的偏移处。例如,通过利用变化信息306中指示的变化单元的编号(即,第j个数据单元)乘以数据单元的长度对存储库偏移208求和,可以根据存储库偏移208将PiT拷贝302的特定的变化的数据单元在变化的数据120中的位置确定为在变化的数据120中的偏移处。通过这种方式,来自PiT拷贝300的变化的数据将在变化的数据120中的最后写入数据之后被顺序地写入存储库110中。
图4示出由存储库拷贝管理器108和PiT拷贝管理器116执行的如下操作的实施例,所述操作将在不同时间点的源数据104从由PiT拷贝管理器116创建的源数据104的PiT拷贝(诸如生产卷)复制至存储库110。当启动(在块400)对于源数据104的存储库复制操作时,存储库拷贝管理器108将命令发送给(在块402)PiT拷贝管理器,以在初始时间点(本文中被称为T0)创建初始PiT拷贝2000。存储库拷贝管理器108可以修改初始变化信息2000以产生经修改的初始变化信息2000’,经修改的初始变化信息2000’指示源数据中的所有源数据单元已发生变化。存储库拷贝管理器108可以向存储库110发送(在块406)指示所有数据单元已发生变化的经修改的初始变化信息2000’和将所有源数据指示为已发生变化的、经修改的初始变化信息2000’中所指示的初始PiT拷贝(T0)的变化的PiT数据2080。截至初始时间点的所有源数据被复制至存储库110中的变化的数据120。来自存储控制器100的PiT拷贝2000’将被存储为存储库偏差208为零的PiT拷贝信息3000,因为来自初始PiT拷贝T0的数据的开端被存储在存储库110中的变化的数据120的开始位置。
存储库拷贝管理器108可以向PiT拷贝管理器116发送(在块408)命令,以在随后的时间点Ti+1点创建一个随后的PiT拷贝(Ti+1),这将产生PiT拷贝信息200(i+1)。在一个实施例中,存储库拷贝管理器108可以向PiT拷贝管理器116发送单独的命令,以创建PiT拷贝并且冻结先前创建的PiT拷贝。在替选实施例中,存储库拷贝管理器108可以向PiT拷贝管理器116发送一个命令,以指示PiT拷贝管理器116周期性创建源数据104的PiT拷贝,其中,随后的PiT拷贝的创建冻结先前创建的PiT拷贝。另外,在存储控制器110处的PiT拷贝管理器116可以在没有来自存储库拷贝管理器108的提示的情况下独立地创建PiT拷贝。
当确定(在块410)在Ti的先前时间点拷贝完成时,存储库拷贝管理器116将在时间Ti的PiT拷贝的PiT拷贝信息200i发送(在块412)到存储库110存储,所述PiT拷贝信息200i包括变化信息206i和变化的PiT数据208i,以在存储库中存储Ti时间的PiT拷贝信息300i。在一个实施例中,当在时间Ti+1时间的随后PiT拷贝被创建时,可以完成在时间点Ti的PiT拷贝。在替选实施例中,可以通过发出冻结命令来完成PiT拷贝,所述冻结命令冻结PiT拷贝,使得变化信息206停止指示源数据104的变化。存储库拷贝管理器108根据接收到的PiT拷贝信息200i,在存储库中创建(在块414)PiT拷贝信息300i。
存储库拷贝管理器108可以将自先前时间以来已发生变化的在随后时间(Ti+1)的源数据104传输(在块416)至在存储库110中的变化的数据120,以产生截至随后时间Ti+1时间的完整拷贝。为了执行这个操作,存储库拷贝管理器108可以根据在Ti时间的先前PiT拷贝的变化信息206来确定源数据104中已发生变化的数据单元,然后将来自源数据104的这些数据单元复制至变化的数据120。以此方式,在随后PiT拷贝(Ti+1)被创建的随后时间点Ti+1,在先前时间点Ti和随后时间点Ti+1之间已发生变化的源数据104中的数据单元被复制至存储库110中的变化的数据120。
存储库拷贝管理器108可以以存储库偏移308指示(在块418)变化的数据120中的数据单元偏移,在Ti时间的PiT拷贝的变化的数据在变化的数据120中的数据单元偏移处开始。如果(在块420)要创建其他时间点拷贝,则在处理下一个PiT拷贝的下一个迭代期间,存储库拷贝管理器108(在块422)把在(Ti+1)的当前的随后时间点拷贝视为在Ti的先前时间点拷贝。以此方式,在当前的随后时间点Ti+1成为先前时间点并且下一个时间点成为新的随后时间点时,i有效地增加。然后,控制返回到块408以在新的随后时间点Ti+1来创建或处理新的随后PiT拷贝(Ti+1)。如果(在块420)没有其他PiT拷贝要处理,则控制结束。
利用图4所描述的实施例,独立于存储控制器100创建PiT拷贝的操作,创建具有不同PiT拷贝的PiT拷贝信息的源数据104的完整拷贝的存储库110。以此方式,存储库管理操作的逻辑或操作独立于存储控制器100创建PiT拷贝的逻辑。
图5a、图5b、图5c示出图4的如下操作的示例,所述操作将在不同时间点的所有源数据和存储库PiT拷贝信息200b复制至变化的数据120。图5a示出被复制至存储库110中的变化的数据1200的源贮存器102中的源数据1040在初始时间T0时的状态,源数据1040可以包括截至初始时间T0的所有源数据104。另外,在初始时间T0被创建PiT拷贝信息2000,所述PiT拷贝信息2000中包含具有变化信息2060’,所述变化信息2060’指示在存储控制器100处的所有源数据已发生变化。
图5b示出在T1的第二个PiT拷贝2001被创建的T1时间,这可以导致在T0时间的先前PiT拷贝2000的完成或冻结,先前PiT拷贝2000具有在T0和T1之间发生变化之前、截至时间点T0的变化的数据2080。存储库拷贝管理器108将在T0和T1之间的变化的数据(被示出为单元520和522)复制至存储库110中的变化的数据1201,以把变化的数据1201更新为在初始写入数据之后具有截至T1的变化的数据520、522。另外,已完成或已冻结的在T0的PiT拷贝信息2000被复制至存储库110,以存储为存储库PiT拷贝3000,所述存储库PiT拷贝3000包括指示0的偏移3080,因为初始PiT拷贝2000的源数据是被写入变化的数据1201的第一个数据。
图5c示出在T2的第三个PiT拷贝2002被创建的T2时间,这可以导致在T1的PiT拷贝2001的完成或冻结,所述PiT拷贝2001具有在T1和T2之间发生变化之前、截至时间点T1的变化的数据2081。存储库拷贝管理器108将在T1和T2之间的变化的数据(被示出为524和526)复制至存储库110,以把变化的数据1202更新为具有截至T2的数据。另外,已完成或已冻结的在T1的PiT拷贝信息2001被复制至存储库110,以存储为存储库PiT拷贝3001,所述存储库PiT拷贝3001包括存储库偏移3081,所述存储库偏移3081指示在存储库1202中变化的数据520和522开始的数据单元偏移。
图6示出由存储库拷贝管理器108执行的如下操作的实施例,所述操作从存储库110创建截至复原时间(TR)的复原拷贝124,所述复原拷贝124可以包括存储库时间点拷贝200b中的一个的时间点。当处理(在块600)用以创建截至复原时间(TR)的源数据的复原拷贝124的复原请求时,复原拷贝管理器108配置(在块602)空白的复原拷贝124或复原卷,用于复原的来自变化的数据120的数据被复制至所述空白的复原拷贝124或复原卷。存储库拷贝管理器108确定(在块604)要复制至复原拷贝124的源数据,包括来自初始PiT拷贝2000的变化的数据120的变化的数据单元(该数据是作为初始PiT拷贝的一部分而复制的)和在复原时间处或在复原时间之前的时间点拷贝中的每一个。如果多个PiT拷贝300提供了源数据的相同数据单元,则在时间上最接近复原时间的PiT拷贝的数据单元被包括所确定的要复制的源数据中。然后,存储库拷贝管理器108启动(在块606)把所确定的源数据复制至复原拷贝124的操作。响应于完成复制所确定的源数据,存储库拷贝管理器108(在块608)使得复原拷贝124可用,以提供截至复原时间(TR)的源数据的完整拷贝。
图7示出用以确定要复制至复原拷贝124的在存储库124中的变化的数据120中的源数据的操作(诸如图6中的块604处执行的操作)的实施例。当启动(在块700)从变化的数据120确定要复制的源数据的操作时,存储库拷贝管理器108初始化(在块702)复原拷贝信息130(诸如位图),从而把所有源数据单元指示为尚未被复制至复原拷贝124。(在块704)把Ti设置为TR。存储库拷贝管理器106(在块706)确定在复原拷贝信息130中被指示为尚未被复制(例如具有指示尚未被复制的比特值)的在时间Ti时间,的PiT拷贝300i的变化的数据单元120。
对于在步骤706确定的每一个变化的数据单元,存储库拷贝管理器106根据在Ti的PiT拷贝的存储库偏移308来确定(在块708)数据单元在存储库中的位置(例如,变化的数据单元编号与存储器偏移之和乘以数据单元长度)。在一个实施例中,存储器偏移308可以提供PiT拷贝中的第一个变化的数据单元的信息,并且存储库拷贝管理器108必须基于变化的数据单元的编号来确定特定数据单元的偏移,即,PiT拷贝变化信息306i中所指示的第j个变化的数据单元加上存储器偏移308i,然后将总和乘以数据单元长度。替选地,存储库偏移308可以指示用于在T0的初始PiT拷贝之后的PiT拷贝的每一个变化的数据单元的在变化的数据120中的偏移编号。
例如,在一个实施例中,存储库偏移308i包括在Ti的PiT拷贝的变化的数据在变化的数据120中开始的位置的偏移,所确定的位置可以包括变化的数据单元的编号(包括按照在Ti的PiT拷贝的数据单元被写入的顺序的编号),加上在Ti的PiT拷贝的存储库偏移308i,该总和乘以数据单元长度。例如,如果数据单元是被写入到变化的数据120的在Ti的PiT拷贝的第3个数据单元,在Ti的PiT拷贝的变化的数据在变化的数据120中开始的数据单元编号偏移为100,并且数据单元长度为16字节,则变化的数据120中的数据单元的位置包括3与100的总和乘以16,例如,(3+100)×16,这等于变化的数据120中的第4800个字节。
所确定的来自PiT拷贝300i的变化的数据单元在变化的数据120中的位置是在块708确定的,将所述变化的数据单元从所确定的位置复制(在块710)至复原拷贝124,并且所复制的数据单元在复原拷贝信息130中被指示(在块712)为已复制的。
如果(在块714)Ti等于T0,则在复原时间点TR处或在复原时间点TR之前的所有PiT拷贝300已被考虑了,并且控制结束。否则,如果Ti不等于T0,则Ti被设置(在块716)为Ti-1以回到块706,以考虑紧挨在最后被考虑的PiT拷贝300i之前的下一个PiT拷贝300i-1。利用图7的操作,以逆时间顺序根据来自最接近复原时间的PiT拷贝来确定变化的数据单元。以此方式,如果多个PiT拷贝提供相同源数据单元的变化的数据,则所复制的变化的数据来自提供时间上最接近复原时间TR的数据单元的变化的数据的PiT拷贝,使得利用截至复原时间TR的来自存储库110的变化的数据120来提供复原拷贝124。
在图7的实施例中,在下一个PiT拷贝被考虑之前正被考虑的PiT拷贝的变化的数据单元被复制。在替选实施例中,要从不同PiT拷贝复制的所有源数据单元可以在将变化的数据复制至复原拷贝124之前被确定。
所描述的实施例提供了创建存储库的技术,所述存储库具有截至初始时间的所有源数据单元,包括在自初始时间以来从源数据104获取的PiT拷贝之间已发生变化的源数据单元。另外,存储库维护从源数据104创建的PiT拷贝的PiT拷贝信息。利用所描述的实施例,可以使用存储库中的PiT拷贝信息,通过考虑在复原时间处或在复原时间之前的PiT拷贝的PiT拷贝信息确定截至复原时间的变化的数据,根据存储库中的变化的数据来创建截至复原时间的复原拷贝卷。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。Java以及所有基于Java的商标和标记是甲骨文和/或其附属企业的商标或者注册商标。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
图1中的计算组件(包括存储控制器100和主机106)可以被实现在一个或多个计算机系统中,诸如图8中所示的计算机系统802。计算机系统/服务器802可以在由计算机系统执行的计算机系统可执行指令(例如程序模块)的通用上下文中被描述。通常,程序模块可以包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、逻辑、数据结构等。计算机系统/服务器802可以被实现在分布式云计算环境中,在分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机系统存储介质中。
如图8中所示,计算机系统/服务器802以通用计算设备的形式示出。计算机系统/服务器802的组件可以包括但不限于一个或多个处理器或处理单元804、系统存储器806以及将包括系统存储器806的各个系统组件耦接至处理器804的总线808。总线808代表任意若干种类型的总线结构中的一种或多种,包括存储器总线或存储控制器、外围总线、加速图形端口和使用不同总线架构中的任一种的处理器或本地总线。仅举例而不是限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强工业标准架构(EISA)总线、视频电子标准协会(VESA)本地总线和外围部件互联(PCI)总线。
计算机系统/服务器802通常包括各种计算机系统可读介质。这样的介质可以是计算机系统/服务器802可访问的任何可用的介质,并且这样的介质包括易失性介质和非易失性介质、以及可移除介质和不可移除介质。
系统存储器806可以包括易失性存储器形式的计算机系统可读介质,诸如随机存取存储器(RAM)801和/或高速缓冲存储器812。另外,计算机系统/服务器802可以包括其他可移除/不可移除、易失性/非易失性计算机系统存储介质。仅通过举例的方式,存储系统813可被提供用于读取和写入不可移除、非易失性磁介质(未被示出并且通常被称为“硬盘驱动器”)。尽管未被示出,可以提供用于读取和写入可移除、非易失性磁盘(例如,“软盘”)的磁盘驱动器,以及可以提供用于读取和写入可移除、非易失性光盘(诸如CD-ROM、DVD-ROM或其他光介质)的光盘驱动器。在这样的实例中,每个可通过一个或多个数据介质接口连接到总线808。如下面将进一步示出和描述的,存储器806可以包括具有一组(例如,至少一个)程序模块的至少一个程序产品,这组程序模块被配置为执行本发明的实施例的功能。
通过举例的方式而不是限制,具有一组(至少一个)程序模块816的程序/实用工具814以及操作系统、一个或多个应用程序、其他程序模块和程序数据可以存储在存储器806中。操作系统、一个或多个应用程序、其他程序模块和程序数据中的每一个或其某些组合可以包括联网环境的实现方式。计算机802的组件可被实现为程序模块816,程序模块816通常实现本文中描述的本发明的实施例的功能和方法。图1中的系统可以被实现在一个或多个计算机系统802中,其中,如果他们被实现在多个计算机系统802中,则计算机系统可以通过网络进行通信。
计算机系统/服务器802也可以与一个或多个外部设备818(诸如键盘、指点设备、显示器820等)进行通信;与使得用户能够与计算机系统/服务器802交互的一个或多个设备进行通信;和/或与使得计算机系统/服务器802能够与一个或多个其他计算设备进行通信的任意设备(例如网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口822来进行。另外,计算机系统/服务器802可以经由网络适配器824与一个或多个网络(诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,因特网))进行通信。如所示出的,网络适配器824经由总线808与计算机系统/服务器802的其他组件进行通信。应该理解,尽管未示出,但是可以与计算机系统/服务器802结合地使用其他硬件和/或软件组件。例子包括但不限于:微码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器和数据归档存储系统等。
除非明确的另外指出,术语“实施例”、“这个实施例”、“这些实施例”、“一个或多个实施例”、“一些实施例”和“一个实施例”指的是“本发明的一个或多个(但不是所有)实施例”。
除非明确的另外指出,术语“包含”、“包括”、“具有”及其变形指的是“包括但不限于”。
除非明确的另外指出,列举的列表的条款并不暗示任何或所有这些条款相互排斥。
除非明确的另外指出,术语“一个”指的是“一个或多个”。
除非明确的另外指出,相互通信的设备不需要相互持续通信。另外,相互通信的设备可以直接或间接地通过一个或多个中介进行通信。
利用相互通信的多个组件来描述实施例并不暗示需要所有这样的组件。相反,描述了各种可选的组件以示出本发明的各种可能的实施例。
当本文中描述单个设备/物品时,将容易想到的是,可以替代单个设备/物品而使用多于一个设备/物品(无论它们是否协作)。类似地,当本文中描述多于一个设备/物品时,将容易想到的是,可以代替多于一个设备/物品而使用单个设备/物品,或者可以代替示出的数量的设备或程序而使用不同数量的设备/物品。设备的功能和/或特征可以替选地由并未被明确地描述为具有这样的功能/特征的一个或多个其他设备来实现。因此,本发明的其他实施例并不需要包括该设备自身。
仅为了图示和说明的目的而呈现了对本发明的不同实施例的上述描述。并不旨在穷尽或将本发明局限于所公开的确切形式。依照上述教导,许多修改和变型是可能的。意图在于本发明的范围不是由该详细描述而是由所附权利要求来限定。上述说明、示例和数据提供了制造和使用本发明的组成部分的完整说明。因为在不偏离本发明的范围的前提下可以做出本发明的许多实施例,所以本发明由本文中后面所附的权利要求书决定。
Claims (19)
1.一种用于维护存储库中的源数据的系统,包括:
处理器;以及
包括程序指令的计算机可读存储介质,所述程序指令被处理器运行以执行操作,所述操作包括:
将截至初始时间点的所有源数据从源复制至存储库;
启动源数据在初始时间点之后的不同时间点的时间点拷贝,其中,对于每个时间点拷贝,生成指示在该时间点拷贝打开期间变化了的数据在源数据中的位置的变化信息;
作为对完成所启动的时间点拷贝的每一个先前时间点拷贝的响应,将生成的变化信息传输至存储库,所述变化信息指示变化的时间点数据在源数据中的位置,所述变化的时间点数据包含源数据中的在所述先前时间点拷贝的时间点和随后的时间点之间发生变化的数据;
对于每一个时间点拷贝,复制变化的时间点数据至存储库;
指示存储库的变化的数据中的具有所述先前时间点拷贝的所述变化的时间点数据的位置,其中,存储库的变化的数据具有在传输到存储库的先前时间点拷贝的生成的变化信息的拷贝中所指示的多个先前时间点拷贝的变化的时间点数据;
接收复原请求以复原截至复原时间点的源数据;
确定在截至复原时间点被复制到存储库并维护在存储库的变化的数据中的先前时间点拷贝的生成的变化信息中指示的源数据;以及
将所确定的源数据从存储库复制至复原拷贝。
2.根据权利要求1所述的系统,其中,所述时间点拷贝是由时间点拷贝程序产生的,并且其中与所述时间点拷贝程序独立地运行的存储库拷贝程序执行如下操作:将变化信息和在所述变化信息中被指示为发生变化的在随后的时间点的数据复制至存储库。
3.根据权利要求1所述的系统,其中,所述操作还包括:
为存储库中的每一个时间点拷贝指示存储库偏移,所述存储库偏移用于指示在存储库中该时间点拷贝的变化的数据被写入的位置的偏移。
4.根据权利要求1-3中任一项所述的系统,其中,所述确定在截至复原时间点被复制到存储库并维护在存储库的变化的数据中的先前时间点拷贝的生成的变化信息中指示的源数据包括:确定存储库中截至复原时间的源数据,其中如果存储库具有不同时间点拷贝的数据单元的多个拷贝,则在所确定的源数据中包含来自最接近复原时间的时间点拷贝的数据单元。
5.根据权利要求1-3中任一项所述的系统,其中,将截至初始时间点的所有源数据从源复制至存储库包括:
创建源数据在初始时间点的时间点拷贝,该时间点拷贝包括指示所有源数据已发生变化的变化信息;以及
将在初始时间点的时间点拷贝的变化信息传输至存储库。
6.根据权利要求4所述的系统,其中,将截至初始时间点的所有源数据从源复制至存储库包括:
创建源数据在初始时间点的时间点拷贝,该时间点拷贝包括指示所有源数据已发生变化的变化信息;以及
将在初始时间点的时间点拷贝的变化信息传输至存储库。
7.根据权利要求5所述的系统,其中,确定在截至复原时间点被复制到存储库并维护在存储库的变化的数据中的先前时间点拷贝的生成的变化信息中指示的源数据包括:
初始化复原拷贝信息,所述复原拷贝信息指示所有源数据单元还未被复制至所述复原拷贝;
对于在复原时间点处或在复原时间点之前的每一个时间点拷贝,从最接近复原时间的时间点拷贝开始并且以逆时间顺序考虑时间点拷贝,以执行:
确定时间点拷贝的在复原拷贝信息中被指示为尚未被复制的变化的数据单元,其中,所确定的变化的数据单元被包括在所确定的要复制的源数据中;
使用时间点拷贝的存储库偏移来确定所确定的变化的数据单元被存储在存储库中的位置;至所述复原拷贝;
将变化的数据单元从所确定的存储库中的位置复制;以及
在复原拷贝信息中将所确定的变化的数据单元指示为已复制。
8.根据权利要求6所述的系统,其中,确定在截至复原时间点被复制到存储库并维护在存储库的变化的数据中的先前时间点拷贝的生成的变化信息中指示的源数据包括:
初始化复原拷贝信息,所述复原拷贝信息指示所有源数据单元还未被复制至所述复原拷贝;
对于在复原时间点处或在复原时间点之前的每一个时间点拷贝,从最接近复原时间的时间点拷贝开始并且以逆时间顺序考虑时间点拷贝,以执行:
确定时间点拷贝的在复原拷贝信息中被指示为尚未被复制的变化的数据单元,其中,所确定的变化的数据单元被包括在所确定的要复制的源数据中;
使用时间点拷贝的存储库偏移来确定所确定的变化的数据单元被存储在存储库中的位置;至所述复原拷贝;
将变化的数据单元从所确定的存储库中的位置复制;以及
在复原拷贝信息中将所确定的变化的数据单元指示为已复制。
9.根据权利要求1-3中任一项所述的系统,其中,所述操作还包括:
配置空白的复原卷,将复原拷贝的数据复制至所述空白复原卷,其中,在所有来自存储库的源数据的数据被复制至所述复原卷后,所述复原卷可用。
10.一种用于维护存储库中的源数据的方法,所述方法包括:
将截至初始时间点的所有源数据从源复制至存储库;
启动源数据在初始时间点之后的不同时间点的时间点拷贝,其中,对于每个时间点拷贝,生成指示在该时间点拷贝打开期间变化了的数据在源数据中的位置的变化信息;
作为对完成所启动的时间点拷贝的每一个先前时间点拷贝的响应,将生成的变化信息传输至存储库,所述变化信息指示变化的时间点数据在源数据中的位置,所述变化的时间点数据包含源数据中的在所述先前时间点拷贝的时间点和随后的时间点之间发生变化的数据;
对于每一个时间点拷贝,复制变化的时间点数据至存储库;
指示存储库的变化的数据中的具有所述先前时间点拷贝的所述变化的时间点数据的位置,其中,存储库的变化的数据具有在传输到存储库的先前时间点拷贝的生成的变化信息的拷贝中所指示的多个先前时间点拷贝的变化的时间点数据;
接收复原请求以复原截至复原时间点的源数据;
确定在截至复原时间点被复制到存储库并维护在存储库的变化的数据中的先前时间点拷贝的生成的变化信息中指示的源数据;以及
将所确定的源数据从存储库复制至复原拷贝。
11.根据权利要求10所述的方法,其中,所述时间点拷贝是由时间点拷贝程序产生的,并且其中与所述时间点拷贝程序独立地运行的存储库拷贝程序执行如下操作:将变化信息和在所述变化信息中被指示为发生变化的在随后的时间点的数据复制至存储库。
12.根据权利要求10所述的方法,其中,所述操作还包括:
为存储库中的每一个时间点拷贝指示存储库偏移,所述存储库偏移用于指示在存储库中该时间点拷贝的变化的数据被写入的位置的偏移。
13.根据权利要求10至12中任一项所述的方法,其中,所述确定在截至复原时间点被复制到存储库并维护在存储库的变化的数据中的先前时间点拷贝的生成的变化信息中指示的的源数据包含:确定存储库中截至复原时间的源数据,其中如果存储库具有不同时间点拷贝的数据单元的多个拷贝,则在所确定的源数据中包含来自最接近复原时间的时间点拷贝的数据单元。
14.根据权利要求10至12中任一项所述的方法,其中,所述将截至初始时间点的所有源数据从源复制至存储库包括:
创建源数据在初始时间点的时间点拷贝,该时间点拷贝包括指示所有源数据已发生变化的变化信息;以及
将在初始时间点的时间点拷贝的变化信息传输至存储库。
15.根据权利要求13所述的方法,其中,所述将截至初始时间点的所有源数据从源复制至存储库包括:
创建源数据在初始时间点的时间点拷贝,该时间点拷贝包括指示所有源数据已发生变化的变化信息;以及
将在初始时间点的时间点拷贝的变化信息传输至存储库。
16.根据权利要求14所述的方法,其中,所述确定在截至复原时间点被复制到存储库并维护在存储库的变化的数据中的先前时间点拷贝的生成的变化信息中指示的源数据包括:
初始化复原拷贝信息,所述复原拷贝信息指示所有源数据单元还未被复制至所述复原拷贝;
对于在复原时间点处或在复原时间点之前的每一个时间点拷贝,从最接近复原时间的时间点拷贝开始并且以逆时间顺序考虑时间点拷贝,以执行:
确定时间点拷贝的在复原拷贝信息中被指示为尚未被复制的变化的数据单元,其中,所确定的变化的数据单元被包括在所确定的要复制的源数据中;
使用时间点拷贝的存储库偏移来确定所确定的变化的数据单元被存储在存储库中的位置;至所述复原拷贝;
将变化的数据单元从所确定的存储库中的位置复制;以及
在复原拷贝信息中将所确定的变化的数据单元指示为已复制。
17.根据权利要求15所述的方法,其中,所述确定在截至复原时间点被复制到存储库并维护在存储库的变化的数据中的先前时间点拷贝的生成的变化信息中指示的源数据包括:
初始化复原拷贝信息,所述复原拷贝信息指示所有源数据单元还未被复制至所述复原拷贝;
对于在复原时间点处或在复原时间点之前的每一个时间点拷贝,从最接近复原时间的时间点拷贝开始并且以逆时间顺序考虑时间点拷贝,以执行:
确定时间点拷贝的在复原拷贝信息中被指示为尚未被复制的变化的数据单元,其中,所确定的变化的数据单元被包括在所确定的要复制的源数据中;
使用时间点拷贝的存储库偏移来确定所确定的变化的数据单元被存储在存储库中的位置;至所述复原拷贝;
将变化的数据单元从所确定的存储库中的位置复制;以及
在复原拷贝信息中将所确定的变化的数据单元指示为已复制。
18.根据权利要求10至12中任一项所述的系统,其中,所述操作还包括:
配置空白的复原卷,将所述复原拷贝的数据复制至所述空白复原卷,其中,在所有来自存储库的源数据的数据被复制至所述复原卷后,所述复原卷可用。
19.一种用于维护存储库中的源数据的计算机可读存储介质,所述计算机可读存储介质能被处理电路读取,并且存储由所述处理电路运行以执行根据权利要求10至18中任一项所述的方法的指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/175,980 US10372546B2 (en) | 2014-02-07 | 2014-02-07 | Creating a restore copy from a copy of source data in a repository having source data at different point-in-times |
US14/175,980 | 2014-02-07 | ||
PCT/IB2015/050225 WO2015125030A1 (en) | 2014-02-07 | 2015-01-12 | Creating restore copy from copy of source data in repository having source data at different point-in-times |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105960635A CN105960635A (zh) | 2016-09-21 |
CN105960635B true CN105960635B (zh) | 2021-02-09 |
Family
ID=53775023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580007367.9A Active CN105960635B (zh) | 2014-02-07 | 2015-01-12 | 用于维护存储库中的源数据的系统和方法 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10372546B2 (zh) |
JP (1) | JP6831701B2 (zh) |
CN (1) | CN105960635B (zh) |
DE (1) | DE112015000343T5 (zh) |
GB (1) | GB2538464B (zh) |
WO (1) | WO2015125030A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10372546B2 (en) | 2014-02-07 | 2019-08-06 | International Business Machines Corporation | Creating a restore copy from a copy of source data in a repository having source data at different point-in-times |
US11169958B2 (en) | 2014-02-07 | 2021-11-09 | International Business Machines Corporation | Using a repository having a full copy of source data and point-in-time information from point-in-time copies of the source data to restore the source data at different points-in-time |
US11194667B2 (en) | 2014-02-07 | 2021-12-07 | International Business Machines Corporation | Creating a restore copy from a copy of a full copy of source data in a repository that is at a different point-in-time than a restore point-in-time of a restore request |
US10387446B2 (en) | 2014-04-28 | 2019-08-20 | International Business Machines Corporation | Merging multiple point-in-time copies into a merged point-in-time copy |
US10031917B2 (en) * | 2014-07-29 | 2018-07-24 | Commvault Systems, Inc. | Efficient volume-level replication of data via snapshots in an information management system |
US10261868B2 (en) | 2016-11-17 | 2019-04-16 | International Business Machines Corporation | Using a forward log storage and backward log storage to recover a storage to a forward or backward point-in-time |
US10372548B2 (en) | 2016-11-17 | 2019-08-06 | International Business Machines Corporation | Copying data from multiple point-in-time copies to a log storage to use to roll-back a source storage |
US10162563B2 (en) * | 2016-12-02 | 2018-12-25 | International Business Machines Corporation | Asynchronous local and remote generation of consistent point-in-time snap copies |
CN107784093A (zh) * | 2017-10-13 | 2018-03-09 | 郑州云海信息技术有限公司 | 一种分布式的大数据处理系统 |
CN110058958B (zh) * | 2018-01-18 | 2023-07-25 | 伊姆西Ip控股有限责任公司 | 用于管理数据备份的方法、设备和计算机程序产品 |
US10783047B2 (en) * | 2018-09-06 | 2020-09-22 | International Business Machines Corporation | Forming a consistency group comprised of volumes maintained by one or more storage controllers |
CN111061423B (zh) * | 2018-10-17 | 2023-09-26 | 杭州海康威视系统技术有限公司 | 一种数据处理方法、装置和管理节点 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1071770A (zh) * | 1991-10-18 | 1993-05-05 | 国际商业机器公司 | 用于时间零数据后备复制的方法与装置 |
US7284104B1 (en) * | 2003-06-30 | 2007-10-16 | Veritas Operating Corporation | Volume-based incremental backup and recovery of files |
CN101149694A (zh) * | 2007-11-02 | 2008-03-26 | 西安三茗科技有限责任公司 | 基于块级的增量备份和整卷恢复的方法 |
US7529782B2 (en) * | 2003-11-13 | 2009-05-05 | Commvault Systems, Inc. | System and method for performing a snapshot and for restoring data |
US7822717B2 (en) * | 2006-02-07 | 2010-10-26 | Emc Corporation | Point-in-time database restore |
CN102236589A (zh) * | 2010-05-04 | 2011-11-09 | 南京壹进制信息技术有限公司 | 一种基于数字标识符管理增量文件的数据保护方法 |
Family Cites Families (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU5774200A (en) | 1999-06-28 | 2001-01-31 | Sangate Systems Inc. | Intelligent splitter, system, and methods of use |
US6912629B1 (en) | 1999-07-28 | 2005-06-28 | Storage Technology Corporation | System and method for restoring data from secondary volume to primary volume in a data storage system |
US6594744B1 (en) | 2000-12-11 | 2003-07-15 | Lsi Logic Corporation | Managing a snapshot volume or one or more checkpoint volumes with multiple point-in-time images in a single repository |
US6799258B1 (en) | 2001-01-10 | 2004-09-28 | Datacore Software Corporation | Methods and apparatus for point-in-time volumes |
US20030220948A1 (en) * | 2002-01-22 | 2003-11-27 | Columbia Data Products, Inc. | Managing snapshot/backup collections in finite data storage |
US7237075B2 (en) * | 2002-01-22 | 2007-06-26 | Columbia Data Products, Inc. | Persistent snapshot methods |
US7778958B2 (en) | 2002-04-11 | 2010-08-17 | Quantum Corporation | Recovery of data on a primary data volume |
DE60330035D1 (de) | 2002-09-09 | 2009-12-24 | Dell Marketing Usa L P | System und verfahren zur anwendungsüberwachung und automatischen katastrophenbehebung für hohe verfügbarkeit |
WO2004047078A2 (en) | 2002-11-20 | 2004-06-03 | Filesx Ltd. | Fast backup storage and fast recovery of data (fbsrd) |
US8166128B1 (en) | 2003-02-28 | 2012-04-24 | Oracle America, Inc. | Systems and methods for dynamically updating a virtual volume in a storage virtualization environment |
US7055009B2 (en) | 2003-03-21 | 2006-05-30 | International Business Machines Corporation | Method, system, and program for establishing and maintaining a point-in-time copy |
US7000145B2 (en) | 2003-06-18 | 2006-02-14 | International Business Machines Corporation | Method, system, and program for reverse restore of an incremental virtual copy |
US7412460B2 (en) | 2003-06-19 | 2008-08-12 | International Business Machines Corporation | DBMS backup without suspending updates and corresponding recovery using separately stored log and data files |
JP2005038176A (ja) | 2003-07-15 | 2005-02-10 | Nec Corp | コンピュータシステムおよびファイル管理方法 |
US7546324B2 (en) | 2003-11-13 | 2009-06-09 | Commvault Systems, Inc. | Systems and methods for performing storage operations using network attached storage |
US7133884B1 (en) | 2003-11-26 | 2006-11-07 | Bmc Software, Inc. | Unobtrusive point-in-time consistent copies |
US7277997B2 (en) | 2004-03-16 | 2007-10-02 | International Business Machines Corporation | Data consistency for mirroring updatable source data storage |
US7318134B1 (en) | 2004-03-16 | 2008-01-08 | Emc Corporation | Continuous data backup using distributed journaling |
JP2005292865A (ja) | 2004-03-31 | 2005-10-20 | Hitachi Ltd | ストレージシステム及びストレージシステムのバックアップ方法 |
JP2005301497A (ja) | 2004-04-08 | 2005-10-27 | Hitachi Ltd | ストレージ管理装置、リストア方法及びそのプログラム |
US7284019B2 (en) | 2004-08-18 | 2007-10-16 | International Business Machines Corporation | Apparatus, system, and method for differential backup using snapshot on-write data |
US7934064B1 (en) | 2004-12-21 | 2011-04-26 | Acronis Inc. | System and method for consolidation of backups |
US8335770B2 (en) | 2005-02-03 | 2012-12-18 | Hewlett-Packard Development Company, L.P. | Method of restoring data |
US7809691B1 (en) | 2005-02-22 | 2010-10-05 | Symantec Operating Corporation | System and method of applying incremental changes prior to initialization of a point-in-time copy |
US7814057B2 (en) * | 2005-04-05 | 2010-10-12 | Microsoft Corporation | Page recovery using volume snapshots and logs |
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 |
CN100369000C (zh) | 2005-08-12 | 2008-02-13 | 西安三茗科技有限责任公司 | 一种计算机硬盘数据多时间点快速存储与恢复方法 |
US7426618B2 (en) | 2005-09-06 | 2008-09-16 | Dot Hill Systems Corp. | Snapshot restore method and apparatus |
US8060713B1 (en) | 2005-12-21 | 2011-11-15 | Emc (Benelux) B.V., S.A.R.L. | Consolidating snapshots in a continuous data protection system using journaling |
US7467268B2 (en) | 2006-04-14 | 2008-12-16 | Hewlett-Packard Development Company, L.P. | Concurrent data restore and background copy operations in storage networks |
US7650533B1 (en) | 2006-04-20 | 2010-01-19 | Netapp, Inc. | Method and system for performing a restoration in a continuous data protection system |
US20070277012A1 (en) | 2006-05-23 | 2007-11-29 | Hitachi, Ltd. | Method and apparatus for managing backup data and journal |
JP5124989B2 (ja) | 2006-05-26 | 2013-01-23 | 日本電気株式会社 | ストレージシステム及びデータ保護方法とプログラム |
US7461223B2 (en) | 2006-05-29 | 2008-12-02 | Microsoft Corporation | Retaining shadow copy data during replication |
US7613750B2 (en) | 2006-05-29 | 2009-11-03 | Microsoft Corporation | Creating frequent application-consistent backups efficiently |
JP2007334709A (ja) | 2006-06-16 | 2007-12-27 | Fujitsu Ltd | ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法 |
US8311988B2 (en) | 2006-08-04 | 2012-11-13 | Apple Inc. | Consistent back up of electronic information |
US7836267B1 (en) | 2006-08-30 | 2010-11-16 | Barracuda Networks Inc | Open computer files snapshot |
US7587564B2 (en) | 2006-09-26 | 2009-09-08 | International Business Machines Corporation | System, method and computer program product for managing data versions |
KR100806343B1 (ko) | 2006-10-19 | 2008-02-27 | 삼성전자주식회사 | 플래시 메모리를 포함한 메모리 시스템 및 그것의 맵핑테이블 관리 방법 |
US8880480B2 (en) | 2007-01-03 | 2014-11-04 | Oracle International Corporation | Method and apparatus for data rollback |
JP4900811B2 (ja) | 2007-03-30 | 2012-03-21 | 株式会社日立製作所 | 記憶システムおよび記憶制御方法 |
US7865473B2 (en) * | 2007-04-02 | 2011-01-04 | International Business Machines Corporation | Generating and indicating incremental backup copies from virtual copies of a data set |
US8095804B1 (en) | 2007-05-25 | 2012-01-10 | Emc Corporation | Storing deleted data in a file system snapshot |
US7734885B2 (en) | 2007-06-14 | 2010-06-08 | International Business Machines Corporation | Execution of point-in-time copy operations in continuous mirroring environments |
US8818936B1 (en) | 2007-06-29 | 2014-08-26 | Emc Corporation | Methods, systems, and computer program products for processing read requests received during a protected restore operation |
US8195912B2 (en) * | 2007-12-06 | 2012-06-05 | Fusion-io, Inc | Apparatus, system, and method for efficient mapping of virtual and physical addresses |
US7991972B2 (en) | 2007-12-06 | 2011-08-02 | International Business Machines Corporation | Determining whether to use a full volume or repository for a logical copy backup space |
KR101465789B1 (ko) | 2008-01-24 | 2014-11-26 | 삼성전자주식회사 | 페이지 복사 횟수를 줄일 수 있는 메모리 카드 시스템의쓰기 및 병합 방법 |
CN101499073B (zh) | 2008-01-29 | 2011-10-12 | 国际商业机器公司 | 基于访问频率的连续存储数据的存储管理方法和系统 |
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 |
KR101477047B1 (ko) | 2008-02-29 | 2014-12-30 | 삼성전자주식회사 | 메모리 시스템 및 그것의 블록 병합 방법 |
US8244681B2 (en) * | 2008-06-09 | 2012-08-14 | Symantec Operating Corporation | Creating synthetic backup images on a remote computer system |
JP5156518B2 (ja) | 2008-07-23 | 2013-03-06 | 株式会社日立製作所 | 記憶制御装置及び方法 |
US7979735B2 (en) | 2008-08-15 | 2011-07-12 | International Business Machines Corporation | Data storage with snapshot-to-snapshot recovery |
US8495316B2 (en) | 2008-08-25 | 2013-07-23 | Symantec Operating Corporation | Efficient management of archival images of virtual machines having incremental snapshots |
US8250031B2 (en) | 2008-08-26 | 2012-08-21 | Hitachi, Ltd. | Low traffic failback remote copy |
US8250033B1 (en) | 2008-09-29 | 2012-08-21 | Emc Corporation | Replication of a data set using differential snapshots |
US8099572B1 (en) | 2008-09-30 | 2012-01-17 | Emc Corporation | Efficient backup and restore of storage objects in a version set |
US8006043B2 (en) | 2008-10-06 | 2011-08-23 | Vmware, Inc. | System and method for maintaining memory page sharing in a virtual environment |
US8473697B1 (en) | 2008-10-29 | 2013-06-25 | Netapp, Inc. | Method and system for volume based snapshot restore |
WO2010065271A2 (en) | 2008-11-25 | 2010-06-10 | Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations | Systems and methods for providing continuous file protection at block level |
US8819362B1 (en) | 2009-03-26 | 2014-08-26 | Emc Corporation | Managing replication and reservations |
US8452930B2 (en) | 2009-03-27 | 2013-05-28 | Hitachi, Ltd. | Methods and apparatus for backup and restore of thin provisioning volume |
US8566510B2 (en) | 2009-05-12 | 2013-10-22 | Densbits Technologies Ltd. | Systems and method for flash memory management |
US8555009B1 (en) | 2009-07-31 | 2013-10-08 | Symantec Corporation | Method and apparatus for enabling and managing application input/output activity while restoring a data store |
US8645647B2 (en) | 2009-09-02 | 2014-02-04 | International Business Machines Corporation | Data storage snapshot with reduced copy-on-write |
US8904125B1 (en) | 2009-09-03 | 2014-12-02 | Symantec Corporation | Systems and methods for creating reference-based synthetic backups |
US8161077B2 (en) | 2009-10-21 | 2012-04-17 | Delphix Corp. | Datacenter workflow automation scenarios using virtual databases |
US8417907B2 (en) | 2009-10-29 | 2013-04-09 | Symantec Corporation | Synchronizing snapshot volumes across hosts |
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 |
US8745002B2 (en) | 2010-02-04 | 2014-06-03 | Symantec Corporation | Mounting applications on a partially replicated snapshot volume |
US8244685B2 (en) | 2010-02-24 | 2012-08-14 | Autonomy, Inc. | Data restoration utilizing forward and backward deltas |
US8260752B1 (en) | 2010-03-01 | 2012-09-04 | Symantec Corporation | Systems and methods for change tracking with multiple backup jobs |
US8352422B2 (en) | 2010-03-30 | 2013-01-08 | Commvault Systems, Inc. | Data restore systems and methods in a replication environment |
US8453145B1 (en) | 2010-05-06 | 2013-05-28 | Quest Software, Inc. | Systems and methods for instant provisioning of virtual machine files |
JP2012014286A (ja) | 2010-06-29 | 2012-01-19 | Toshiba Corp | ストレージシステム、同システムにおけるデータバックアップ方法及びデータバックアッププログラム |
US8666944B2 (en) | 2010-09-29 | 2014-03-04 | Symantec Corporation | Method and system of performing a granular restore of a database from a differential backup |
US8924360B1 (en) * | 2010-09-30 | 2014-12-30 | Axcient, Inc. | Systems and methods for restoring a file |
US8788769B2 (en) | 2010-11-16 | 2014-07-22 | Actifio, Inc. | System and method for performing backup or restore operations utilizing difference information and timeline state information |
US8688645B2 (en) | 2010-11-30 | 2014-04-01 | Netapp, Inc. | Incremental restore of data between storage systems having dissimilar storage operating systems associated therewith |
US8886609B2 (en) | 2010-12-17 | 2014-11-11 | Microsoft Corporation | Backup and restore of data from any cluster node |
US8635187B2 (en) | 2011-01-07 | 2014-01-21 | Symantec Corporation | Method and system of performing incremental SQL server database backups |
US8738883B2 (en) * | 2011-01-19 | 2014-05-27 | Quantum Corporation | Snapshot creation from block lists |
US10114701B2 (en) | 2011-01-28 | 2018-10-30 | International Business Machines Corporation | Space efficient cascading point in time copying |
US8676763B2 (en) * | 2011-02-08 | 2014-03-18 | International Business Machines Corporation | Remote data protection in a networked storage computing environment |
JP2012230621A (ja) | 2011-04-27 | 2012-11-22 | Sony Corp | メモリ装置、メモリ制御装置、メモリ制御方法 |
KR101790165B1 (ko) | 2011-08-09 | 2017-11-20 | 삼성전자 주식회사 | 메모리 시스템 및 그것의 메타 데이터 관리 방법 |
US8965850B2 (en) | 2011-11-18 | 2015-02-24 | Dell Software Inc. | Method of and system for merging, storing and retrieving incremental backup data |
US9218138B1 (en) | 2012-03-30 | 2015-12-22 | Emc Corporation | Restoring snapshots to consistency groups of mount points |
EP2852901A4 (en) | 2012-05-23 | 2015-05-13 | Bi Builders As | METHODOLOGY-BASED BUSINESS INTELLIGENCE SOFTWARE AND SYSTEM WITH IT |
JP5536255B2 (ja) | 2012-06-04 | 2014-07-02 | 慧榮科技股▲分▼有限公司 | データアクセス時間を短縮したフラッシュメモリ装置及びフラッシュメモリのデータアクセス方法 |
US9116726B2 (en) | 2012-09-28 | 2015-08-25 | Vmware, Inc. | Virtual disk snapshot consolidation using block merge |
US8832024B2 (en) | 2012-10-26 | 2014-09-09 | Netapp, Inc. | Simplified copy offload |
US9047238B2 (en) | 2012-11-28 | 2015-06-02 | Red Hat Israel, Ltd. | Creating a virtual machine from a snapshot |
US8990465B2 (en) | 2012-12-09 | 2015-03-24 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Device presence detection using a single channel of a bus |
US8782005B2 (en) | 2012-12-12 | 2014-07-15 | Storagecraft Technology Corporation | Pruning previously-allocated free blocks from a synthetic backup |
IN2013CH01006A (zh) * | 2013-03-08 | 2015-08-14 | Lsi Corp | |
US9563655B2 (en) | 2013-03-08 | 2017-02-07 | Oracle International Corporation | Zero and near-zero data loss database backup and recovery |
US11169958B2 (en) | 2014-02-07 | 2021-11-09 | International Business Machines Corporation | Using a repository having a full copy of source data and point-in-time information from point-in-time copies of the source data to restore the source data at different points-in-time |
US11194667B2 (en) | 2014-02-07 | 2021-12-07 | International Business Machines Corporation | Creating a restore copy from a copy of a full copy of source data in a repository that is at a different point-in-time than a restore point-in-time of a restore request |
US10176048B2 (en) * | 2014-02-07 | 2019-01-08 | International Business Machines Corporation | Creating a restore copy from a copy of source data in a repository having source data at different point-in-times and reading data from the repository for the restore copy |
US10372546B2 (en) | 2014-02-07 | 2019-08-06 | International Business Machines Corporation | Creating a restore copy from a copy of source data in a repository having source data at different point-in-times |
US10387446B2 (en) | 2014-04-28 | 2019-08-20 | International Business Machines Corporation | Merging multiple point-in-time copies into a merged point-in-time copy |
US10241691B2 (en) | 2014-11-04 | 2019-03-26 | Rubrik, Inc. | Data management system |
-
2014
- 2014-02-07 US US14/175,980 patent/US10372546B2/en not_active Expired - Fee Related
-
2015
- 2015-01-12 CN CN201580007367.9A patent/CN105960635B/zh active Active
- 2015-01-12 JP JP2016548352A patent/JP6831701B2/ja active Active
- 2015-01-12 DE DE112015000343.6T patent/DE112015000343T5/de active Pending
- 2015-01-12 WO PCT/IB2015/050225 patent/WO2015125030A1/en active Application Filing
- 2015-01-12 GB GB1614650.8A patent/GB2538464B/en active Active
-
2019
- 2019-02-15 US US16/277,998 patent/US11150994B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1071770A (zh) * | 1991-10-18 | 1993-05-05 | 国际商业机器公司 | 用于时间零数据后备复制的方法与装置 |
US7284104B1 (en) * | 2003-06-30 | 2007-10-16 | Veritas Operating Corporation | Volume-based incremental backup and recovery of files |
US7529782B2 (en) * | 2003-11-13 | 2009-05-05 | Commvault Systems, Inc. | System and method for performing a snapshot and for restoring data |
US7822717B2 (en) * | 2006-02-07 | 2010-10-26 | Emc Corporation | Point-in-time database restore |
CN101149694A (zh) * | 2007-11-02 | 2008-03-26 | 西安三茗科技有限责任公司 | 基于块级的增量备份和整卷恢复的方法 |
CN102236589A (zh) * | 2010-05-04 | 2011-11-09 | 南京壹进制信息技术有限公司 | 一种基于数字标识符管理增量文件的数据保护方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2017509958A (ja) | 2017-04-06 |
JP6831701B2 (ja) | 2021-02-17 |
WO2015125030A1 (en) | 2015-08-27 |
US20150227432A1 (en) | 2015-08-13 |
GB201614650D0 (en) | 2016-10-12 |
US11150994B2 (en) | 2021-10-19 |
US10372546B2 (en) | 2019-08-06 |
GB2538464B (en) | 2020-08-12 |
CN105960635A (zh) | 2016-09-21 |
US20190179708A1 (en) | 2019-06-13 |
DE112015000343T5 (de) | 2016-09-22 |
GB2538464A (en) | 2016-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105960635B (zh) | 用于维护存储库中的源数据的系统和方法 | |
US10956281B2 (en) | Using a forward log storage and backward log storage to recover a storage to a forward or backward point-in-time | |
US11194667B2 (en) | Creating a restore copy from a copy of a full copy of source data in a repository that is at a different point-in-time than a restore point-in-time of a restore request | |
US11630839B2 (en) | Merging multiple point-in-time copies into a merged point-in-time copy | |
US11169958B2 (en) | Using a repository having a full copy of source data and point-in-time information from point-in-time copies of the source data to restore the source data at different points-in-time | |
US10698773B2 (en) | Replicating a source data set to a target data store | |
US10176048B2 (en) | Creating a restore copy from a copy of source data in a repository having source data at different point-in-times and reading data from the repository for the restore copy | |
US20150331756A1 (en) | Point-in-time snap copy management in a deduplication environment | |
US11175994B2 (en) | Copying data from multiple point-in-time copies to a log storage to use to roll-back a source storage | |
US11182373B2 (en) | Updating change information for current copy relationships when establishing a new copy relationship having overlapping data with the current copy relationships | |
US11188479B2 (en) | Determining space to release in a target volume to which tracks from a source volume are mirrored | |
US10776211B1 (en) | Methods, systems, and apparatuses to update point in time journal using map reduce to create a highly parallel update | |
US20200081792A1 (en) | Copying point-in-time data in a storage to a point-in-time copy data location in advance of destaging data to the storage | |
US10168925B2 (en) | Generating point-in-time copy commands for extents of data | |
US11256716B2 (en) | Verifying mirroring of source data units to target data units | |
US20190087095A1 (en) | Managing point-in-time copies for extents of data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |