Inducing memory device idle time through rolling read prioritizations
First Claim
1. A computing device comprising:
- an interface configured to interface and communicate with a dispersed or distributed storage network (DSN);
memory that stores operational instructions; and
processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to;
determine to perform maintenance tasks associated with a set of memory devices of a set of storage units (SUs) of a common DSN address range, wherein a data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices (EDSs) that is of pillar width and includes a pillar number of EDSs, wherein the set of EDSs is distributedly stored among the set of SUs, wherein a decode threshold number of EDSs are needed to recover the data segment;
select a first number of memory devices of the set of memory devices to perform the maintenance tasks, wherein the first number is less than or equal to a difference between the pillar number and the decode threshold number;
initiate performance of the maintenance tasks for the first number of memory devices of the set of memory devices;
while performing the maintenance tasks, facilitate inhibiting storage of other EDSs in the set of memory devices;
while performing the maintenance tasks, temporarily access a second number of memory devices of the set of memory devices when receiving a read data request associated with the common DSN address range, wherein the second number includes at least the decode threshold number of memory devices of the set of memory devices and excludes the first number of memory devices of the set of memory devices; and
based on detection of completion of the maintenance tasks, select a third number of memory devices of the set of memory devices to perform additional maintenance tasks, wherein the third number is also less than or equal to the difference between the pillar number and the decode threshold number, and wherein the third number of memory devices of the set of memory devices includes at least one memory device not included within the first number of memory devices of the set of memory devices.
4 Assignments
0 Petitions
Accused Products
Abstract
A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry operably coupled to the interface and to the memory. The computing device determines to perform maintenance tasks associated with a set of memory devices of a set of storage units (SUs) of a common DSN address range. The computing device ensures that a selected number of memory devices on which the maintenance tasks are performed is less than or equal to a difference between a pillar number and a decode threshold number of dispersed error encoding parameters by which a data object is encoded and stored in the DSN. While performing the maintenance tasks, the computing device facilitates inhibiting storage of other EDSs in the set of memory devices and/or temporarily accesses at least the decode threshold number of memory devices.
-
Citations
20 Claims
-
1. A computing device comprising:
-
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN); memory that stores operational instructions; and processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to; determine to perform maintenance tasks associated with a set of memory devices of a set of storage units (SUs) of a common DSN address range, wherein a data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices (EDSs) that is of pillar width and includes a pillar number of EDSs, wherein the set of EDSs is distributedly stored among the set of SUs, wherein a decode threshold number of EDSs are needed to recover the data segment; select a first number of memory devices of the set of memory devices to perform the maintenance tasks, wherein the first number is less than or equal to a difference between the pillar number and the decode threshold number; initiate performance of the maintenance tasks for the first number of memory devices of the set of memory devices; while performing the maintenance tasks, facilitate inhibiting storage of other EDSs in the set of memory devices; while performing the maintenance tasks, temporarily access a second number of memory devices of the set of memory devices when receiving a read data request associated with the common DSN address range, wherein the second number includes at least the decode threshold number of memory devices of the set of memory devices and excludes the first number of memory devices of the set of memory devices; and based on detection of completion of the maintenance tasks, select a third number of memory devices of the set of memory devices to perform additional maintenance tasks, wherein the third number is also less than or equal to the difference between the pillar number and the decode threshold number, and wherein the third number of memory devices of the set of memory devices includes at least one memory device not included within the first number of memory devices of the set of memory devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computing device comprising:
-
an interface configured to interface and communicate with a dispersed or distributed storage network (DSN); memory that stores operational instructions; and processing circuitry operably coupled to the interface and to the memory, wherein the processing circuitry is configured to execute the operational instructions to; determine to perform maintenance tasks associated with a set of memory devices of a set of storage units (SUs) of a common DSN address range, wherein a data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices (EDSs) that is of pillar width and includes a pillar number of EDSs, wherein the set of EDSs is distributedly stored among the set of SUs, wherein a decode threshold number of EDSs are needed to recover the data segment, wherein a read threshold number of EDSs provides for reconstruction of the data segment, wherein a write threshold number of EDSs provides for a successful transfer of the set of EDSs from a first at least one location in the DSN to a second at least one location in the DSN, wherein each of the decode threshold number, the read threshold number, and the write threshold number is less than the pillar number, and wherein the write threshold number is greater than or equal to the read threshold number that is greater than or equal to the decode threshold number; select a first number of memory devices of the set of memory devices to perform the maintenance tasks based on at least one of a next set of memory devices of a list of memory devices for maintenance, a random selection, a round Robin selection, interpretation of an error message, interpretation of schedule, or interpretation of a request, wherein the first number is less than or equal to a difference between the pillar number and the decode threshold number; initiate performance of the maintenance tasks for the first number of memory devices of the set of memory devices; while performing the maintenance tasks, facilitate inhibiting storage of other EDSs in the set of memory devices; while performing the maintenance tasks, temporarily access a second number of memory devices of the set of memory devices when receiving a read data request associated with the common DSN address range, wherein the second number includes at least the decode threshold number of memory devices of the set of memory devices and excludes the first number of memory devices of the set of memory devices; and based on detection of completion of the maintenance tasks, select a third number of memory devices of the set of memory devices to perform additional maintenance tasks, wherein the third number is also less than or equal to the difference between the pillar number and the decode threshold number, and wherein the third number of memory devices of the set of memory devices includes at least one memory device not included within the first number of memory devices of the set of memory devices. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for execution by a computing device, the method comprising:
-
determining to perform maintenance tasks associated with a set of memory devices of a set of storage units (SUs) of a common dispersed or distributed storage network (DSN) address range, wherein a data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices (EDSs) that is of pillar width and includes a pillar number of EDSs, wherein the set of EDSs is distributedly stored among the set of SUs, wherein a decode threshold number of EDSs are needed to recover the data segment; selecting, via an interface of the computing device that is configured to interface and communicate with a DSN, a first number of memory devices of the set of memory devices to perform the maintenance tasks, wherein the first number is less than or equal to a difference between the pillar number and the decode threshold number; initiating performance of the maintenance tasks for the first number of memory devices of the set of memory devices; while performing the maintenance tasks, facilitating, via the interface, inhibiting storage of other EDSs in the set of memory devices; while performing the maintenance tasks, temporarily accessing, via the interface, a second number of memory devices of the set of memory devices when receiving a read data request associated with the common DSN address range, wherein the second number includes at least the decode threshold number of memory devices of the set of memory devices and excludes the first number of memory devices of the set of memory devices; and based on detection of completion of the maintenance tasks, selecting, via the interface, a third number of memory devices of the set of memory devices to perform additional maintenance tasks, wherein the third number is also less than or equal to the difference between the pillar number and the decode threshold number, and wherein the third number of memory devices of the set of memory devices includes at least one memory device not included within the first number of memory devices of the set of memory devices. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification