Creating Snapshots Of A Storage Volume In A Distributed Storage System
First Claim
1. A system comprising:
- a plurality of storage nodes;
a network, the plurality of storage nodes in data communication with the plurality of storage nodes;
a storage manager in data communication with the network, the storage manager programmed to—
transmit, to one or more storage nodes of the plurality of storage nodes, a plurality of new snapshot instructions with respect to a storage volume, each new snapshot instruction being one of a new principal snapshot instruction and a new clone instruction and having a corresponding preceding snapshot node in a hierarchical representation of the storage volume;
for each new snapshot instruction of the plurality of new snapshot instructions, add a new snapshot node as a descendent to the corresponding preceding snapshot node of the each new snapshot instruction in the hierarchical representation, the new snapshot node having a clone classification if the each new snapshot instruction was a new clone instruction.
1 Assignment
0 Petitions
Accused Products
Abstract
A new snapshot of a storage volume is created by instructing computing nodes to suppress write requests. Once pending write requests from the computing nodes are completed, storage nodes create a new snapshot for the storage volume by allocating a new segment to the new snapshot and finalizes and performs garbage collection with respect to segments allocated to the previous snapshot. Subsequent write requests to the storage volume are then performed on the segments allocated to the new snapshot. A segment maps segments to a particular snapshot and metadata stored in the segment indicates storage volume addresses of data written to the segment. The snapshots may be represented by a storage manager in a hierarchy that identifies an ordering of snapshots and branches to clone snapshots.
50 Citations
20 Claims
-
1. A system comprising:
-
a plurality of storage nodes; a network, the plurality of storage nodes in data communication with the plurality of storage nodes; a storage manager in data communication with the network, the storage manager programmed to— transmit, to one or more storage nodes of the plurality of storage nodes, a plurality of new snapshot instructions with respect to a storage volume, each new snapshot instruction being one of a new principal snapshot instruction and a new clone instruction and having a corresponding preceding snapshot node in a hierarchical representation of the storage volume; for each new snapshot instruction of the plurality of new snapshot instructions, add a new snapshot node as a descendent to the corresponding preceding snapshot node of the each new snapshot instruction in the hierarchical representation, the new snapshot node having a clone classification if the each new snapshot instruction was a new clone instruction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method comprising:
-
transmitting, by a storage manager comprising a processing device and one or more memory devices, a plurality of new snapshot instructions with respect to a storage volume, the plurality of new snapshot instructions including both of new principal snapshot instructions and at least one new clone instruction, each new snapshot instruction having a corresponding preceding snapshot node in a hierarchical representation of the storage volume; and for each new snapshot instruction of the plurality of new snapshot instructions, adding a new snapshot node as a descendent to the corresponding preceding snapshot node of the each new snapshot instruction in the hierarchical representation, the new snapshot node for the at least one new clone instruction having a clone classification. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification