Data replica control
First Claim
Patent Images
1. One or more non-transitory computer-readable media having program instructions stored thereon that, when executed by a replica control system, direct the replica control system to:
- in response to a request to update a replica of a target storage volume comprising a virtual drive, identify a plurality of data blocks within an underlying storage volume comprising the virtual drive;
identify changed data blocks of the plurality of data blocks within the underlying storage volume; and
identify a subset of the changed data blocks with which to update the replica of the target storage volume based on an allocation status of each of a plurality of data items within the virtual drive that correspond to the changed data blocks within the underlying storage volume and based on a similarity of each of the changed data blocks relative to other changed data blocks associated with another plurality of data blocks within another underlying storage volume.
10 Assignments
0 Petitions
Accused Products
Abstract
A replica control system includes software to control replication in virtual environments. The replica control system identifies a plurality of data blocks within an underlying storage volume in response to a request to update a replica of a target storage volume, identifies changed data blocks of the plurality of data blocks within the underlying storage volume, and identifies a subset of the changed data blocks with which to update the replica of the target storage volume based on a characteristic of the changed data blocks.
-
Citations
19 Claims
-
1. One or more non-transitory computer-readable media having program instructions stored thereon that, when executed by a replica control system, direct the replica control system to:
-
in response to a request to update a replica of a target storage volume comprising a virtual drive, identify a plurality of data blocks within an underlying storage volume comprising the virtual drive; identify changed data blocks of the plurality of data blocks within the underlying storage volume; and identify a subset of the changed data blocks with which to update the replica of the target storage volume based on an allocation status of each of a plurality of data items within the virtual drive that correspond to the changed data blocks within the underlying storage volume and based on a similarity of each of the changed data blocks relative to other changed data blocks associated with another plurality of data blocks within another underlying storage volume. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A replica control system comprising:
-
a communication interface configured to receive a request to update a replica of a target storage volume, and transfer an identified subset of changed data blocks of a plurality of data blocks within an underlying storage volume; and a processing system configured to identify the plurality of data blocks within the underlying storage volume in response to receiving the request to update the replica of the target storage volume, identify the changed data blocks of the plurality of data blocks within the underlying storage volume, and identify the subset of the changed data blocks with which to update the replica of the target storage volume based on an allocation status of each of a plurality of data items within the target storage volume that correspond to the changed data blocks within the underlying storage volume and based on a similarity of each of the changed data blocks relative to other changed data blocks associated with another plurality of data blocks within another underlying storage volume. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A method comprising:
-
identifying a plurality of data blocks within an underlying storage volume comprising a virtual drive in response to a request to update a replica of a target storage volume comprising another virtual drive; identifying changed data blocks of the plurality of data blocks within the underlying storage volume; and identifying a subset of the changed data blocks with which to update the replica of the target storage volume based on an allocation status of each of a plurality of data items within the virtual drive that correspond to the changed data blocks within the underlying storage volume and based on a similarity of each of the changed data blocks relative to other changed data blocks associated with another plurality of data blocks within another underlying storage volume, wherein the allocation status is obtained by reading file system metadata from a guest operating system on a virtual machine.
-
-
18. One or more non-transitory computer-readable media having programming instructions stored thereon that, when executed by a replication system, direct the replication system to:
-
in response to a request to update a replica of a target storage volume comprising an enumeration of a virtual machine environment, identify a plurality of data blocks within an underlying storage volume, wherein the underlying storage volume comprises a virtual drive contained within the virtual machine environment; identify changed data blocks of the plurality of data blocks within the underlying storage volume; identify an allocated subset of the changed data blocks based on an allocation status of each of a plurality of data items within the virtual machine environment that correspond to the changed data blocks within the virtual drive, wherein the allocation status is obtained by reading file system metadata from a guest operating system on a virtual machine; identify a non-transient subset of the allocated subset of the changed data blocks based on a transient status of each of the plurality of data items within the virtual machine environment that correspond to the changed data blocks within the virtual drive; and identify a similarity subset of the transient subset of the changed data blocks with which to update the replica of the target storage volume based on a similarity of each of the changed data blocks in the non-transient subset relative to other changed data blocks, wherein the other changed data blocks are associated with another plurality of data blocks within another underlying storage volume. - View Dependent Claims (19)
-
Specification