IP Library Granted Patent US 11,068,356
Granted Patent B2
US 11,068,356 · App. 16/397,294 · Granted Jul 20, 2021

Incremental export and conversion of virtual machine snapshots

Inventors: Rohit Agrawal (Mountain View, CA); Shaswat Chaubey (Bengaluru, IN); Disheng Su (Palo Alto, CA); Koki Yoshida (Palo Alto, CA); Mudit Malpani (Mountain View, CA)
Assignee: RUBRIK, INC.
G06F11/1469G06F9/45558G06F11/1451G06F2009/45562G06F2009/45575G06F2201/815G06F2201/84
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,068,356
App. No.
16/397,294
Granted
Jul 20, 2021
Kind
B2
Abstract

Methods and systems for reducing the data recovery time when failing back to a primary system from a secondary data backup system using virtual machine conversions and incremental exportation for backed-up virtual machine snapshots are described. Upon detection that the primary system is available to receive replicated snapshots for a virtual machine, the secondary data backup system may identify a first virtual machine snapshot out of a chain of snapshots for the virtual machine (e.g., the earliest in time snapshot within the chain or a middle snapshot in the middle of the chain) and transfer a full image snapshot for the first virtual machine snapshot to the primary system. Thereafter, data changes between the next virtual machine snapshot to be transferred to the primary system and the most-recently hydrated virtual machine on the primary system may be identified and then transferred to the primary system.

Claims (67)

1. A method for operating a data management system, comprising:

detecting that a failback operation should be performed;

identifying a first virtual machine snapshot out of a chain of snapshots for a virtual machine in response to detecting that the failback operation should be performed, the virtual machine has an operating system disk associated with a first operating system;

converting the first virtual machine snapshot such that the operating system disk is associated with a second operating system different from the first operating system;

acquiring a full image snapshot of the converted first virtual machine snapshot;

instantiating a temporary virtual machine using the full image snapshot of the converted first virtual machine snapshot;

creating a linked clone to the temporary virtual machine;

acquiring a second incremental snapshot for a second virtual machine snapshot out of the chain of snapshots for the virtual machine;

applying a second set of data changes from the second incremental snapshot to the temporary virtual machine;

acquiring a third incremental snapshot for a third virtual machine snapshot out of the chain of snapshots for the virtual machine;

applying a third set of data changes from the third incremental snapshot to the linked clone;

capturing and storing a snapshot of the temporary virtual machine subsequent to applying the second set of data changes from the second incremental snapshot to the temporary virtual machine; and

capturing and storing a snapshot of the linked clone subsequent to applying the third set of data changes from the third incremental snapshot to the linked clone.

2. The method of claim 1 , wherein:

the first virtual machine snapshot comprises the earliest point in time snapshot for the virtual machine out of the chain of snapshots.

3. The method of claim 1 , wherein:

the first virtual machine snapshot comprises a middle snapshot for the virtual machine out of the chain of snapshots.

4. The method of claim 1 , wherein:

the second incremental snapshot corresponds with a forward incremental.

5. The method of claim 4 , wherein:

the third incremental snapshot corresponds with a reverse incremental.

6. The method of claim 1 , wherein:

the converting the first virtual machine snapshot includes modifying the operating system disk to install one or more drivers for the second operating system.

7. The method of claim 1 , wherein:

the detecting that the failback operation should be performed includes detecting that a primary system is available to receive the converted first virtual machine snapshot from a secondary data backup system.

8. The method of claim 7 , wherein:

the primary system is associated with a first virtualized environment; and

the secondary data backup system is associated with a second virtualized environment different from the first virtualized environment.

9. The method of claim 7 , wherein:

the primary system is associated with an on-premise virtualized environment; and

the secondary data backup system is associated with a cloud virtualized environment.

10. The method of claim 1 , further comprising:

concurrently capturing the snapshot of the temporary virtual machine and the snapshot of the linked clone and subsequently terminating the temporary virtual machine.

11. A data management system, comprising:

a memory; and

one or more processors in communication with the memory configured to detect that a failback operation should be performed and identify a first virtual machine snapshot out of a chain of snapshots for a virtual machine in response to detection that the failback operation should be performed, the virtual machine includes an operating system disk associated with a first operating system, the one or more processors configured to acquire a full image snapshot of the first virtual machine snapshot, the one or more processors configured to execute a temporary virtual machine using the full image snapshot of the first virtual machine snapshot and create a linked clone to the temporary virtual machine, the one or more processors configured to acquire a second incremental snapshot for a second virtual machine snapshot out of the chain of snapshots for the virtual machine and apply a second set of data changes from the second incremental snapshot to the temporary virtual machine, the one or more processors configured to acquire a third incremental snapshot for a third virtual machine snapshot out of the chain of snapshots for the virtual machine and apply a third set of data changes from the third incremental snapshot to the linked clone, the one or more processors configured to capture and store a snapshot of the temporary virtual machine in the memory subsequent to application of the second set of data changes from the second incremental snapshot to the temporary virtual machine, the one or more processors configured to capture and store a snapshot of the linked clone in the memory subsequent to applying the third set of data changes from the third incremental snapshot to the linked clone.

12. The data management system of claim 11 , wherein:

the first virtual machine snapshot comprises the earliest point in time snapshot for the virtual machine out of the chain of snapshots.

13. The data management system of claim 11 , wherein:

the first virtual machine snapshot comprises a middle snapshot for the virtual machine out of the chain of snapshots.

14. The data management system of claim 11 , wherein:

the second incremental snapshot corresponds with a forward incremental.

15. The data management system of claim 11 , wherein:

the third incremental snapshot corresponds with a reverse incremental.

16. The data management system of claim 11 , wherein:

the one or more processors configured to detect that a primary system is available to receive the first virtual machine snapshot from a secondary data backup system.

17. The data management system of claim 16 , wherein:

the primary system is associated with a first virtualized environment; and

the secondary data backup system is associated with a second virtualized environment different from the first virtualized environment.

18. The data management system of claim 16 , wherein:

the primary system is associated with an on-premise virtualized environment; and

the secondary data backup system is associated with a cloud virtualized environment.

19. The data management system of claim 11 , wherein:

the second incremental snapshot corresponds with a forward incremental; and

the third incremental snapshot corresponds with a forward incremental.

20. One or more storage devices containing processor readable code for programming one or more processors to perform a method for operating a data management system, the processor readable code comprising:

processor readable code configured to detect that a failback operation should be performed;

processor readable code configured to identify a first virtual machine snapshot out of a chain of snapshots for a virtual machine in response to detection that the failback operation should be performed, the virtual machine includes an operating system disk associated with a first operating system;

processor readable code configured to acquire a full image snapshot of the first virtual machine snapshot;

processor readable code configured to execute a temporary virtual machine using the full image snapshot of the first virtual machine snapshot;

processor readable code configured to create a linked clone to the temporary virtual machine;

processor readable code configured to acquire a second incremental snapshot for a second virtual machine snapshot out of the chain of snapshots for the virtual machine;

processor readable code configured to apply a second set of data changes from the second incremental snapshot to the temporary virtual machine;

processor readable code configured to acquire a third incremental snapshot for a third virtual machine snapshot out of the chain of snapshots for the virtual machine;

processor readable code configured to apply a third set of data changes from the third incremental snapshot to the linked clone;

processor readable code configured to capture and store a snapshot of the temporary virtual machine; and

processor readable code configured to capture and store a snapshot of the linked clone.

Assignments (3)
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 60333/0323 Recorded Jun 13, 2025
From: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
To: RUBRIK, INC.
Reel/Frame 071565/0602 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 10, 2022
From: RUBRIK, INC.
To: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
Reel/Frame 060333/0323 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2020
From: AGRAWAL, ROHIT; CHAUBEY, SHASWAT; SU, DISHENG; YOSHIDA, KOKI; MALPANI, MUDIT
To: RUBRIK, INC.
Reel/Frame 052135/0783 →
Cited By (1)
US 12,326,790