CPC G06F 16/184 (2019.01) [G06F 11/0772 (2013.01); G06F 16/128 (2019.01); G06F 16/137 (2019.01); G06F 16/178 (2019.01); G06F 16/1827 (2019.01)] | 19 Claims |
1. A method comprising:
receiving, at a source system, a first copy instruction, the first copy instruction including or referencing a token that represents one or more data items, the token containing an identifier of a token-specific snapshot that is arranged to preserve the one or more data items, the first copy instruction instructing the source system to copy the one or more data items from a first volume to a second volume;
detecting whether the source system is currently performing synchronous replication of the first volume and the second volume;
when the source system is performing synchronous replication of both the first volume and the second volume: (i) identifying the token-specific snapshot, (ii) retrieving one or more hash digests from the token-specific snapshot, each of the one or more hash digests being associated with a different one of the one or more data items, (iii) transmitting, to a target system, a second copy instruction that is associated with the one or more hash digests, the second copy instruction instructing the target system to copy the one or more data items to a replica of the second volume that is stored at the target system, and (iv) copying the one or more data items from the first volume to the second volume; and
when the source system is not performing synchronous replication of the second volume, copying the one or more data items from the first volume to the second volume,
wherein the token-specific snapshot is created in response to a request to create the token for the purpose of preserving the one or more data items that are represented by the token, the token-specific snapshot being created before the first copy instruction is received,
wherein the source system and the target system are part of a storage system, and the token-specific snapshot is subject to one or more policies in the storage system that limit access to the token-specific snapshot to accesses that are performed for a purpose of performing token-based operations, and
wherein the storage system is configured to create a snapshot of the first volume that corresponds to unmapped read or write commands, and which is subject to different access restrictions than the token-specific snapshot, the snapshot that corresponds to unmapped read or write commands being different from the token-specific snapshot.
|