Replication and snapshots for flash storage systems
First Claim
Patent Images
1. A storage system comprising:
- one or more storage controllers; and
a plurality of storage devices, wherein the plurality of storage devices store a dataset;
wherein the one or more storage controllers are configured to;
receive a request to replicate the dataset onto another storage system;
identify one or more snapshots that contain data that is included within the dataset, wherein each of the one or more snapshots further include data that is not included within the dataset; and
replicate, onto the other storage system, portions of the one or more snapshots that contain data that is included within the dataset;
wherein each snapshot is implemented based at least in part on one or more metadata objects corresponding to the dataset,wherein the dataset is exposed to one or more user operations after a portion of the one or more metadata objects is replicated from the storage system to the other storage system and prior to other portions of the one or more metadata objects being replicated from the storage system to the other storage system, andwherein the storage system is configured to wait until the other portions of the one or more metadata objects have been replicated before putting the one or more metadata objects into a read-only state.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for exposing volumes with underlying read-write mediums to user operations. When a medium is in the process of being replicated to a storage array, a volume which relies on the medium can be exposed to user operations (e.g., snapshots, read and write operations) once the portions of the medium which underlie the volume have been replicated. The volume can be exposed to user operations while one or more other portions of the medium are unfilled and while the medium is in an intermediate read-write state.
217 Citations
14 Claims
-
1. A storage system comprising:
-
one or more storage controllers; and a plurality of storage devices, wherein the plurality of storage devices store a dataset; wherein the one or more storage controllers are configured to; receive a request to replicate the dataset onto another storage system; identify one or more snapshots that contain data that is included within the dataset, wherein each of the one or more snapshots further include data that is not included within the dataset; and replicate, onto the other storage system, portions of the one or more snapshots that contain data that is included within the dataset; wherein each snapshot is implemented based at least in part on one or more metadata objects corresponding to the dataset, wherein the dataset is exposed to one or more user operations after a portion of the one or more metadata objects is replicated from the storage system to the other storage system and prior to other portions of the one or more metadata objects being replicated from the storage system to the other storage system, and wherein the storage system is configured to wait until the other portions of the one or more metadata objects have been replicated before putting the one or more metadata objects into a read-only state. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
receiving a request to replicate the dataset onto another storage system; identify one or more snapshots that contain data that is included within the dataset, wherein each of the one or more snapshots further include data that is not included within the dataset; and replicate, onto the other storage system, portions of the one or more snapshots that contain data that is included within the dataset; wherein each snapshot is implemented based at least in part on one or more metadata objects corresponding to the dataset, wherein the dataset is exposed to one or more user operations after a portion of the one or more metadata objects is replicated from the storage system to the other storage system and prior to other portions of the one or more metadata objects being replicated from the storage system to the other storage system, and wherein the storage system is configured to wait until the other portions of the one or more metadata objects have been replicated before putting the one or more metadata objects into a read-only state. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A non-transitory computer readable storage medium storing program instructions, wherein the program instructions are executable by a processor to:
-
receive a request to replicate the dataset onto another storage system; identify one or more snapshots that contain data that is included within the dataset, wherein each of the one or more snapshots further include data that is not included within the dataset; and replicate, onto the other storage system, portions of the one or more snapshots that contain data that is included within the dataset; wherein each snapshot is implemented based at least in part on one or more metadata objects corresponding to the dataset, wherein the dataset is exposed to one or more user operations after a portion of the one or more metadata objects is replicated from the storage system to the other storage system and prior to other portions of the one or more metadata objects being replicated from the storage system to the other storage system, and wherein the storage system is configured to wait until the other portions of the one or more metadata objects have been replicated before putting the one or more metadata objects into a read-only state. - View Dependent Claims (12, 13, 14)
-
Specification