IP Library Granted Patent US 11,500,664
Granted Patent B2
US 11,500,664 · App. 16/398,614 · Granted Nov 15, 2022

Systems and method for continuous data protection and recovery by implementing a set of algorithms based on the length of I/O data streams

Inventors: Benjamin Travis Meadowcroft (San Jose, CA); Li Ding (Cupertino, CA); Shaomin Chen (San Jose, CA); Hardik Vohra (Sunnyvale, CA); Arijit Banerjee (Palo Alto, CA); Abhay Mitra (Santa Clara, CA); Kushaagra Goyal (Mountain View, CA); Arnav Gautum Mishra (San Jose, CA); Samir Rishi Chaudhry (Saratoga, CA); Suman Swaroop (Palo Alto, CA); Kunal Sean Munshani (Fremont, CA); Mudit Malpani (Mountain View, CA)
Assignee: Rubrik, Inc.
G06F9/45558G06F11/0712G06F11/1464G06F2009/45579G06F2009/45587G06F2009/45595
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,500,664
App. No.
16/398,614
Granted
Nov 15, 2022
Kind
B2
Abstract

Example embodiments relate generally to systems and methods for continuous data protection (CDP) and more specifically to an input and output (I/O) filtering framework and log management system to seek a near-zero recovery point objective (RPO).

Claims (26)

1. A method for data protection for a virtual machine (VM) having a virtual disk, the method comprising at least the following operations:

obtaining or identifying recoverable ranges of the VM; and

recovering the VM from a point-in-time version of the virtual disk by implementing a set of algorithms, the set of algorithms to determine if a log chain in a series of log chains stored at a recovery site is valid for recovery of the VM, wherein the log chains of the series of log chains comprise respective streams of input/output data for the VM since a respective base snapshot for the log chain was obtained, and wherein a first algorithm of the set of algorithms includes determining a shortest log chain having a first valid base snapshot and comprising a shortest stream of input/output data for the VM since a first time at which the first valid base snapshot was obtained, a second algorithm in the set of algorithms includes determining a longest log chain having a second valid base snapshot and comprising a longest stream of input/output data for the VM since a second time at which the second valid base snapshot was obtained, and each valid base snapshot is a non-incremental snapshot.

2. The method of claim 1 , wherein the operations further comprise using the set of algorithms to calculate the recoverable ranges of the VM.

3. The method of claim 2 , wherein the operations further comprise pinning the log chain to calculate the recoverable ranges of the VM.

4. The method of claim 3 , wherein the operations further comprise pinning the log chain using references.

5. The method of claim 4 , wherein the references include one or more of a first reference indicating the log chain is alive and not expired, a second reference indicating the log chain is a base of other chain logs, and a third reference indicating the log chain is in use for a recovery.

6. The method of claim 1 , wherein recovering the VM from the point-in-time version of the virtual disk is a partial flow in a replication operation.

7. A system for data protection, the system comprising:

at least one processor for executing machine-readable instructions; and

a memory storing instructions configured to cause the at least one processor to perform operations comprising, at least:

obtaining or identifying recoverable ranges of a virtual machine (VM) having a virtual disk; and

recovering the VM from a point-in-time version of the virtual disk by implementing a set of algorithms, the set of algorithms to determine if a log chain in a series of log chains stored at a recovery site is valid for recovery of the VM, wherein the log chains of the series of log chains comprise respective streams of input/output data for the VM since a respective base snapshot for the log chain was obtained, and wherein a first algorithm of the set of algorithms includes determining a shortest log chain having a first valid base snapshot and comprising a shortest stream of input/output data for the VM since a first time at which the first valid base snapshot was obtained, a second algorithm in the set of algorithms includes determining a longest log chain having a second valid base snapshot and comprising a longest stream of input/output data for the VM since a second time at which the second valid base snapshot was obtained, and each valid base snapshot is a non-incremental snapshot.

8. The system of claim 7 , wherein the operations further comprise using the set of algorithms to calculate the recoverable ranges of the VM.

9. The system of claim 8 , wherein the operations further comprise pinning the log chain to calculate the recoverable ranges of the VM.

10. The system of claim 9 , wherein the operations further comprise pinning the log chain using references.

11. The system of claim 10 , wherein the references include one or more of a first reference indicating the log chain is alive and not expired, a second reference indicating the log chain is a base of other log chains, and a third reference indicating the log chain is in use for a recovery.

12. The system of claim 7 , wherein recovering the VM from the point-in-time version of the virtual disk is a partial flow in a replication operation.

13. A non-transitory, machine-readable medium storing instructions which, when read by a machine, cause the machine to perform operations in a method for data protection for a virtual machine (VM) having a virtual disk, the operations comprising, at least:

obtaining or identifying recoverable ranges of the VM; and

recovering the VM from a point-in-time version of the virtual disk by implementing a set of algorithms, the set of algorithms to determine if a log chain in a series of log chains stored at a recovery site is valid for recovery of the VM, wherein the log chains of the series of log chains comprise respective streams of input/output data for the VM since a respective base snapshot for the log chain was obtained, and wherein a first algorithm of the set of algorithms includes determining a shortest log chain having a first valid base snapshot and comprising a shortest stream of input/output data for the VM since a first time at which the first valid base snapshot was obtained, a second algorithm in the set of algorithms includes determining a longest log chain having a second valid base snapshot and comprising a longest stream of input/output data for the VM since a second time at which the second valid base snapshot was obtained, and each valid base snapshot is a non-incremental snapshot.

14. The non-transitory, machine-readable medium of claim 13 , wherein the operations further comprise using the set of algorithms to calculate the recoverable ranges of the VM.

15. The non-transitory, machine-readable medium of claim 14 , wherein the operations further comprise pinning the log chain to calculate the recoverable ranges of the VM.

16. The non-transitory, machine-readable medium of claim 15 , wherein the operations further comprise pinning the log chain using references.

17. The non-transitory, machine-readable medium of claim 16 , wherein the references include one or more of a first reference indicating the log chain is alive and not expired, a second reference indicating the log chain is a base of other log chains, and a third reference indicating the log chain is in use for a recovery.

18. The non-transitory, machine-readable medium of claim 13 , wherein recovering the VM from the point-in-time version of the virtual disk is a partial flow in a replication operation.

Assignments (4)
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 May 15, 2020
From: MUNSHANI, KUNAL SEAN; MALPANI, MUDIT
To: RUBRIK, INC.
Reel/Frame 052675/0263 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2020
From: MEADOWCROFT, BENJAMIN TRAVIS; DING, LI; CHEN, SHAOMIN; VOHRA, HARDIK; BANERJEE, ARIJIT; MITRA, ABHAY; GOYAL, KUSHAAGRA; MISHRA, ARNAV GAUTUM; CHAUDHRY, SAMIR RISHI; SWAROOP, SUMAN
To: RUBRIK, INC.
Reel/Frame 052037/0696 →
Continuity (1)
Related Publication 20200348955A1 · Nov 5, 2020
Cited By (3)
US 12,379,953 US 12,657,090 US 12,699,681