Rebalancing data storage in a dispersed storage network
First Claim
Patent Images
1. A method for execution by a dispersed storage and task (DST) execution unit that includes a processor, the method comprises:
- determining a plurality of location weights assigned to a plurality of memory devices of the DST execution unit;
generating a ranked plurality of scores by performing a deterministic function on an identifier of a data slice and on the plurality of location weights;
selecting a first one of the plurality of memory devices in response to determining the data slice is stored in the first one of the plurality of memory devices;
selecting a second one of the plurality of memory devices in response to determining a highest ranked one of the ranked plurality of scores corresponds to the second one of the plurality of memory devices;
removing the data slice from the first one of the plurality of memory devices; and
storing the data slice in the second one of the plurality of memory devices.
4 Assignments
0 Petitions
Accused Products
Abstract
A method for execution by a dispersed storage and task (DST) execution unit includes generating location weight data that includes a plurality of location weights assigned to a plurality of memory devices of the DST execution unit. A first one of the plurality of memory devices and a second one of the plurality of memory devices are selected for reallocation based on the location weight data. The reallocation is executed by removing a data slice from the first one of the plurality of memory devices and storing the data slice in the second one of the plurality of memory devices.
90 Citations
20 Claims
-
1. A method for execution by a dispersed storage and task (DST) execution unit that includes a processor, the method comprises:
-
determining a plurality of location weights assigned to a plurality of memory devices of the DST execution unit; generating a ranked plurality of scores by performing a deterministic function on an identifier of a data slice and on the plurality of location weights; selecting a first one of the plurality of memory devices in response to determining the data slice is stored in the first one of the plurality of memory devices; selecting a second one of the plurality of memory devices in response to determining a highest ranked one of the ranked plurality of scores corresponds to the second one of the plurality of memory devices; removing the data slice from the first one of the plurality of memory devices; and storing the data slice in the second one of the plurality of memory devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A processing system of a dispersed storage and task (DST) execution unit 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; determine a plurality of location weights assigned to a plurality of memory devices of the DST execution unit; generate a ranked plurality of scores by performing a deterministic function on an identifier of a data slice and on the plurality of location weights; selecting a first one of the plurality of memory devices in response to determining the data slice is stored in the first one of the plurality of memory devices; selecting a second one of the plurality of memory devices in response to determining a highest ranked one of the ranked plurality of scores corresponds to the second one of the plurality of memory devices; remove the data slice from the first one of the plurality of memory devices; and store the data slice in the second one of the plurality of memory devices. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
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; determine a plurality of location weights assigned to a plurality of memory devices; generate a ranked plurality of scores by performing a deterministic function on an identifier of a data slice and on the plurality of location weights; selecting a first one of the plurality of memory devices in response to determining the data slice is stored in the first one of the plurality of memory devices; selecting a second one of the plurality of memory devices in response to determining a highest ranked one of the ranked plurality of scores corresponds to the second one of the plurality of memory devices; remove the data slice from the first one of the plurality of memory devices; and store the data slice in the second one of the plurality of memory devices.
Specification