IP Library Granted Patent US 11,100,043
Granted Patent B2
US 11,100,043 · App. 16/009,918 · Granted Aug 24, 2021

Volume-level replication of data via snapshots and using a volume-replicating server in an information management system

Inventors: Paramasivam Kumarasamy (Morganville, NJ); Durga Prasad Chedalavada (Dummugudem Mandal, IN)
Assignee: Commvault Systems, Inc.
G06F16/128G06F11/16
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,100,043
App. No.
16/009,918
Granted
Aug 24, 2021
Kind
B2
Abstract

The illustrative systems and methods use a special-purpose volume-replicating server(s) to offload client computing devices operating in a production environment. The production environment may remain relatively undisturbed while production data is replicated to a geographically distinct destination. Replication is based in part on hardware-based snapshots generated by a storage array that houses production data. The illustrative volume-replicating server efficiently moves data from snapshots on a source storage array to a destination storage array by transferring only changed blocks for each successive snapshot, i.e., transferring incremental block-level changes. Periodic restore jobs may be executed by destination clients to keep current with their corresponding source production clients. Accordingly, after the source data center goes offline, production data may be speedily restored at the destination data center after experiencing only minimal downtime of production resources. By employing block-level techniques, the disclosed solutions avoid the file-based data management approaches of the prior art, which tend to be too time-consuming and resource-intensive for the present scenario.

Claims (32)

1. A method for replication of a data volume using block substitution and a volume-replicating server, the method comprising:

initiating a volume-replication job to replicate replicating a source volume in a first block storage array to a destination volume in a second block storage array by way of a volume-replicating server interposed between and in communication with the first block storage array and the second block storage array,

wherein the source volume comprises data generated by a first client computing device in communication with the first block storage array, and

wherein the first client computing device executes a first data agent that is configured to monitor write operations to the source volume;

wherein the volume-replication job is initiated by a storage manager that is distinct from the volume-replicating server,

wherein metadata, which is stored in a management database associated with the storage manager, pairs the first client computing device and a second client computing device as being operationally correspondent with each other, and

wherein the volume-replication job comprises:

generating and storing a first snapshot of all of the source volume by the first block storage array,

after the first snapshot, generating and storing a second snapshot of the all of the source volume by the first block storage array,

after the second snapshot, generating and transmitting by the first data agent, to the volume-replicating server, a mapping of blocks that changed between the first snapshot and the second snapshot,

extracting, by the volume-replicating server from the second snapshot at the first block storage array, only the blocks that changed according to the mapping received from the first data agent, and

by the volume-replicating server, replicating the second snapshot at the second block storage array by substituting the extracted blocks that changed into the destination volume at the second block storage array; and

by the storage manager, initiating a block-level restore job of the second snapshot to all the second client computing device, which is in communication with the destination volume at the second block storage array,

wherein the block-level restore job enables a second application that executes on the second client computing device, to access the destination volume at the second block storage array as primary data for the second application.

2. The method of claim 1 , wherein

being operationally correspondent with each other includes being configured with matching operating systems.

3. The method of claim 1 , wherein the block-level restore job is initiated when the destination volume is first mounted on the second client computing device as a logical unit number (LUN).

4. The method of claim 1 , wherein the volume-replicating server executes a media agent that interoperates with a second data agent to perform the block-level restore job.

5. The method of claim 1 , wherein the generating and storing of the snapshots by the first block storage array is performed in response to instructions received from the first data agent.

6. The method of claim 1 , wherein the generating and storing of the snapshots by the first block storage array is performed in response to instructions received from the volume-replicating server.

7. The method of claim 1 , wherein the generating and storing of the snapshots by the first block storage array is performed in response to instructions received from all the storage manager which manages storage operations in an information management system comprising the first data agent and a second data agent, which executes on the second client computing device.

8. The method of claim 1 , wherein the storage manager coordinates timing of the generating of the snapshots by the first block storage array with the mapping of the blocks that changed, wherein the mapping is performed by the first data agent.

9. The method of claim 1 , wherein the data generated by the first client computing device is generated by a first application that executes on the first client computing device and uses the source volume as primary data.

10. The method of claim 1 , wherein the source volume is mounted on the first client computing device as a logical unit number (LUN); and

wherein the destination volume is mounted on the second client computing device as a logical unit number (LUN).

11. The method of claim 1 , wherein mounting the destination volume on the second client computing device as a logical unit number (LUN) triggers the block-level restore job.

12. The method of claim 1 , wherein the volume-replicating server is configured to:

instruct the first data agent on the first client computing device to generate the mapping of the blocks that changed between the first snapshot and the second snapshot, and

instruct the first data agent on the first client computing device to transmit the mapping to the volume-replicating server.

13. The method of claim 1 , wherein the storage manager is configured to:

instruct the first data agent on the first client computing device to generate the mapping of the blocks that changed between the first snapshot and the second snapshot, and

instruct the first data agent on the first client computing device to transmit the mapping to the volume-replicating server.

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 Jun 18, 2018
From: KUMARASAMY, PARAMASIVAM; CHEDALAVADA, DURGA PRASAD
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 046121/0708 →
Cited By (1)
US 12,650,780