Performance improvements in a storage system
First Claim
Patent Images
1. A system comprising:
- one or more storage devices; and
a storage controller coupled to the one or more storage devices, wherein the storage controller is configured to;
allocate an indirection layer for a volume, wherein the indirection layer is mapped directly below the volume and above a first anchor medium, wherein the first anchor medium is a logical grouping of data;
wherein the indirection layer is a link between the volume and the first anchor medium of the volume;
map read and write operations targeting the volume through the indirection layer;
in response to detecting a request to perform a first snapshot of the volume, convert a first anchor medium from a read-write state to a read-only state;
in response to detecting a write operation targeting the volume and subsequent to detecting the request to perform the first snapshot of the volume, allocate a second anchor medium that maps directly below the indirection layer and above the first anchor medium; and
perform the write operation to the second anchor medium.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems, methods, and computer readable storage mediums for optimizing performance in a storage system. A volume may be mapped to an anchor medium through an indirection layer. When a snapshot is taken of the volume, the allocation of a new anchor medium is delayed until a write operation targeting the volume is received. When a write operation targeting the volume is received, a new anchor medium may be allocated for only a portion of the volume corresponding to the portion of the volume which is targeted by the write operation. Also, when a snapshot is taken of the volume, read optimization operations are performed only the portions of the volume which have changed since the previous snapshot.
92 Citations
14 Claims
-
1. A system comprising:
-
one or more storage devices; and a storage controller coupled to the one or more storage devices, wherein the storage controller is configured to; allocate an indirection layer for a volume, wherein the indirection layer is mapped directly below the volume and above a first anchor medium, wherein the first anchor medium is a logical grouping of data;
wherein the indirection layer is a link between the volume and the first anchor medium of the volume;map read and write operations targeting the volume through the indirection layer; in response to detecting a request to perform a first snapshot of the volume, convert a first anchor medium from a read-write state to a read-only state; in response to detecting a write operation targeting the volume and subsequent to detecting the request to perform the first snapshot of the volume, allocate a second anchor medium that maps directly below the indirection layer and above the first anchor medium; and perform the write operation to the second anchor medium. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
allocating an indirection layer for a volume, wherein the indirection layer is mapped directly below the volume and above a first anchor medium, wherein the first anchor medium is a logical grouping of data;
wherein the indirection layer is a link between the volume and the first anchor medium of the volume;mapping read and write operations targeting the volume through the indirection layer; in response to detecting a request to perform a first snapshot of the volume, converting a first anchor medium from a read-write state to a read-only state; in response to detecting a write operation targeting the volume and subsequent to detecting the request to perform the first snapshot of the volume, allocating a second anchor medium that maps directly below the indirection layer and above the first anchor medium; and performing the write operation to the second anchor medium. - 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:
-
allocate an indirection layer for a volume, wherein the indirection layer is mapped directly below the volume and above a first anchor medium, wherein the first anchor medium is a logical grouping of data;
wherein the indirection layer is a link between the volume and the first anchor medium of the volume;map read and write operations targeting the volume through the indirection layer; in response to detecting a request to perform a first snapshot of the volume, convert a first anchor medium from a read-write state to a read-only state; in response to detecting a write operation targeting the volume and subsequent to detecting the request to perform the first snapshot of the volume, allocate a second anchor medium that maps directly below the indirection layer and above the first anchor medium; and perform the write operation to the second anchor medium. - View Dependent Claims (12, 13, 14)
-
Specification