ASYNCHRONOUS REPLICATION OF SYNCHRONOUSLY REPLICATED DATA
A storage system asynchronously replicating a synchronously replicated dataset, where the asynchronous replication of the asynchronously replicated dataset includes: determining, at a target storage system, multiple work items corresponding to a dataset stored among multiple source storage systems, wherein each respective work item corresponds to a respective subset of the dataset; and for each session from among a plurality of sessions operating on the target storage system: determining one or more computing environment factors affecting performance of replication of data from one or more of the multiple source storage systems to the target storage system; identifying, for a given session and based on the one or more computing environment factors, a respective source storage system and a quantity of work items; and replicating, from the respective storage system, one or more subsets of data corresponding to the quantity of work items.
1 . A method of asynchronously replicating synchronously replicated data, the method comprising:
determining, at a target storage system, multiple work items corresponding to a dataset stored among multiple source storage systems, wherein each respective work item corresponds to a respective subset of the dataset; and
for each session from among a plurality of sessions operating on the target storage system:
determining one or more computing environment factors affecting performance of replication of data from one or more of the multiple source storage systems to the target storage system;
identifying, for a given session and based on the one or more computing environment factors, a respective source storage system and a quantity of work items; and
replicating, from the respective storage system, one or more subsets of data corresponding to the quantity of work items.
2 . The method of claim 1 , wherein the dataset is synchronously replicated among the one or more source storage systems.
3 . The method of claim 1 , wherein at least one of the one or more source storage systems notifies the target storage system that the dataset is ready to be replicated.
4 . The method of claim 1 , wherein the one or more of the multiple source storage systems are selected based on the one or more computing environment factors, and wherein the one or more source storage systems are less than all of the multiple source storage systems.
5 . The method of claim 1 , wherein the dataset is a snapshot.
6 . The method of claim 1 , wherein the target storage system requests metadata describing the dataset, wherein each respective work item is based on the metadata, and wherein the metadata describes a hierarchical structure corresponding to distinct blocks of data that make up the dataset.
7 . The method of claim 1 , wherein determining the one or more computing environment factors occurs prior to identification of work items to perform.
8 . A storage system for asynchronously replicating a synchronously replicated dataset, the storage system comprising a computer processor and a computer memory operatively coupled to the computer processor, the computer memory storing computer program instructions that, when executed by the computer processor, cause the storage system to carry out the steps of:
determine, at a target storage system, multiple work items corresponding to a dataset stored among multiple source storage systems, wherein each respective work item corresponds to a respective subset of the dataset; and
for each session from among a plurality of sessions operating on the target storage system:
determine one or more computing environment factors affecting performance of replication of data from one or more of the multiple source storage systems to the target storage system;
identify, for a given session and based on the one or more computing environment factors, a respective source storage system and a quantity of work items; and
replicate, from the respective storage system, one or more subsets of data corresponding to the quantity of work items.
9 . The storage system of claim 8 , wherein the dataset is synchronously replicated among the one or more source storage systems.
10 . The storage system of claim 8 , wherein at least one of the one or more source storage systems notifies the target storage system that the dataset is ready to be replicated.
11 . The storage system of claim 8 , wherein the one or more of the multiple source storage systems are selected based on the one or more computing environment factors, and wherein the one or more source storage systems are less than all of the multiple source storage systems.
12 . The storage system of claim 8 , wherein the dataset is a snapshot.
13 . The storage system of claim 8 , wherein the target storage system requests metadata describing the dataset, wherein each respective work item is based on the metadata, and wherein the metadata describes a hierarchical structure corresponding to distinct blocks of data that make up the dataset.
14 . The storage system of claim 8 , wherein determining the one or more computing environment factors occurs prior to identification of work items to perform.
15 . An apparatus for asynchronously replicating a synchronously replicated dataset, the apparatus comprising a computer processor and a computer memory operatively coupled to the computer processor, the computer memory storing computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:
determine, at a target storage system, multiple work items corresponding to a dataset stored among multiple source storage systems, wherein each respective work item corresponds to a respective subset of the dataset; and
for each session from among a plurality of sessions operating on the target storage system:
determine one or more computing environment factors affecting performance of replication of data from one or more of the multiple source storage systems to the target storage system;
identify, for a given session and based on the one or more computing environment factors, a respective source storage system and a quantity of work items; and
replicate, from the respective storage system, one or more subsets of data corresponding to the quantity of work items.
16 . The apparatus of claim 15 , wherein the dataset is synchronously replicated among the one or more source storage systems.
17 . The apparatus of claim 15 , wherein at least one of the one or more source storage systems notifies the target storage system that the dataset is ready to be replicated.
18 . The apparatus of claim 15 , wherein the one or more of the multiple source storage systems are selected based on the one or more computing environment factors, and wherein the one or more source storage systems are less than all of the multiple source storage systems.
19 . The apparatus of claim 15 , wherein the target storage system requests metadata describing the dataset, wherein each respective work item is based on the metadata, and wherein the metadata describes a hierarchical structure corresponding to distinct blocks of data that make up the dataset.
20 . The apparatus of claim 15 , wherein determining the one or more computing environment factors occurs prior to identification of work items to perform.