Distributed storage network utilizing memory stripes
AssigneeCleversafe, Inc.
InventorJason K. Resch
Life of this patent
Estimating the term…
Abstract
Multiple data slices are generated from an original data segment. The data slices are constructed to prevent recovery of the original data segment using a single related data slice, but to allow recovery of the original data segment using fewer than all of the data slices. Each data slice is stored in the same memory stripe as the other data slices. The memory stripe extends across multiple memory devices and multiple different distributed storage units. The memory device in which each data slice is stored can be determined based on a source name associated with each data slice.
Claims11
A method for storing error coded data slices in a dispersed storage network (DSN), wherein a data segment is encoded using an error coding dispersed storage function to produce a plurality of error coded data slices, wherein each of the plurality of error coded data slices has a unique slice name, and wherein each of the unique slice names includes a common source name and unique addressing information, the method comprising:
- receiving, by a first dispersed storage unit of the DSN, a first error coded data slice of a plurality of error coded data slices and the unique slice name of the first error coded data slice;
- performing, by the first dispersed storage unit, a deterministic function on the common source name of the unique slice name of the first error coded data slice to select a memory device of a plurality of memory devices of the first distributed storage unit;
- and
- storing, by the first dispersed storage unit, the first error coded data slice in the memory device of the plurality of memory devices of the first dispersed storage unit based on the unique slice name of the first error coded data slice;
- receiving, by a second dispersed storage unit of the DSN, a second error coded data slice of a plurality of error coded data slices and the unique slice name of the second error coded data slice;
- performing, by the second dispersed storage unit, the deterministic function on the common source name of the unique slice name of the second error coded data slice to select a memory device of a plurality of memory devices of the second distributed storage unit;
- and
- storing, by the second dispersed storage unit, the second error coded data slice in the memory device of the plurality of memory devices of the second dispersed storage unit based on the unique slice name of the second error coded data slice.
A distributed storage unit comprising:
- an interface to receive error coded data slice of a plurality of error data slices, wherein a data segment is encoded using an error coding dispersed storage function to produce the plurality of error coded data slices, wherein each of the plurality of error coded data slices has a unique slice name, and wherein each of the unique slice names includes a common source name and unique addressing information;
- a plurality of memory devices;
- and
- a processing module operable to:
- perform a deterministic function on the common source name of the unique slice name of the error coded data slice to select a memory device of the plurality of memory devices;
- and
- facilitate storing the error coded data slice in the memory device based on the unique slice name of the error coded data slice.
Dependencies are inferred from the claim text.