US11036594B1ActiveUtility

Disaster recovery systems and methods with low recovery point objectives

93
Assignee: JETSTREAM SOFTWARE INCPriority: Jul 25, 2019Filed: Dec 19, 2019Granted: Jun 15, 2021
Est. expiryJul 25, 2039(~13 yrs left)· nominal 20-yr term from priority
G06F 11/1435G06F 2009/45595G06F 11/2046G06F 2009/45591G06F 16/1873G06F 11/2023G06F 11/1466G06F 11/1456G06F 11/1461G06F 9/45558G06F 11/1451G06F 11/1464G06F 2201/84G06F 2201/835G06F 2009/45587G06F 11/1471G06F 11/1484G06F 12/0253G06F 11/1469
93
PatentIndex Score
31
Cited by
49
References
21
Claims

Abstract

Data recovery systems and methods utilize object-based storage for providing a data protection and recovery methodology with low recovery point objectives, and for enabling both full recovery and point-in-time based recovery. Data generated at a protected site (e.g., via one or more virtual machines) is intercepted during write procedures to primary storage. The intercepted data is replicated via a replication log, provided as data objects, and transmitted to an object based storage system. During recovery, data objects may be retrieved through point-in-time based recovery directly by the systems of the protected site, and/or data objects may be provided via full recovery, for example, within a runtime environment of a recovery site, with minimal data loss and operation interruption by rehydrating data objects within the runtime environment via low-latency data transfer and rehydration systems.

Claims

