ENCODED DATA SLICE CACHING IN A DISTRIBUTED STORAGE NETWORK
First Claim
1. A method for use in a distributed storage processing unit, the method comprising:
- receiving a request to retrieve requested information stored as encoded data slices in a distributed processing system, each encoded data slice including a data object encoded to prevent reconstruction of the data object using a single encoded data slice, and to permit reconstruction of the data object using at least a threshold number of encoded data slices;
determining whether relevant encoded data slices corresponding to at least part of the requested information are cached in temporary storage associated with a distributed storage processing unit;
if the relevant encoded data slices are cached in the temporary storage, retrieving the relevant encoded data slices from the temporary storage; and
if the relevant encoded data slices are not cached in the temporary storage, retrieving the relevant encoded data slices from a dispersed storage network unit.
4 Assignments
0 Petitions
Accused Products
Abstract
A distributed storage processing unit encodes data objects into multiple encoded data slices to prevent reconstruction of the original data object using a single encoded data slice, but to allow reconstruction using at least a threshold number of encoded data slices. The distributed storage processing unit can decide to whether and where to cache frequently requested data slices. When retrieving data slices related to a particular data object, a check can be made to determine if the data slices are cached in a temporary memory associated with the distributed storage processing unit, or elsewhere in the distributed storage network. This check can be facilitated by storing data slices and a hash table identifying the location of stored data slices in the same temporary memory.
99 Citations
22 Claims
-
1. A method for use in a distributed storage processing unit, the method comprising:
-
receiving a request to retrieve requested information stored as encoded data slices in a distributed processing system, each encoded data slice including a data object encoded to prevent reconstruction of the data object using a single encoded data slice, and to permit reconstruction of the data object using at least a threshold number of encoded data slices; determining whether relevant encoded data slices corresponding to at least part of the requested information are cached in temporary storage associated with a distributed storage processing unit; if the relevant encoded data slices are cached in the temporary storage, retrieving the relevant encoded data slices from the temporary storage; and if the relevant encoded data slices are not cached in the temporary storage, retrieving the relevant encoded data slices from a dispersed storage network unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A distributed storage processing unit comprising:
-
an interface to receive a request to retrieve a data object stored as a plurality of data slices in a distributed processing system, each of the plurality of data slices including an instance of the data object encoded to prevent reconstruction of the data object using a single data slice, and to permit reconstruction of the data object using at least a threshold number of data slices; a processor to; determine whether data slices corresponding to the data object are cached in a temporary storage; retrieve the data slices from the temporary storage if the data slices are cached in the temporary storage; and retrieve the data slices from a dispersed storage network unit if the data slices are not cached in the temporary storage. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A method comprising:
-
tracking a retrieval frequency of encoded data slices associated with a requested data object, each encoded data slice including an instance of the data object encoded to prevent reconstruction of the data object using a single encoded data slice, and to permit reconstruction of the data object using at least a read threshold number of data slices; caching at least the read threshold number of encoded data slices in a local storage based, at least in part, on the retrieval frequency comparing favorably to a frequency threshold; in response to caching an encoded data slice, updating a hash table stored in the local storage; accessing the hash table in response to receiving a request for the requested data object, to determine if encoded data slices associated with the requested data object are cached in the local storage; and retrieving the encoded data slices from the local storage if the hash table indicates that the encoded data slices are cached. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification