IP Library Granted Patent US 11,308,034
Granted Patent B2
US 11,308,034 · App. 16/455,509 · Granted Apr 19, 2022

Continuously run log backup with minimal configuration and resource usage from the source machine

Inventors: Jun H. Ahn (Manalapan, NJ); Prasad Nara (Eatontown, NJ); Sri Karthik Bhagi (Morganville, NJ)
Assignee: Commvault Systems, Inc.
G06F16/1734G06F3/065G06F3/0607G06F3/0638G06F3/0649G06F3/0683G06F16/172G06F16/1752
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,308,034
App. No.
16/455,509
Granted
Apr 19, 2022
Kind
B2
Abstract

A system for performing continuous transaction log backups with minimal resource usage of the client computing devices that are processing the transactions is disclosed. The system detects at least one input/output (I/O) activity at a client computing device. The I/O activity can be associated with at least one database operation performed via the client computing device. The system then executes one or more native commands to backup transactions log data associated with the detected I/O activity to a virtualized location. Backing-up the transactions log data comprises dynamically identifying a mount path location corresponding to the virtualized location, and transferring the transactions log data to the dynamically identified mount path using the one or more native commands. The system can then perform data processing operations (for example, data chunking and deduplicating) on the transactions log data after it is received at the dynamically identified mount path location.

Claims (48)

1. A computer-implemented method for performing continuous log backups, the method comprising:

detecting at least one input/output (I/O) activity at a client computing device,

wherein the at least one I/O activity is associated with at least one database operation performed via the client computing device;

backing-up transactions log data associated with the at least one detected I/O activity using one or more commands native to a virtualized location, wherein the backing-up comprises:

with a log backup agent executing on the client computing device, dynamically identifying a mount path location corresponding to the virtualized location, wherein the virtualized location appears to the client computing device as a physical storage location for storage of the transactions log data; and

transferring the transactions log data to the dynamically identified mount path using the one or more native commands,

wherein the mount path is selected among multiple mount paths based on:

availability of the mount paths,

network bandwidth available in communication link to the mount paths,

storage capacity of the mount paths,

last mount path selected to backup log data, or any combination thereof; and

with a secondary storage computing device associated with the mount path and separate from the client computing device, receiving the transactions log data, and performing data chunking and deduplication of the transactions log data after the transactions log data is received at the dynamically identified mount path location, such that the data chunking and deduplication are performed by the secondary storage computing device and not the client computing device.

2. The method of claim 1 , wherein the mount path location is associated with a media agent.

3. The method of claim 1 , wherein the mount path is selected among multiple paths in a round-robin manner.

4. The method of claim 1 , wherein the I/O activity is detected when a database command is invoked at the client computing device.

5. The method of claim 1 , wherein the I/O activity is detected at predetermined time intervals.

6. The method of claim 1 , wherein the I/O activity is detected when a log file storage value of a disk communicatively coupled to the client computing device exceeds a predetermined size threshold value.

7. The method of claim 1 , wherein the I/O activity is detected when the transactions log data on a disk communicatively coupled to the client computing device reaches a specified percentage of the disk.

8. The method of claim 1 , wherein the transactions log data comprises committed transactions, uncommitted transactions, or any combination thereof.

9. A computer program product for performing continuous log backups, the computer program product being embodied in a non-transitory computer readable medium and comprising computer instructions for:

detecting at least one input/output (I/O) activity at a client computing device,

wherein the at least one I/O activity is associated with at least one database operation performed via the client computing device;

backing-up transactions log data associated with the at least one detected I/O activity using one or more native commands to a virtualized location, wherein the backing-up comprises:

with a log backup agent executing on the client computing device, dynamically identifying a mount path location corresponding to the virtualized location, wherein the virtualized location appears to the client computing device as a physical storage location for storage of the transactions log data; and

transferring the transactions log data to the dynamically identified mount path using the one or more native commands; and

with a secondary storage computing device associated with the mount path and separate from the client computing device, receiving the transactions log data, and performing data chunking or deduping of the transactions log data after the transactions log data is received at the dynamically identified mount path location, such that the data chunking and deduplication are performed by the secondary storage computing device and not the client computing device.

10. The computer program product of claim 9 , wherein the mount path location is associated with a media agent.

11. The computer program product of claim 9 , wherein the mount path is selected among multiple mount paths based on:

availability of the mount paths,

network bandwidth available in communication link to the mount paths,

storage capacity of the mount paths,

last mount path selected to backup log data,

or any combination thereof.

12. The computer program product of claim 9 , wherein the mount path is selected among multiple mount paths in a round-robin manner.

13. The computer program product of claim 9 , wherein the I/O activity is detected when a database command is invoked at the client computing device.

14. The computer program product of claim 9 , wherein the I/O activity is detected at predetermined time intervals.

15. The computer program product of claim 9 , wherein the I/O activity is detected when a log file storage value of a disk communicatively coupled to the client computing device exceeds a predetermined size threshold value.

16. The computer program product of claim 9 , wherein the I/O activity is detected when the transactions log data on a disk communicatively coupled to the client computing device reaches a specified percentage of the disk.

17. The computer program product of claim 9 , wherein the transactions log data comprises committed transactions, uncommitted transactions, or any combination thereof.

18. A continuous transactions log backup system for performing continuous log backups usage comprising a non-transitory computer-readable medium having instructions stored thereon, which when executed by one or more processors of the continuous transactions log backup system cause the system to:

detect at least one input/output (I/O) activity at a client computing device,

wherein the at least one I/O activity is associated with at least one database operation performed via the client computing device;

backup transactions log data associated with the at least one detected I/O activity using one or more native commands to a virtualized location, wherein backing-up the transactions log data comprises:

with a log backup agent executing on the client computing device, dynamically identifying a mount path location corresponding to the virtualized location, wherein the virtualized location appears to the client computing device as a physical storage location for storage of the transactions log data; and

transferring the transactions log data to the dynamically identified mount path using the one or more native commands; and

with a secondary storage computing device associated with the mount path and separate from the client computing device, receive the transactions log data, and perform chunking and deduping of the transactions log data after the transactions log data is received at the dynamically identified mount path location.

19. The system of claim 18 , wherein the I/O activity is detected when: a database command is invoked at the client computing device, a log file storage value of a disk communicatively coupled to the client computing device exceeds a predetermined size threshold value, the transactions log data on the disk communicatively coupled to the client computing device reaches a specified percentage of the disk, or at predetermined time intervals.

20. The system of claim 18 , wherein the transactions log data comprises committed transactions, uncommitted transactions, or any combination thereof.

Assignments (3)
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 →
SECURITY INTEREST Recorded Dec 13, 2021
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 058496/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2020
From: AHN, JUN H.; NARA, PRASAD; BHAGI, SRI KARTHIK
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 054148/0052 →
Continuity (1)
Related Publication 20200409908A1 · Dec 31, 2020
Cited By (3)
US 12,248,375 US 12,474,948 US 12,541,439