UTILIZING CACHED ENCODED DATA SLICES IN A DISPERSED STORAGE NETWORK
First Claim
1. A method for execution by a computing device of a dispersed storage network (DSN), the method comprises:
- executing a write operation to write a plurality of sets of encoded data slices to DSN memory, wherein a data object is dispersed storage error encoded to produce the plurality of sets of encoded data slices and wherein the write operation includes temporarily storing encoded data slices of the plurality of sets of encoded data slices in cache memory; and
while executing the write operation;
receiving a read request for at least a portion of the data object;
identifying relevant sets of encoded data slices of the plurality of sets of encoded data slices based on the read request;
determining whether at least some encoded data slices of the relevant sets of encoded data slices are stored in the cache memory;
when, for a set of encoded data slices of the relevant sets of encoded data slices, the at least some encoded data slices of the relevant sets of encoded data slices are stored in the cache memory;
determining whether a decode threshold number of encoded data slices is stored in the cache memory;
when less than the decode threshold number of encoded data slices is stored in the cache memory, retrieving encoded data slices from the DSN memory to obtain the decode threshold number of encoded data slices;
decoding the decode threshold number of encoded data slices to recover a corresponding data segment; and
outputting the recovered corresponding data segment.
5 Assignments
0 Petitions
Accused Products
Abstract
A method begins with a processing module of a dispersed storage network (DSN) executing a write operation to write a plurality of sets of encoded data slices to DSN memory, where the write operation includes temporarily storing encoded data slices in cache memory. The processing module receives a read request for a portion of the data object and determines whether a decode threshold number of encoded data slices of a set is stored in the cache memory. When less than the decode threshold number of encoded data slices is stored in the cache memory, the processing module retrieves encoded data slices from the DSN memory to obtain the decode threshold number of encoded data slices, decodes the decode threshold number of encoded data slices to recover a corresponding data segment, and outputs the recovered corresponding data segment.
21 Citations
15 Claims
-
1. A method for execution by a computing device of a dispersed storage network (DSN), the method comprises:
-
executing a write operation to write a plurality of sets of encoded data slices to DSN memory, wherein a data object is dispersed storage error encoded to produce the plurality of sets of encoded data slices and wherein the write operation includes temporarily storing encoded data slices of the plurality of sets of encoded data slices in cache memory; and while executing the write operation; receiving a read request for at least a portion of the data object; identifying relevant sets of encoded data slices of the plurality of sets of encoded data slices based on the read request; determining whether at least some encoded data slices of the relevant sets of encoded data slices are stored in the cache memory; when, for a set of encoded data slices of the relevant sets of encoded data slices, the at least some encoded data slices of the relevant sets of encoded data slices are stored in the cache memory; determining whether a decode threshold number of encoded data slices is stored in the cache memory; when less than the decode threshold number of encoded data slices is stored in the cache memory, retrieving encoded data slices from the DSN memory to obtain the decode threshold number of encoded data slices; decoding the decode threshold number of encoded data slices to recover a corresponding data segment; and outputting the recovered corresponding data segment. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer readable storage medium 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; execute a write operation to write a plurality of sets of encoded data slices to DSN memory, wherein a data object is dispersed storage error encoded to produce the plurality of sets of encoded data slices and wherein the write operation includes temporarily storing encoded data slices of the plurality of sets of encoded data slices in a cache memory; and while executing the write operation; receive a read request for at least a portion of the data object; identify relevant sets of encoded data slices of the plurality of sets of encoded data slices based on the read request; determine whether at least some encoded data slices of the relevant sets of encoded data slices are stored in the cache memory; when, for a set of encoded data slices of the relevant sets of encoded data slices, the at least some encoded data slices of the relevant sets of encoded data slices are stored in the cache memory; determine whether a decode threshold number of encoded data slices is stored in the cache memory; when less than the decode threshold number of encoded data slices is stored in the cache memory, retrieve encoded data slices from the DSN memory to obtain the decode threshold number of encoded data slices; decode the decode threshold number of encoded data slices to recover a corresponding data segment; and output the recovered corresponding data segment. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A computing device of a dispersed storage network (DSN), the computing device comprises:
-
an interface; a cache memory; and a processing module operably coupled to the interface and the cache memory, wherein the processing module functions to; execute a write operation to write, via the interface, a plurality of sets of encoded data slices to DSN memory, wherein a data object is dispersed storage error encoded to produce the plurality of sets of encoded data slices and wherein the write operation includes temporarily storing encoded data slices of the plurality of sets of encoded data slices in the cache memory; and while executing the write operation; receive a read request for at least a portion of the data object; identify relevant sets of encoded data slices of the plurality of sets of encoded data slices based on the read request; determine whether at least some encoded data slices of the relevant sets of encoded data slices are stored in the cache memory; when, for a set of encoded data slices of the relevant sets of encoded data slices, the at least some encoded data slices of the relevant sets of encoded data slices are stored in the cache memory; determine whether a decode threshold number of encoded data slices is stored in the cache memory; when less than the decode threshold number of encoded data slices is stored in the cache memory, retrieve, via the interface, encoded data slices from the DSN memory to obtain the decode threshold number of encoded data slices; decode the decode threshold number of encoded data slices to recover a corresponding data segment; and output the recovered corresponding data segment. - View Dependent Claims (12, 13, 14, 15)
-
Specification