EFFICIENT VOLUME-LEVEL REPLICATION OF DATA VIA SNAPSHOTS IN AN INFORMATION MANAGEMENT SYSTEM
First Claim
1. A method comprising:
- in an information management system managed by a storage manager, replicating a source volume in a first storage array to a destination volume in a second storage array, wherein the source volume comprises data generated by a first client computing device in communication with a first logical unit number on the first storage array that comprises the source volume,wherein the replicating comprises;
generating and storing, by the first storage array, a first snapshot of the first logical unit number comprising the source volume,generating and storing, by the first storage array, after the first snapshot, a second snapshot of the first logical unit number comprising the source volume,transferring, by a volume-replicating server, to the destination volume in the second storage array, based on a mapping of changed blocks received by the volume-replicating server from the first client computing device, only the changed blocks of the second snapshot relative to the first snapshot, andsubstituting, by the volume-replicating server, the changed blocks in the destination volume for any corresponding pre-existing blocks therein, thereby replicating, at a block level, the second snapshot to the destination volume; and
restoring the second snapshot, at a block-level, from the destination volume to a second client computing device in communication with a second logical unit number on the second storage array, wherein the second logical unit number comprises the destination volume.
2 Assignments
0 Petitions
Accused Products
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.
-
Citations
19 Claims
-
1. A method comprising:
-
in an information management system managed by a storage manager, replicating a source volume in a first storage array to a destination volume in a second storage array, wherein the source volume comprises data generated by a first client computing device in communication with a first logical unit number on the first storage array that comprises the source volume, wherein the replicating comprises; generating and storing, by the first storage array, a first snapshot of the first logical unit number comprising the source volume, generating and storing, by the first storage array, after the first snapshot, a second snapshot of the first logical unit number comprising the source volume, transferring, by a volume-replicating server, to the destination volume in the second storage array, based on a mapping of changed blocks received by the volume-replicating server from the first client computing device, only the changed blocks of the second snapshot relative to the first snapshot, and substituting, by the volume-replicating server, the changed blocks in the destination volume for any corresponding pre-existing blocks therein, thereby replicating, at a block level, the second snapshot to the destination volume; and restoring the second snapshot, at a block-level, from the destination volume to a second client computing device in communication with a second logical unit number on the second storage array, wherein the second logical unit number comprises the destination volume. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. An information management system comprising:
-
a volume-replicating server in communication with a first storage array and a second storage array; a first client computing device in communication with the client-replicating server and with the first storage array; the first storage array, comprising a source volume comprising primary data generated by the first client computing device, wherein the source volume is configured as a first logical unit number mounted to the first client computing device; wherein the first storage array is configured to; generate and store a first snapshot of the first logical unit number comprising the source volume, and generate and store, after the first snapshot, a second snapshot of the first logical unit number comprising the source volume; wherein the volume-replicating server is configured to; extract one or more changed blocks from the second snapshot on the first storage array, based on a mapping, received from the first client computing device, of changed blocks relative to the first snapshot, transfer the extracted changed blocks to a destination volume in the second storage array, and substitute the changed blocks in the destination volume for any corresponding pre-existing blocks therein, wherein the destination volume in the second storage array is a volume-level replica of the second snapshot. - View Dependent Claims (13, 14, 15)
-
-
16. A method for volume-level replication of data generated in an information management system, the method comprising:
-
generating and storing, by a first storage array in the information management system, a first snapshot of a first logical unit number comprising a source volume on the first storage array, wherein the source volume comprises data generated by a first client computing device in the information management system; generating and storing, after the first snapshot, a second snapshot of the first logical unit number comprising the source volume; extracting, by a volume-replicating server in the information management system, one or more changed blocks from the second snapshot on the first storage array, based on a mapping of changed blocks relative to the first snapshot, wherein the mapping is received from the first client computing device; transferring, by the volume-replicating server, the extracted changed blocks to a destination volume in a second storage array; and substituting the changed blocks in the destination volume for any corresponding pre-existing blocks therein, wherein the destination volume in the second storage array is a volume-level replica of the second snapshot. - View Dependent Claims (17, 18, 19)
-
Specification