Recovering data from microslices in a dispersed storage network
First Claim
1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:
- identifying a data segment of data to be retrieved from storage units of the DSN, wherein the data segment is encoded into a set of encoded data slices, wherein the set of encoded data slices is divided into block sets of encoded data slices, and wherein one of the storage units stores one block set of encoded data slices of the block sets of encoded data slices;
generating a set of read requests in accordance with retrieval information, wherein the retrieval information assures that at least a decode threshold number of encoded data slices of the set of encoded data slices are retrievable, wherein a first read request of the set of read requests includes identity of a first block set of encoded data slices of the block sets of encoded data slices and a first number of encoded data slices of the first block set of encoded data slices that are to be read from a first storage unit of the storage units, wherein a second read request of the set of read requests includes identity of a second block set of encoded data slices of the block sets of encoded data slices and a second number of encoded data slices of the second block set of encoded data slices that are to be read from a second storage unit of the storage units, and wherein, when the storage units are available, at least one of the first number and the second number is less than a total number of encoded data slices in a block set of encoded data slices of the block sets of encoded data slices;
sending the set of read requests to the storage units; and
when the at least the decode threshold number of encoded data slices is received, decoding the at least a decode threshold number of encoded data slices to recover the data segment.
4 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a processing module of a dispersed storage network (DSN) identifying a data segment to be retrieved from storage units of the DSN, where the data segment is encoded into a set of encoded data slices that is divided into block sets of encoded data slices, and where each storage unit stores a block set of encoded data slices. The method continues with the processing module generating a set of read requests in accordance with retrieval information which assures that at least a decode threshold number of encoded data slices of the set are retrievable, where each request includes identity of a block set a number of encoded data slices that are to be read from a storage unit. The method continues with the processing module sending the set of read requests to the storage units and decoding received encoded data slices to recover the data segment.
-
Citations
21 Claims
-
1. A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:
-
identifying a data segment of data to be retrieved from storage units of the DSN, wherein the data segment is encoded into a set of encoded data slices, wherein the set of encoded data slices is divided into block sets of encoded data slices, and wherein one of the storage units stores one block set of encoded data slices of the block sets of encoded data slices; generating a set of read requests in accordance with retrieval information, wherein the retrieval information assures that at least a decode threshold number of encoded data slices of the set of encoded data slices are retrievable, wherein a first read request of the set of read requests includes identity of a first block set of encoded data slices of the block sets of encoded data slices and a first number of encoded data slices of the first block set of encoded data slices that are to be read from a first storage unit of the storage units, wherein a second read request of the set of read requests includes identity of a second block set of encoded data slices of the block sets of encoded data slices and a second number of encoded data slices of the second block set of encoded data slices that are to be read from a second storage unit of the storage units, and wherein, when the storage units are available, at least one of the first number and the second number is less than a total number of encoded data slices in a block set of encoded data slices of the block sets of encoded data slices; sending the set of read requests to the storage units; and when the at least the decode threshold number of encoded data slices is received, decoding the at least a decode threshold number of encoded data slices to recover the data segment. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer readable non-transitory memory device comprises:
-
at least one memory section that stores operational instructions that, when executed by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), causes the one or more computing devices to; identify a data segment of data to be retrieved from storage units of the DSN, wherein the data segment is encoded into a set of encoded data slices, wherein the set of encoded data slices is divided into block sets of encoded data slices, and wherein one of the storage units stores one block set of encoded data slices of the block sets of encoded data slices; generate a set of read requests in accordance with retrieval information, wherein the retrieval information assures that at least a decode threshold number of encoded data slices of the set of encoded data slices are retrievable, wherein a first read request of the set of read requests includes identity of a first block set of encoded data slices of the block sets of encoded data slices and a first number of encoded data slices of the first block set of encoded data slices that are to be read from a first storage unit of the storage units, wherein a second read request of the set of read requests includes identity of a second block set of encoded data slices of the block sets of encoded data slices and a second number of encoded data slices of the second block set of encoded data slices that are to be read from a second storage unit of the storage units, and wherein, when the storage units are available, at least one of the first number and the second number is less than a total number of encoded data slices in a block set of encoded data slices of the block sets of encoded data slices; send the set of read requests to the storage units; and when the at least the decode threshold number of encoded data slices is received, decode the at least a decode threshold number of encoded data slices to recover the data segment. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computing device of a group of computing devices of a dispersed storage network (DSN), the computing device comprises:
-
an interface; a local memory; and a processing module operably coupled to the interface and the local memory, wherein the processing module functions to; identify a data segment of data to be retrieved from storage units of the DSN, wherein the data segment is encoded into a set of encoded data slices, wherein the set of encoded data slices is divided into block sets of encoded data slices, and wherein one of the storage units stores one block set of encoded data slices of the block sets of encoded data slices; generate a set of read requests in accordance with retrieval information, wherein the retrieval information assures that at least a decode threshold number of encoded data slices of the set of encoded data slices are retrievable, wherein a first read request of the set of read requests includes identity of a first block set of encoded data slices of the block sets of encoded data slices and a first number of encoded data slices of the first block set of encoded data slices that are to be read from a first storage unit of the storage units, wherein a second read request of the set of read requests includes identity of a second block set of encoded data slices of the block sets of encoded data slices and a second number of encoded data slices of the second block set of encoded data slices that are to be read from a second storage unit of the storage units, and wherein, when the storage units are available, at least one of the first number and the second number is less than a total number of encoded data slices in a block set of encoded data slices of the block sets of encoded data slices; send, via the interface, the set of read requests to the storage units; and when the at least the decode threshold number of encoded data slices is received, decode the at least a decode threshold number of encoded data slices to recover the data segment. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification