Proxying read requests when performance or availability failure is anticipated
First Claim
1. A method comprises:
- receiving, by a read threshold number of storage units of a set of storage units of a dispersed storage network (DSN), a read threshold number of read requests regarding a read threshold number of encoded data slices of a set of encoded data slices, wherein a data segment of a data object is dispersed storage error encoded into the set of encoded data slices, wherein the set of encoded data slices is stored in the set of storage units, and wherein the read threshold number is less than a total number of encoded data slices in the set of encoded data slices and is equal to or greater than a decode threshold number;
determining, by each storage unit of the read threshold number of storage units, whether the storage unit is capable of processing a respective read request of the read threshold number of read requests;
when a particular storage unit of the read threshold number of storage units is not capable of processing the respective read request;
sending, by the particular storage unit, a proxy read request to another storage unit of the set of storage units that is not in the read threshold number of storage units;
determining, by the other storage unit, whether the other storage unit is capable of processing the proxy read request; and
when the other storage unit is capable of processing the proxy read request, processing, by the other storage unit, the proxy read request.
2 Assignments
0 Petitions
Accused Products
Abstract
A method includes receiving, by a read threshold number of storage units of a dispersed storage network (DSN), the read threshold number of read requests regarding the read threshold number of encoded data slices of a set of encoded data slices. The method further includes determining, by each storage unit of the read threshold number of storage units, whether the storage unit is capable of processing a respective read request. When a particular storage unit is not capable of processing the respective read request, the method further includes sending, by the particular storage unit, a proxy read request to another storage unit that is not in the read threshold number of storage units. The method further includes determining, by the other storage unit, whether the other storage unit is capable of processing the proxy read request and, when it is, processing the proxy read request.
86 Citations
16 Claims
-
1. A method comprises:
-
receiving, by a read threshold number of storage units of a set of storage units of a dispersed storage network (DSN), a read threshold number of read requests regarding a read threshold number of encoded data slices of a set of encoded data slices, wherein a data segment of a data object is dispersed storage error encoded into the set of encoded data slices, wherein the set of encoded data slices is stored in the set of storage units, and wherein the read threshold number is less than a total number of encoded data slices in the set of encoded data slices and is equal to or greater than a decode threshold number; determining, by each storage unit of the read threshold number of storage units, whether the storage unit is capable of processing a respective read request of the read threshold number of read requests; when a particular storage unit of the read threshold number of storage units is not capable of processing the respective read request; sending, by the particular storage unit, a proxy read request to another storage unit of the set of storage units that is not in the read threshold number of storage units; determining, by the other storage unit, whether the other storage unit is capable of processing the proxy read request; and when the other storage unit is capable of processing the proxy read request, processing, by the other storage unit, the proxy read request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer readable memory device comprises:
-
a first memory section that stores operational instructions that, when executed by a read threshold number of storage units of a set of storage units of a dispersed storage network (DSN), causes the read threshold number of storage units to; receive a read threshold number of read requests regarding a read threshold number of encoded data slices of a set of encoded data slices, wherein a data segment of a data object is dispersed storage error encoded into the set of encoded data slices, wherein the set of encoded data slices is stored in the set of storage units, and wherein the read threshold number is less than a total number of encoded data slices in the set of encoded data slices and is equal to or greater than a decode threshold number; a second memory section that stores operational instructions that, when executed by each storage unit of the read threshold number of storage units, causes each storage unit of the read threshold number of storage units to; determine whether the storage unit is capable of processing a respective read request of the read threshold number of read requests; a third memory section that stores operational instructions that, when executed by a particular storage unit of the read threshold number of storage units, causes the particular storage unit to; send a proxy read request to another storage unit of the set of storage units that is not in the read threshold number of storage units when the particular storage unit is not capable of processing the respective read request; a fourth memory section that stores operational instructions that, when executed by the other storage unit, causes the other storage unit to; determine whether the other storage unit is capable of processing the proxy read request; and when the other storage unit is capable of processing the proxy read request, process the proxy read request. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification