PROCESSING ACCESS REQUESTS IN A DISPERSED STORAGE NETWORK
A method for execution by a director module includes receiving an access request that includes a searchable identifier. A dispersed hierarchical index is searched using the searchable identifier to identify a resource group. Group access information that includes the access request is issued to an access module associated with the resource group. The access module accesses a DSN memory based on the group access information and updates the dispersed hierarchical index with regards to the resource group. Further group access information is received from the access module. An access response is issued to a requesting entity based on the further group access information.
1 . A method for execution by a director module that includes a processor, the method comprises:
receiving an access request that includes a searchable identifier;
searching a dispersed hierarchical index using the searchable identifier to identify a resource group;
issuing group access information that includes the access request to an access module associated with the resource group, wherein the access module accesses a DSN memory based on the group access information and updates the dispersed hierarchical index with regards to the resource group;
receiving further group access information from the access module; and
issuing an access response to a requesting entity based on the further group access information.
2 . The method of claim 1 , wherein searching the dispersed hierarchical index includes:
identifying a leaf node associated with the searchable identifier; and
extracting a resource group identifier from the leaf node to identify the resource group.
3 . The method of claim 1 , wherein searching the dispersed hierarchical index includes exchanging index slice information with the DSN memory to identify and retrieve slices of at least one nodes of the dispersed hierarchical index based on the searchable identifier, and wherein the searchable identifier is based on an object name associated with a data object for access.
4 . The method of claim 1 , wherein issuing the group access information includes:
identifying the access module based on the identified resource group;
generating the group access information to include the access request, contents of a leaf node associated with the searchable identifier, and a DSN address associated with a data object for access; and
sending the group access information to the access module.
5 . The method of claim 4 , wherein the DSN address is associated with an encoded slice of a set of encoded data slices associated with the data object, and wherein the data object was dispersed storage error encoded to produce the set of encoded data slices for storage in a set of storage units of the DSN memory.
6 . The method of claim 1 , wherein the access module issues slice access requests to the DSN memory using a DSN address associated with a data object indicated in the access request, receives slice access responses from the DSN memory, and generates a response for transmission to the director module based on the slice access responses, and wherein the method further comprises receiving the response from the access module.
7 . The method of claim 1 , wherein the access request includes a delete request that indicates a data object, and wherein the access module updates the dispersed hierarchical index by deleting an entry of a leaf node corresponding to the data object, and wherein the entry corresponds to the data object.
8 . The method of claim 1 , wherein the access request includes a write request that indicates a data object, and wherein the access module updates the dispersed hierarchical index by adding an entry to a leaf node corresponding to the data object, and wherein the entry corresponds to the data object.
9 . The method of claim 1 , wherein the further group access information includes a response based on slice access responses to the access module, and wherein the access response includes the response.
10 . The method of claim 1 , wherein the dispersed hierarchical index includes a plurality of leaf nodes that include a corresponding plurality of data object index keys that are ordered in accordance with ordering of attributes of an attribute category, wherein each data object index key of the plurality of data object index keys uniquely identifies one of a plurality of data objects stored in the DSN memory in accordance with the attribute category, and wherein the plurality of data objects are stored in a plurality of storage units of the DSN memory as corresponding sets of encoded slices produced by dispersed storage error encoding the plurality of data objects.
11 . A processing system of a director module comprises:
at least one processor;
a memory that stores operational instructions, that when executed by the at least one processor cause the processing system to:
receive an access request that includes a searchable identifier;
search a dispersed hierarchical index using the searchable identifier to identify a resource group;
issue group access information that includes the access request to an access module associated with the resource group, wherein the access module accesses a DSN memory based on the group access information and updates the dispersed hierarchical index with regards to the resource group;
receive further group access information from the access module; and
issue an access response to a requesting entity based on the further group access information.
12 . The processing system of claim 11 , wherein searching the dispersed hierarchical index includes:
identifying a leaf node associated with the searchable identifier; and
extracting a resource group identifier from the leaf node to identify the resource group.
13 . The processing system of claim 11 , wherein searching the dispersed hierarchical index includes exchanging index slice information with the DSN memory to identify and retrieve slices of at least one node of the dispersed hierarchical index based on the searchable identifier, and wherein the searchable identifier is based on an object name associated with a data object for access.
14 . The processing system of claim 11 , wherein issuing the group access information includes:
identifying the access module based on the identified resource group;
generating the group access information to include the access request, contents of a leaf node associated with the searchable identifier, and a DSN address associated with a data object for access; and
sending the group access information to the access module.
15 . The processing system of claim 14 , wherein the DSN address is associated with an encoded slice of a set of encoded data slices associated with the data object, and wherein the data object was dispersed storage error encoded to produce the set of encoded data slices for storage in a set of storage units of the DSN memory.
16 . The processing system of claim 11 , wherein the access request includes a delete request that indicates a data object, and wherein the access module updates the dispersed hierarchical index by deleting an entry of a leaf node corresponding to the data object, and wherein the entry corresponds to the data object.
17 . The processing system of claim 11 , wherein the access request includes a write request that indicates a data object, and wherein the access module updates the dispersed hierarchical index by adding an entry to a leaf node corresponding to the data object, and wherein the entry corresponds to the data object.
18 . The processing system of claim 11 , wherein the further group access information includes a response based on slice access responses to the access module, and wherein the access response includes the response.
19 . The processing system of claim 11 , wherein the dispersed hierarchical index includes a plurality of leaf nodes that include a corresponding plurality of data object index keys that are ordered in accordance with ordering of attributes of an attribute category, wherein each data object index key of the plurality of data object index keys uniquely identifies one of a plurality of data objects stored in the DSN memory in accordance with the attribute category, and wherein the plurality of data objects are stored in a plurality of storage units of the DSN memory as corresponding sets of encoded slices produced by dispersed storage error encoding the plurality of data objects.
20 . A non-transitory computer readable storage medium comprises:
at least one memory section that stores operational instructions that, when executed by a processing system of a dispersed storage network (DSN) that includes a processor and a memory, causes the processing system to:
receive an access request that includes a searchable identifier;
search a dispersed hierarchical index using the searchable identifier to identify a resource group;
issue group access information that includes the access request to an access module associated with the resource group, wherein the access module accesses a DSN memory based on the group access information and updates the dispersed hierarchical index with regards to the resource group;
receive further group access information from the access module; and
issue an access response to a requesting entity based on the further group access information.