IP Library Granted Patent US 11,748,207
Granted Patent B2
US 11,748,207 · App. 17/486,256 · Granted Sep 5, 2023

Scalable group backup in relational databases

Inventor: Prasenjit Sarkar (Los Gatos, CA)
Assignee: Rubrik, Inc.
G06F11/1464G06F11/1451G06F11/1461G06F11/1469G06F2201/80G06F2201/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,748,207
App. No.
17/486,256
Granted
Sep 5, 2023
Kind
B2
Abstract

In some examples, a method of performing a backup of a group of relational databases comprises identifying the group of relational databases; identifying I/O traffic flowing into or out of the group of relational databases; temporarily freezing the I/O traffic flowing into or out of the group of relational databases; identifying a set of batch backup operations to be performed during the temporary I/O freeze; identifying relational dependencies between at least some databases in the group of relational databases; based on the identified relational dependencies, identifying, among the set of batch backup operations, a first sub-set of backup operations eligible to be performed in parallel, and a second sub-set of backup operations not eligible to be performed in parallel; conducting the backup, wherein conducting the backup comprises performing the identified first sub-set of backup operations in parallel and performing the identified second sub-set of backup operations sequentially; and unfreezing the I/O traffic.

Claims (45)

1. A method of performing a backup of a group of relational databases, the method comprising:

identifying the group of relational databases;

identifying input/output (I/O) traffic flowing into or out of the group of relational databases;

temporarily freezing the I/O traffic flowing into or out of the group of relational databases;

identifying a set of batch backup operations to be performed during the temporary I/O traffic freeze;

identifying relational dependencies between at least some databases in the group of relational databases;

based on the identified relational dependencies, identifying, among the set of batch backup operations, a first sub-set of backup operations eligible to be performed in parallel, and a second sub-set of backup operations not eligible to be performed in parallel;

conducting the backup, wherein conducting the backup comprises performing the identified first sub-set of backup operations in parallel and performing the identified second sub-set of backup operations sequentially; and

unfreezing the I/O traffic.

2. The method of claim 1 , wherein identifying the group of relational databases includes identifying a database backup set among the group of relational databases, wherein databases included in the identified database backup set only, are targeted for backup.

3. The method of claim 2 , further comprising, in a pre-snapshot phase, confining a gathering of metadata relating to the database backup set only, the metadata including the relational dependencies.

4. The method of claim 3 , wherein the set of batch backup operations include, in a snapshot phase, taking a snapshot of at least one volume in which the database backup set resides, and storing the snapshot as a volume shadow copy.

5. The method of claim 4 , wherein the set of batch backup operations include, in a post-snapshot phase, an accounting of the first sub-set of backup operations performed in parallel and the second sub-set of backup operations performed sequentially.

6. The method of claim 5 , further comprising instantiating an ephemeral snapshot writer to perform at least one batch backup operation of the set of batch backup operations, the ephemeral snapshot writer being destroyed when the at least one batch backup operation terminates.

7. The method of claim 6 , further comprising implementing a restore operation.

8. The method of claim 7 , wherein the restore operation is performed by the ephemeral snapshot writer.

9. A backup system comprising:

at least one processor, and a memory storing instructions which, when executed by the at least one processor, cause the backup system to perform tasks in a method of performing a backup of a group of relational databases, the tasks comprising, at least:

identifying the group of relational databases;

identifying input/output (I/O) traffic flowing into or out of the group of relational databases;

temporarily freezing the I/O traffic flowing into or out of the group of relational databases;

identifying a set of batch backup operations to be performed during the temporary I/O traffic freeze;

identifying relational dependencies between at least some databases in the group of relational databases;

based on the identified relational dependencies, identifying, among the set of batch backup operations, a first sub-set of backup operations eligible to be performed in parallel, and a second sub-set of backup operations not eligible to be performed in parallel;

conducting the backup, wherein conducting the backup comprises performing the identified first sub-set of backup operations in parallel and performing the identified second sub-set of backup operations sequentially; and

unfreezing the I/O traffic.

10. The backup system of claim 9 , wherein identifying the group of relational databases includes identifying a database backup set among the group of relational databases, wherein databases included in the identified database backup set only, are targeted for backup.

11. The backup system of claim 10 , wherein the tasks further comprise, in a pre-snapshot phase, confining a gathering of metadata relating to the database backup set only, the metadata including the relational dependencies.

12. The backup system of claim 11 , wherein the set of batch backup operations include, in a snapshot phase, taking a snapshot of at least one volume in which the database backup set resides, and storing the snapshot as a volume shadow copy.

13. The backup system of claim 12 , wherein the set of batch backup operations include, in a post-snapshot phase, an accounting of the first sub-set of backup operations performed in parallel and the second sub-set of backup operations performed sequentially.

14. The backup system of claim 13 , wherein the tasks further comprise instantiating an ephemeral snapshot writer to perform at least one batch backup operation of the set of batch backup operations, the ephemeral snapshot writer being destroyed when the at least one batch backup operation terminates.

15. The backup system of claim 14 , wherein the tasks further comprise implementing a restore operation.

16. The backup system of claim 15 , wherein the restore operation is performed by the ephemeral snapshot writer.

17. A non-transitory machine-readable medium including instructions which, when read by a machine, cause a machine to perform tasks in a method of performing a backup of a group of relational databases, the tasks comprising, at least:

identifying the group of relational databases;

identifying input/output (I/O) traffic flowing into or out of the group of relational databases;

temporarily freezing the I/O traffic flowing into or out of the group of relational databases;

identifying a set of batch backup operations to be performed during the temporary I/O traffic freeze;

identifying relational dependencies between at least some databases in the group of relational databases;

based on the identified relational dependencies, identifying, among the set of batch backup operations, a first sub-set of backup operations eligible to be performed in parallel, and a second sub-set of backup operations not eligible to be performed in parallel;

conducting the backup, wherein conducting the backup comprises performing the identified first sub-set of backup operations in parallel and performing the identified second sub-set of backup operations sequentially; and

unfreezing the I/O traffic.

18. The non-transitory machine-readable medium of claim 17 , wherein identifying the group of relational databases includes identifying a database backup set among the group of relational databases, wherein databases included in the identified database backup set only, are targeted for backup.

19. The non-transitory machine-readable medium of claim 18 , wherein the tasks further comprise, in a pre-snapshot phase, confining a gathering of metadata relating to the database backup set only, the metadata including the relational dependencies.

20. The non-transitory machine-readable medium of claim 19 , wherein the set of batch backup operations include, in a snapshot phase, taking a snapshot of at least one volume in which the database backup set resides, and storing the snapshot as a volume shadow copy.

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 Oct 1, 2021
From: SARKAR, PRASENJIT
To: RUBRIK, INC.
Reel/Frame 057666/0697 →
Cited By (1)
US 12,271,271