Prioritized data rebuilding in a dispersed storage network
First Claim
Patent Images
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:
- transmitting a plurality of queries to a plurality of storage units of the DSN, wherein each query of the plurality of queries is directed at a storage unit of a plurality of storage units of the DSN associated with a first data segment;
receiving one or more query response message of a plurality of query response messages from the plurality of storage units of the DSN, wherein each query response message of the plurality of query response messages is associated with a query of the plurality of queries;
determining, based on the plurality of query response messages received from the plurality of storage units of the DSN, whether a first threshold number of error-free dispersed storage error encoded data slices (EDSs) has been stored in the plurality of storage units of the DSN, wherein the first threshold number of error-free dispersed storage error EDSs were produced from the first data segment;
when the first threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN, assigning a first rebuilding priority to the first data segment;
when the first threshold number of error-free dispersed storage error EDSs has not been stored in the plurality of storage units of the DSN, determining whether a second threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN;
when the second threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN, assigning a second rebuilding priority to the first data segment; and
when a number of error-free dispersed storage error EDSs is between the first threshold number of error-free dispersed storage error EDSs and the second threshold number of error-free dispersed storage error EDSs, issuing a decode threshold number of read slice requests to storage units known to store available error-free EDSs; and
rebuilding one or more dispersed storage error EDSs associated with the first data segment that are not error-free.
4 Assignments
0 Petitions
Accused Products
Abstract
A method begins with a processing module querying distributed storage network (DSN) storage units regarding storage errors associated with a data segment. The method continues with the processing module receiving query responses and depending on the responses, assigning a first threshold priority or a second threshold priority to encoded data slices (EDSs) associated with the data segment. The method proceeds with the processing module, depending on the assigned threshold priority, issuing read slice requests and rebuilding EDS associated with the data segment.
78 Citations
20 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:
-
transmitting a plurality of queries to a plurality of storage units of the DSN, wherein each query of the plurality of queries is directed at a storage unit of a plurality of storage units of the DSN associated with a first data segment; receiving one or more query response message of a plurality of query response messages from the plurality of storage units of the DSN, wherein each query response message of the plurality of query response messages is associated with a query of the plurality of queries; determining, based on the plurality of query response messages received from the plurality of storage units of the DSN, whether a first threshold number of error-free dispersed storage error encoded data slices (EDSs) has been stored in the plurality of storage units of the DSN, wherein the first threshold number of error-free dispersed storage error EDSs were produced from the first data segment; when the first threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN, assigning a first rebuilding priority to the first data segment; when the first threshold number of error-free dispersed storage error EDSs has not been stored in the plurality of storage units of the DSN, determining whether a second threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN; when the second threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN, assigning a second rebuilding priority to the first data segment; and when a number of error-free dispersed storage error EDSs is between the first threshold number of error-free dispersed storage error EDSs and the second threshold number of error-free dispersed storage error EDSs, issuing a decode threshold number of read slice requests to storage units known to store available error-free EDSs; and rebuilding one or more dispersed storage error EDSs associated with the first data segment that are not error-free. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computing device comprising:
-
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN); memory that stores operational instructions; a processing module operably coupled to the interface and to the memory, wherein the processing module, when operable within the computing device based on the operational instructions, is configured to; transmit at least a first threshold number of list slice message requests to a plurality of storage units of the DSN, wherein the at least a first threshold number of list slice message requests is associated with a first data segment; receive a plurality of list slice response messages from the plurality of storage units of the DSN, wherein a number of list slice response messages are associated with the first threshold number of list slice message requests; determine, based on the plurality of list slice response messages received from the plurality of storage units of the DSN, whether a first threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN; when the first threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN, assign a first rebuilding priority to the first data segment; when the first threshold number of error-free dispersed storage error EDSs has not been stored in the plurality of storage units of the DSN, determine whether a second threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN; when the second threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN, assign a second rebuilding priority to the first data segment; and when a number of error-free dispersed storage error EDSs is between the first threshold number of error-free dispersed storage error EDSs and the second threshold number of error-free dispersed storage error EDSs, issue a decode threshold number of read slice requests to storage units known to store available error-free EDSs; and rebuild one or more dispersed storage error EDSs associated with the first data segment that are not error-free. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A non-transitory computer readable storage device comprises:
-
a first memory section that stores operational instructions that, when executed by a computing device, causes the computing device to transmit at least a first threshold number of list slice message requests to a plurality of storage units of a distributed storage network (DSN), wherein the at least a first threshold number of list slice message requests is associated with a first data segment; a second memory section that stores operational instructions that, when executed by the computing device, causes the computing device to; receive a plurality of list slice response messages from the plurality of storage units of the DSN; determine, based on the plurality of list slice response messages received from the plurality of storage units of the DSN, whether a first threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN; and when the first threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN, assign a first rebuilding priority to the first data segment; when the first threshold number of error-free dispersed storage error EDSs has not been stored in the plurality of storage units of the DSN, determine whether a second threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN; and when the second threshold number of error-free dispersed storage error EDSs has been stored in the plurality of storage units of the DSN, assign a second rebuilding priority to the first data segment; when a number of error-free dispersed storage error EDSs is between the first threshold number of error-free dispersed storage error EDSs and the second threshold number of error-free dispersed storage error EDSs, issue a decode threshold number of read slice requests to storage units known to store available error-free EDSs; and rebuild one or more dispersed storage error EDSs associated with the first data segment that are not error-free. - View Dependent Claims (19, 20)
-
Specification