SLICE RETRIEVAL IN ACCORDANCE WITH AN ACCESS SEQUENCE IN A DISPERSED STORAGE NETWORK
First Claim
1. A method comprises:
- receiving a data retrieval request to retrieve data stored as a plurality of sets of encoded data slices in a dispersed storage network (DSN) memory, wherein the data retrieval request includes a data identifier (ID);
determining an access sequence for retrieving the plurality of sets of encoded data slices based on the data ID; and
in accordance with the access sequence, entering a loop that includes;
sending a slice retrieval message for a set of encoded data slices of the plurality of sets of encoded data slices;
when the set of encoded data slices or a previous set of encoded data slices is requested in accordance with a system maintained access sequence, receiving at least a decode threshold number of encoded data slices of the set to produce received encoded data slices;
dispersed storage error decoding the received encoded data slices to produce recovered decoded data;
exiting the loop when the set of encoded data slices is a last set of the plurality of sets of encoded data slices or when the set of encoded data slices or the previous set of encoded data slices is not requested in accordance with the system maintained access sequence; and
repeating the loop when the set of encoded data slices is not the last set of the plurality of sets of encoded data slices and when request of the set of encoded data slices and the previous set of encoded data slices are requested in accordance with the system maintained access sequence.
5 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a processing module receiving a data retrieval request to retrieve data stored as a plurality of sets of encoded data slices in a dispersed storage network memory. The method continues with the processing module determining an access sequence for retrieving the plurality of sets of encoded data slices in accordance with the access sequence, entering a loop to produce recovered decoded data that includes sending a slice retrieval message for a set of encoded data slices of the plurality of sets of encoded data slices, receiving at least a decode threshold number of encoded data slices of the set to produce received encoded data slices, dispersed storage error decoding the received encoded data slices to produce the recovered decoded data, and exiting the loop when a set of encoded data slices is not requested in accordance with a system maintained access sequence.
79 Citations
22 Claims
-
1. A method comprises:
-
receiving a data retrieval request to retrieve data stored as a plurality of sets of encoded data slices in a dispersed storage network (DSN) memory, wherein the data retrieval request includes a data identifier (ID); determining an access sequence for retrieving the plurality of sets of encoded data slices based on the data ID; and in accordance with the access sequence, entering a loop that includes; sending a slice retrieval message for a set of encoded data slices of the plurality of sets of encoded data slices; when the set of encoded data slices or a previous set of encoded data slices is requested in accordance with a system maintained access sequence, receiving at least a decode threshold number of encoded data slices of the set to produce received encoded data slices; dispersed storage error decoding the received encoded data slices to produce recovered decoded data; exiting the loop when the set of encoded data slices is a last set of the plurality of sets of encoded data slices or when the set of encoded data slices or the previous set of encoded data slices is not requested in accordance with the system maintained access sequence; and repeating the loop when the set of encoded data slices is not the last set of the plurality of sets of encoded data slices and when request of the set of encoded data slices and the previous set of encoded data slices are requested in accordance with the system maintained access sequence. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprises:
-
detecting a data retrieval request regarding retrieval of data stored as a plurality of sets of encoded data slices in a dispersed storage network (DSN) memory; determining a system maintained access sequence for retrieving the plurality of sets of encoded data slices based on the data retrieval request; and in accordance with a sequence of retrieving the plurality of sets of encoded data slices, entering a loop that includes; detecting a slice retrieval message for a set of encoded data slices of the plurality of sets of encoded data slices; determining whether the set of encoded data slices or a previous set of encoded data slices is requested in accordance with the system maintained access sequence; when the set of encoded data slices or the previous set of encoded data slices is not retrieved in accordance with the system maintained access sequence, sending a retrieval termination message to the DSN memory and exiting the loop; and repeating the loop when the set of encoded data slices is not a last set of the plurality of sets of encoded data slices and when request of the set of encoded data slices and the previous set of encoded data slices are retrieved in accordance with the system maintained access sequence. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A computer comprises:
-
an interface; a memory; and a processing module operable to; receive, via the interface, a data retrieval request to retrieve data stored as a plurality of sets of encoded data slices in a dispersed storage network (DSN) memory, wherein the data retrieval request includes a data identifier (ID); determine an access sequence for retrieving the plurality of sets of encoded data slices based on the data ID; and in accordance with the access sequence, enter a loop that includes; sending, via the interface, a slice retrieval message for a set of encoded data slices of the plurality of sets of encoded data slices; when the set of encoded data slices or a previous set of encoded data slices is requested in accordance with a system maintained access sequence, receiving, via the interface, at least a decode threshold number of encoded data slices of the set to produce received encoded data slices; dispersed storage error decoding the received encoded data slices to produce recovered decoded data; exiting the loop when the set of encoded data slices is a last set of the plurality of sets of encoded data slices or when the set of encoded data slices or the previous set of encoded data slices is not requested in accordance with the system maintained access sequence; and repeating the loop when the set of encoded data slices is not the last set of the plurality of sets of encoded data slices and when request of the set of encoded data slices and the previous set of encoded data slices are requested in accordance with the system maintained access sequence. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A computer comprises:
-
an interface; a memory; and a processing module operable to; detect a data retrieval request regarding retrieval of data stored as a plurality of sets of encoded data slices in a dispersed storage network (DSN) memory; determine a system maintained access sequence for retrieving the plurality of sets of encoded data slices based on the data retrieval request; and in accordance with a sequence of retrieving the plurality of sets of encoded data slices, enter a loop that includes; detecting a slice retrieval message for a set of encoded data slices of the plurality of sets of encoded data slices; determining whether the set of encoded data slices or a previous set of encoded data slices is requested in accordance with the system maintained access sequence; when the set of encoded data slices or the previous set of encoded data slices is not retrieved in accordance with the system maintained access sequence, sending, via the interface, a retrieval termination message to the DSN memory and exiting the loop; and repeating the loop when the set of encoded data slices is not a last set of the plurality of sets of encoded data slices and when request of the set of encoded data slices and the previous set of encoded data slices are retrieved in accordance with the system maintained access sequence. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification