Replication of snapshots and clones
First Claim
1. A system to replicate snapshots between storage systems, comprising:
- a processor configured to;
receive a request to store at a destination system a snapshot data to represent at the destination system a state of a set of data associated with a virtual machine at a first point-in-time, wherein a first source system snapshot data that represents at a source system the state of the set of data at the first point-in-time depends on a second source system snapshot data that represents at the source system a state of the set of data at a second point-in-time and the snapshot indicates a physical storage location of the set of data;
use stored snapshot age identifying information to determine a set of delta data to be sent from the source system to the destination system including by selecting at least a younger snapshot based at least in part on an order among the first source system snapshot data, the second source system snapshot data, and a first destination system snapshot data that represents at the destination system a state of the set of data at a third point-in-time determined from the snapshot age identifying information, wherein selecting the younger snapshot forms a smaller delta compared with an older snapshot to consume less bandwidth when transmitting the set of delta data, wherein the snapshot age identifying information includes value data associated with a time of creation of the snapshot;
generate a new destination system snapshot data that represents at the destination system the state of the set of data at the first point-in-time to be inserted into a sequence of snapshot data stored at the destination system based at least in part on the set of delta data, including to;
determine a redundant metadata entry that is included in both the set of delta data and a second destination system snapshot data included in the sequence of snapshot data stored at the destination system; and
remove the redundant metadata entry from either the set of delta data or the second destination system snapshot data; and
transmit the generated new destination system snapshot data to the destination system; and
a memory coupled to the processor and configured to store the request.
6 Assignments
0 Petitions
Accused Products
Abstract
Performing replication of snapshots between storage systems is disclosed. A request to store at a destination system a snapshot data to represent at the destination system a state of a set of data at a first point-in-time is received. A first source system snapshot data that represents at a source system the state of the set of data at the first point-in-time depends on a second source system snapshot data that represents at the source system a state of the set of data at a second point-in-time. The snapshot data to represent at the destination system the state of the set of data at the first point-in-time is determined based on data comprising the first source system snapshot data and a destination system snapshot data that represents at the destination system a state of the set of data at a third point-in-time.
55 Citations
25 Claims
-
1. A system to replicate snapshots between storage systems, comprising:
-
a processor configured to; receive a request to store at a destination system a snapshot data to represent at the destination system a state of a set of data associated with a virtual machine at a first point-in-time, wherein a first source system snapshot data that represents at a source system the state of the set of data at the first point-in-time depends on a second source system snapshot data that represents at the source system a state of the set of data at a second point-in-time and the snapshot indicates a physical storage location of the set of data; use stored snapshot age identifying information to determine a set of delta data to be sent from the source system to the destination system including by selecting at least a younger snapshot based at least in part on an order among the first source system snapshot data, the second source system snapshot data, and a first destination system snapshot data that represents at the destination system a state of the set of data at a third point-in-time determined from the snapshot age identifying information, wherein selecting the younger snapshot forms a smaller delta compared with an older snapshot to consume less bandwidth when transmitting the set of delta data, wherein the snapshot age identifying information includes value data associated with a time of creation of the snapshot; generate a new destination system snapshot data that represents at the destination system the state of the set of data at the first point-in-time to be inserted into a sequence of snapshot data stored at the destination system based at least in part on the set of delta data, including to; determine a redundant metadata entry that is included in both the set of delta data and a second destination system snapshot data included in the sequence of snapshot data stored at the destination system; and remove the redundant metadata entry from either the set of delta data or the second destination system snapshot data; and transmit the generated new destination system snapshot data to the destination system; and a memory coupled to the processor and configured to store the request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method to replicate snapshots between storage systems, comprising:
-
receiving a request to store at a destination system a snapshot data to represent at the destination system a state of a set of data associated with a virtual machine at a first point-in-time, wherein a first source system snapshot data that represents at a source system the state of the set of data at the first point-in-time depends on a second source system snapshot data that represents at the source system a state of the set of data at a second point-in-time and the snapshot indicates a physical storage location of the set of data; using stored snapshot age identifying information to determine a set of delta data to be sent from the source system to the destination system including by selecting at least a younger snapshot based at least in part on an order among the first source system snapshot data, the second source system snapshot data, and a first destination system snapshot data that represents at the destination system a state of the set of data at a third point-in-time determined from the snapshot age identifying information, wherein selecting the younger snapshot forms a smaller delta compared with an older snapshot to consume less bandwidth when transmitting the set of delta data, wherein the snapshot age identifying information includes value data associated with a time of creation of the snapshot; generating a new destination system snapshot data that represents at the destination system the state of the set of data at the first point-in-time to be inserted into a sequence of snapshot data stored at the destination system based at least in part on the set of delta data, including by; determining a redundant metadata entry that is included in both the set of delta data and a second destination system snapshot data included in the sequence of snapshot data stored at the destination system; and removing the redundant metadata entry from either the set of delta data or the second destination system snapshot data; and transmitting the generated new destination system snapshot data to the destination system. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
-
25. A computer program product to replicate snapshots between storage systems, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:
-
receiving a request to store at a destination system a snapshot data to represent at the destination system a state of a set of data associated with a virtual machine at a first point-in-time, wherein a first source system snapshot data that represents at a source system the state of the set of data at the first point-in-time depends on a second source system snapshot data that represents at the source system a state of the set of data at a second point-in-time and the snapshot indicates a physical storage location of the set of data; using stored snapshot age identifying information to determine a set of delta data to be sent from the source system to the destination system including by selecting at least a younger snapshot based at least in part on an order among the first source system snapshot data, the second source system snapshot data, and a first destination system snapshot data that represents at the destination system a state of the set of data at a third point-in-time determined from the snapshot age identifying information, wherein selecting the younger snapshot forms a smaller delta compared with an older snapshot to consume less bandwidth when transmitting the set of delta data, wherein the snapshot age identifying information includes value data associated with a time of creation of the snapshot; generating a new destination system snapshot data that represents at the destination system the state of the set of data at the first point-in-time to be inserted into a sequence of snapshot data stored at the destination system based at least in part on the set of delta data, including by; determining a redundant metadata entry that is included in both the set of delta data and a second destination system snapshot data included in the sequence of snapshot data stored at the destination system; and removing the redundant metadata entry from either the set of delta data or the second destination system snapshot data; and transmitting the generated new destination system snapshot data to the destination system.
-
Specification