STORAGE CONTAINER REASSIGNMENT BASED ON DYNAMIC PARAMETERS
A dispersed storage network (DSN) includes a plurality of containers storing dispersed error-encoded data slices, each of the plurality of containers including a plurality of distributed storage units and located at a common logical site. A method for use in such a DSN includes obtaining a container status of a first container. The site controller determines whether the logical container status compares favorably to a status threshold, and in response to an unfavorable comparison, determines a data slice to be migrated from the first container. The method further includes determining, by the site controller, a second container to receive the data slice to be migrated and facilitating migration of the data slice from the first container to the second container.
1 . A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the DSN including a plurality of logical containers that distributedly store encoded data slices (EDSs) using a plurality of storage units (SUs), each logical container including a respective set of storage units (SUs), the plurality of logical containers located at a common logical site, the method comprising:
obtaining a logical container status of a first logical container;
determining whether the logical container status compares favorably to a status threshold;
in response to an unfavorable comparison, determining an EDS of the EDSs to be migrated from the first logical container;
determining a second logical container of the plurality of logical containers to receive the EDS to be migrated; and
facilitating migration of the EDS to be migrated from the first logical container to the second logical container.
2 . The method of claim 1 , wherein:
at least one of the one or more processing modules is configured as a site controller.
3 . The method of claim 2 , wherein each of the plurality of logical containers is associated with a local container controller and a first local container controller is the site controller.
4 . The method of claim 1 , wherein determining the second logical container to receive the data slice to be migrated is based on at least one of a more favorable container loading than the first logical container, a more favorable container performance than the first logical container and a more favorable container environmental indicator than the first logical container.
5 . The method of claim 1 , wherein the obtaining a container status of a first logical container is based on receiving from the first logical container at least one of a query result, a test result, sensor data, a record lookup result and an error message.
6 . The method of claim 1 , wherein determining a data slice to be migrated includes:
determining whether to migrate all, or only some, data slices currently stored in the first logical container, based on the container status.
7 . The method of claim 6 , wherein determining whether to migrate all, or only some, data slices includes:
determining to migrate all data slices stored in the first logical container in response to an unfavorable comparison to a temperature threshold.
8 . A site controller for use in a dispersed storage network (DSN) including a plurality of logical containers that distributedly store encoded data slices (EDSs) using a plurality of storage units (SUs), each logical container including a respective set of SUs:
a processor;
memory coupled to the processor;
a program of instructions configured to be stored in the memory and executed by the processor, the program of instructions including:
at least one instruction to obtain a container status of a first logical container of the plurality of logical containers;
at least one instruction to determine whether the container status compares favorably to a status threshold;
at least one instruction to determine, in response to an unfavorable comparison, a data slice to be migrated from the first logical container;
at least one instruction to determine a second logical container to receive the data slice to be migrated; and
at least one instruction to facilitate migration of the data slice to be migrated from the first logical container to the second logical container.
9 . The site controller of claim 8 , wherein each of the plurality of logical containers is associated with a local container controller and a first local container controller is the site controller.
10 . The site controller of claim 8 , wherein the at least one instruction to determine a second logical container to receive the data slice to be migrated includes:
at least one instruction to select a second logical container having at least one of:
a more favorable container loading than the first logical container;
a more favorable container performance than the first logical container; or
a more favorable container environmental indicator than the first logical container.
11 . The site controller of claim 8 , wherein the container status of a first logical container of the plurality of logical containers includes at least one of a query result, a test result, sensor data, a record lookup result and an error message.
12 . The site controller of claim 8 , wherein the at least one instruction to determine a data slice to be migrated from the first logical container includes:
at least one instruction to determine whether to migrate all, or only some, data slices currently stored in the first container based on the container status.
13 . The site controller of claim 12 , wherein the at least one instruction to determine whether to migrate all, or only some, data slices includes:
at least one instruction to determine to migrate all data slices stored in the first logical container in response to an unfavorable comparison to a temperature threshold.
14 . A dispersed storage network comprising:
a plurality of logical containers storing dispersed error-encoded data slices, each of the plurality of logical containers including a plurality of distributed storage units and located at a common logical site;
a plurality of container controllers, each of the plurality of container controllers coupled to a particular logical container of the plurality of logical containers, at least one of the plurality of container controllers including a processor and associated memory configured to:
obtain a container status of a first logical container;
determine whether the container status compares favorably to a status threshold;
in response to an unfavorable comparison, determine a data slice to be migrated from the first logical container;
determine a second logical container to receive the data slice to be migrated; and
facilitate migration of the data slice to be migrated from the first logical container to the second logical container.
15 . The dispersed storage network of claim 14 , wherein the at least one of the plurality of container controllers is further configured to determine whether the container status compares favorably to a status threshold based on at least one of a loading threshold, a performance threshold, and an environmental indicator threshold.
16 . The dispersed storage network of claim 15 , wherein the at least one of the plurality of container controllers is further configured to:
migrate the data slice to be migrated from a first logical container to a second logical container.
17 . The dispersed storage network of claim 14 , wherein the at least one of the plurality of container controllers is further configured to obtain a container status of the first logical container based on at least one of a query result, a test result, sensor data, a record lookup result and an error message.
18 . The dispersed storage network of claim 14 , wherein the at least one of the plurality of container controllers is further configured to determine whether to migrate all, or only some, data slices currently stored in the first logical container based on the container status.
19 . The dispersed storage network of claim 18 , wherein the at least one of the plurality of container controllers is further configured to determine to migrate all data slices stored in the first logical container in response to an unfavorable comparison to a temperature threshold.