IP Library Granted Patent US 11,816,001
Granted Patent B2
US 11,816,001 · App. 17/588,007 · Granted Nov 14, 2023

Managing structured data in a data storage system

Inventors: Manas Mutha (Tinton Falls, NJ); Pu Patrick Ou (Longwood, FL); Yan Liu (Marlboro, NJ); Priya Sundaresan (San Jose, CA)
Assignee: Commvault Systems, Inc.
G06F11/1451G06F2201/80G06F2201/82
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,816,001
App. No.
17/588,007
Granted
Nov 14, 2023
Kind
B2
Abstract

According to certain aspects, a secondary computing system can be configured to perform a full backup on database data, generate incremental backups comprising log files associated with modifications to the database data, and create a differential full backup copy of the database data using the full backup copy and changed blocks identified using the log files from the incremental backups.

Claims (32)

1. An apparatus comprising:

a computing system comprising one or more computing devices configured to copy data to one or more storage devices, the computing system configured to:

create a first copy of first data generated by an application, the first copy comprising a first set of data units and stored in the one or more storage devices;

create a plurality of entries in a transaction log file that correspond to modifications carried out on the first data by an application subsequent to creation of the first copy;

subsequent to creation of the plurality of entries in the transaction log file: replay the plurality of entries in the transaction log file onto the one or more storage devices to create a second set of data units in the one or more storage devices, and create a first differential copy comprising i) the second set of data units and ii) pointers to one or more data units from the first set of data units, wherein the first differential copy comprises changes made to the first data between creation of the first copy and creation of the first differential copy;

create a plurality of second entries in the transaction log file, where the plurality of second entries correspond to modifications carried out by the application on the first data subsequent to creation of the first differential copy; and

subsequent to creation of the plurality of second entries in the transaction log file: replay the plurality of second entries in the transaction log file onto the one or more storage devices to create a third set of data units in the one or more storage devices, and generate a second differential copy comprising i) the third set of data units generated during the replay of the plurality of second entries in the transaction log file and ii) pointers to one or more data units from the first set of data units and/or the second set of data units.

2. The apparatus of claim 1 , wherein at least a first data unit of the second set of data units is a modified version of a second data unit of the first set of data units.

3. The apparatus of claim 1 , wherein the computing system comprises a media agent operating at the direction of a storage manager installed on a separate computing system.

4. The apparatus of claim 1 , wherein the creation of the plurality of entries in the transaction log file corresponds to creation of one or more incremental backups of the first data.

5. The apparatus of claim 4 , wherein the creation of the plurality of entries in the transaction log file corresponds to creation of a plurality of incremental backups.

6. A method of managing an information management system, the method comprising:

with a computing system including computing hardware configured to copy database data to one or more storage devices in a storage subsystem:

creating a first copy of first data, the first copy comprising a first set of data units and stored in the one or more storage devices;

creating a plurality of entries in a transaction log file that correspond to modifications carried out on the first data by an application subsequent to creating the first copy;

subsequent to creating of the plurality of entries in the transaction log file: replaying the plurality of entries in the transaction log file onto the one or more storage devices to create a second set of data units in the one or more storage devices, and creating a first differential copy comprising i) the second set of data units and ii) pointers to one or more data units from the first set of data units, wherein the first differential copy comprises changes made to the first data between creating the first copy and creating the first differential copy;

creating a plurality of second entries in the transaction log file, the plurality of second entries corresponding to modifications carried out by the application on the first data subsequent to creating the first differential copy; and

subsequent to creating the plurality of second entries in the transaction log file: replaying the plurality of second entries in the transaction log file onto the one or more storage devices to create a third set of data units in the one or more storage devices, and generating a second differential copy comprising i) the third set of data units generated during the replay of the plurality of second entries in the transaction log file and ii) pointers to one or more data units from the first set of data units and/or the second set of data units.

7. The method of claim 6 , wherein at least a first data unit of the second set of data units is a modified version of a second data unit of the first set of data units.

8. The method of claim 6 , wherein the computing system comprises a media agent operating at the direction of a storage manager installed on a separate computing system.

9. The method of claim 6 wherein the creating of the plurality of entries in the transaction log file corresponds to creating one or more incremental backups of the first data.

10. The method of claim 9 wherein the creating of the plurality of entries in the transaction log file corresponds to creating a plurality of incremental backups.

11. A non-transitory computer-readable medium storing instructions, which when executed by a computing system, cause the computing system to perform a method comprising:

creating a first copy of first data, the first copy comprising a first set of data units and stored in one or more storage devices;

creating a plurality of entries in a transaction log file that correspond to modifications carried out on the first data by an application subsequent to creating the first copy;

subsequent to creating the plurality of entries in the transaction log file: replaying the plurality of entries in the transaction log file onto the one or more storage devices to create a second set of data units in the one or more storage devices, and creating a first differential copy comprising i) the second set of data units and ii) pointers to one or more data units from the first set of data units, wherein the first differential copy comprises changes made to the first data between the creating of the first copy and the creating of the first differential copy;

subsequent to the creating of the first differential copy, creating a plurality of second entries in the transaction log file, where each of the plurality of second entries corresponds to a modification carried out by the application on the first data subsequent to the creating of the first differential copy; and

subsequent to the creating of the plurality of second entries in the transaction log file: replaying the plurality of second entries in the transaction log file onto the one or more storage devices to create a third set of data units in the one or more storage devices, and generating a second differential copy comprising i) the third set of data units generated during the replay of the plurality of second entries in the transaction log file and ii) pointers to one or more data units from the first set of data units and/or the second set of data units.

12. The non-transitory computer-readable medium of claim 11 , wherein at least a first data unit of the second set of data units is a modified version of a second data unit of the first set of data units.

13. The non-transitory computer-readable medium of claim 11 , wherein the computing system comprises a media agent operating at the direction of a storage manager installed on a separate computing system.

14. The non-transitory computer-readable medium of claim 11 , wherein creating the plurality of entries in the transaction log file corresponds to creating an incremental backup of the first data.

15. The non-transitory computer-readable medium of claim 14 , wherein creating the plurality of entries in the transaction log file corresponds to creating a plurality of incremental backups.

Assignments (2)
SUPPLEMENTAL CONFIRMATORY GRANT OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Apr 16, 2025
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070864/0344 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2022
From: MUTHA, MANAS; OU, PU PATRICK; LIU, YAN; SUNDARESAN, PRIYA
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 058836/0749 →
Continuity (3)
Continuation 16365455 · Mar 26, 2019
Provisional Application 62817405 · Mar 12, 2019
Related Publication 20220253360A1 · Aug 11, 2022