exact text as granted — not AI-modified
That which is claimed: 
     
       1. A data recovery system for protecting data generated and stored in primary storage at a protected site, the data recovery system comprising:
 an object-based data store for storing data of one or more protected sites for recovery, wherein the object-based data store comprises one or more non-transitory memory storage areas and one or more processors and wherein the object-based data store is configured to: 
 receive data replicated from the one or more protected sites while the data is written to primary storage of the one or more protected sites in real time; 
 store the data received from the one or more protected sites in object-based storage within the one or more non-transitory memory storage areas together with corresponding metadata uniquely identifying each data object to enable point-in-time recovery; 
 store base data objects corresponding to at least one of the one or more protected sites in the object-based storage within the one or more non-transitory memory storage areas to enable full recovery of systems associated with the at least one of the one or more protected sites; 
 execute garbage collection to re-write valid data identified with in one or more base data objects subject to deletion during garbage collection at least in part by receiving the valid data from primary storage of the one or more protected sites and re-writing the valid data received from primary storage of the one or more protected sites as one or more new data objects stored together with the base data objects at the one or more non-transitory memory storage areas; and 
 provide one or more data objects to a recovery site or one of the one or more protected sites to enable recovery of data associated with a protected site of the one or more protected sites. 
 
     
     
       2. The data recovery system of  claim 1 , wherein receiving data replicated from the one or more protected sites comprises receiving data from a replication log executing via a processing system of a protected site of the one or more protected sites. 
     
     
       3. The data recovery system of  claim 2 , wherein the replication log corresponds to a recovery group associated with a plurality of virtual machines executing at the protected site. 
     
     
       4. The data recovery system of  claim 3 , wherein receiving data replicated from a replication log comprises receiving data from the replication log via a protection domain corresponding with the replication log. 
     
     
       5. The data recovery system of  claim 1 , wherein the corresponding metadata uniquely identifying each data object to enable point-in-time recovery comprises metadata identifying a timestamp associated with each data object. 
     
     
       6. The data recovery system of  claim 1 , wherein providing one or more data objects to a recovery site or one or more of the one or more protected sites comprises:
 rehydrating one or more data objects within an operating environment of a recovery site. 
 
     
     
       7. The data recovery system of  claim 1 , wherein the object-based data store is configured to store version base data objects corresponding to at least one of the one or more protected sites in the object-based storage within the one or more non-transitory memory storage areas to enable version-based recovery of systems associated with the at least one of the one or more protected sites. 
     
     
       8. A method for protecting data generated and stored in primary storage at a protected site and enabling data recovery, the method comprising:
 receiving data replicated from the one or more protected sites while the data is written to primary storage of one or more protected sites in real time; 
 storing the data received from the one or more protected sites in object-based storage within one or more non-transitory memory storage areas together with corresponding metadata uniquely identifying each data object to enable point-in-time recovery; 
 storing base data objects corresponding to at least one of the one or more protected sites in the object-based storage within the one or more non-transitory memory storage areas to enable full recovery of systems associated with the at least one of the one or more protected sites; 
 executing garbage collection to re-write valid data identified within one or more base data objects subject to deletion during garbage collection at least in part by receiving the valid data from primary storage of the one or more protected sites and re-writing the valid data received from primary storage of the one or more protected sites as one or more new data objects stored together with the base data objects at the one or more non-transitory memory storage areas; and 
 providing one or more data objects to a recovery site or one of the one or more protected sites to enable recovery of data associated with a protected site of the one or more protected sites. 
 
     
     
       9. The method for protecting data of  claim 8 , wherein receiving data replicated from the one or more protected sites comprises receiving data from a replication log executing via a processing system of a protected site of the one or more protected sites. 
     
     
       10. The method for protecting data of  claim 9 , wherein the replication log corresponds to a recovery group associated with a plurality of virtual machines executing at the protected site. 
     
     
       11. The method for protecting data of  claim 10 , wherein receiving data replicated from a replication log comprises receiving data from the replication log via a protection domain corresponding with the replication log. 
     
     
       12. The method for protecting data of  claim 8 , wherein the corresponding metadata uniquely identifying each data object to enable point-in-time recovery comprises metadata identifying a timestamp associated with each data object. 
     
     
       13. The method for protecting data of  claim 8 , wherein providing one or more data objects to a recovery site or one or more of the one or more protected sites comprises:
 rehydrating one or more data objects within an operating environment of a recovery site. 
 
     
     
       14. The method for protecting data of  claim 8 , further comprising storing version base data objects corresponding to at least one of the one or more protected sites in the object-based storage within the one or more non-transitory memory storage areas to enable version-based recovery of systems associated with the at least one of the one or more protected sites. 
     
     
       15. A computer-program product for protecting data generated and stored in primary storage at a protected site and enabling data recovery, the computer-program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising an executable portion configured to:
 receive data replicated from the one or more protected sites while the data is written to primary storage of the one or more protected sites in real time; 
 store the data received from the one or more protected sites in object-based storage within one or more non-transitory memory storage areas together with corresponding metadata uniquely identifying each data object to enable point-in-time recovery; 
 store base data objects corresponding to at least one of the one or more protected sites in the object-based storage within the one or more non-transitory memory storage areas to enable full recovery of systems associated with the at least one of the one or more protected sites; 
 execute garbage collection to re-write valid data identified within one or more base data objects subject to deletion during garbage collection at least in part by receiving the valid data from primary storage of the one or more protected sites and re-writing the valid data received from primary storage of the one or more protected sites as one or more new data objects stored together with the base data objects at the one or more non-transitory memory storage areas; and 
 provide one or more data objects to a recovery site or one of the one or more protected sites to enable recovery of data associated with a protected site of the one or more protected sites. 
 
     
     
       16. The computer program product of  claim 15 , wherein receiving data replicated from the one or more protected sites comprises receiving data from a replication log executing via a processing system of a protected site of the one or more protected sites. 
     
     
       17. The computer program product of  claim 16 , wherein the replication log corresponds to a recovery group associated with a plurality of virtual machines executing at the protected site. 
     
     
       18. The computer program product of  claim 17 , wherein receiving data replicated from a replication log comprises receiving data from the replication log via a protection domain corresponding with the replication log. 
     
     
       19. The computer program product of  claim 15 , wherein the corresponding metadata uniquely identifying each data object to enable point-in-time recovery comprises metadata identifying a timestamp associated with each data object. 
     
     
       20. The computer program product of  claim 15 , wherein providing one or more data objects to a recovery site or one or more of the one or more protected sites comprises: rehydrating one or more data objects within an operating environment of a recovery site. 
     
     
       21. The computer program product of  claim 15 , wherein the object-based data store is configured to store version base data objects corresponding to at least one of the one or more protected sites in the object-based storage within the one or more non-transitory memory storage areas to enable version-based recovery of systems associated with the at least one of the one or more protected sites.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.