Redundant Task Execution in a Distributed Storage and Task Network
First Claim
1. A method for execution by a computer to manage distributed computing of a task, the method comprises:
- determining data block storage redundancy among a set of distributed storage and task (DST) execution units based on processing latency information of the set of DST execution units;
dispersed storage error encoding, in accordance with the data block storage redundancy, a data segment of data to produce a set of encoded data slices, wherein a first encoded data slice of the set of encoded data slices includes at least one redundant encoded data block in common with a second encoded data slice of the set of encoded data slices;
assigning a first partial task and a first encoded block processing order to a first DST execution unit of the set of DST execution units regarding processing the first encoded data slice; and
assigning a second partial task and a second encoded block processing order to a second DST execution unit of the set of DST execution units regarding processing the second encoded data slice, wherein the first encoded block processing order causes the first DST execution unit to execute the first partial task on the at least one redundant encoded data block when processing latency of the second DST execution unit is unfavorable to processing latency of the first DST execution unit and wherein the second encoded block processing order causes the second DST execution unit to execute the second partial task on the at least one redundant encoded data block when the processing latency of the first DST execution unit is unfavorable to the processing latency of the second DST execution unit.
4 Assignments
0 Petitions
Accused Products
Abstract
A method begins by a dispersed storage (DS) processing module determining data block storage redundancy among a set of distributed storage and task (DST) execution units. The method continues with the DS processing module dispersed storage error encoding a data segment of data to produce a set of encoded data slices, where a first encoded data slice of the set of encoded data slices includes at least one redundant encoded data block in common with a second encoded data slice of the set of encoded data slices. The method continues with the DS processing module assigning a first partial task and a first encoded block processing order to a first DST execution unit regarding processing the first encoded data slice and assigning a second partial task and a second encoded block processing order to a second DST execution unit regarding processing the second encoded data slice.
73 Citations
20 Claims
-
1. A method for execution by a computer to manage distributed computing of a task, the method comprises:
-
determining data block storage redundancy among a set of distributed storage and task (DST) execution units based on processing latency information of the set of DST execution units; dispersed storage error encoding, in accordance with the data block storage redundancy, a data segment of data to produce a set of encoded data slices, wherein a first encoded data slice of the set of encoded data slices includes at least one redundant encoded data block in common with a second encoded data slice of the set of encoded data slices; assigning a first partial task and a first encoded block processing order to a first DST execution unit of the set of DST execution units regarding processing the first encoded data slice; and assigning a second partial task and a second encoded block processing order to a second DST execution unit of the set of DST execution units regarding processing the second encoded data slice, wherein the first encoded block processing order causes the first DST execution unit to execute the first partial task on the at least one redundant encoded data block when processing latency of the second DST execution unit is unfavorable to processing latency of the first DST execution unit and wherein the second encoded block processing order causes the second DST execution unit to execute the second partial task on the at least one redundant encoded data block when the processing latency of the first DST execution unit is unfavorable to the processing latency of the second DST execution unit. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for execution by a distributed storage and task (DST) execution unit, the method comprises:
-
receiving an assigned partial task and an encoded block processing order regarding processing an encoded data slice, wherein a data segment of data is dispersed storage error encoded in accordance with a data block storage redundancy policy to produce a set of encoded data slices, wherein the encoded data slice includes at least one redundant encoded data block in common with another encoded data slice of the set of encoded data slices; commencing execution of the assigned partial task on encoded data blocks of the encoded data slice in accordance with the encoded block processing order; executing the assigned partial task on the at least one redundant encoded data block when latency of processing the other encoded data slice is unfavorable to latency of processing the encoded data slice; and skipping execution of the assigned partial task on the at least one redundant encoded data block when the latency of processing the other encoded data slice is favorable to the latency of processing the encoded data slice. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A dispersed storage (DS) module of a computing device to manage distributed computing of a task, the DS module comprises:
-
a first module, when operable within the computing device, causes the computing device to; determine data block storage redundancy among a set of distributed storage and task (DST) execution units based on processing latency information of the set of DST execution units; a second module, when operable within the computing device, causes the computing device to; dispersed storage error encode, in accordance with the data block storage redundancy, a data segment of data to produce a set of encoded data slices, wherein a first encoded data slice of the set of encoded data slices includes at least one redundant encoded data block in common with a second encoded data slice of the set of encoded data slices; and a third module, when operable within the computing device, causes the computing device to; assign a first partial task and a first encoded block processing order to a first DST execution unit of the set of DST execution units regarding processing the first encoded data slice; and assign a second partial task and a second encoded block processing order to a second DST execution unit of the set of DST execution units regarding processing the second encoded data slice, wherein the first encoded block processing order causes the first DST execution unit to execute the first partial task on the at least one redundant encoded data block when processing latency of the second DST execution unit is unfavorable to processing latency of the first DST execution unit and wherein the second encoded block processing order causes the second DST execution unit to execute the second partial task on the at least one redundant encoded data block when the processing latency of the first DST execution unit is unfavorable to the processing latency of the second DST execution unit. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A dispersed storage (DS) module of a distributed storage and task (DST) execution unit, the DS module comprises:
-
a first module, when operable within a computing device, causes the computing device to; receive an assigned partial task and an encoded block processing order regarding processing an encoded data slice, wherein a data segment of data is dispersed storage error encoded in accordance with a data block storage redundancy policy to produce a set of encoded data slices, wherein the encoded data slice includes at least one redundant encoded data block in common with another encoded data slice of the set of encoded data slices; and a second module, when operable within the computing device, causes the computing device to; commence execution of the assigned partial task on encoded data blocks of the encoded data slice in accordance with the encoded block processing order; execute the partial task on the at least one redundant encoded data block when latency of processing the other encoded data slice is unfavorable to latency of processing the encoded data slice; and skip execution of the partial task on the at least one redundant encoded data block when the latency of processing the other encoded data slice is favorable to the latency of processing the encoded data slice. - View Dependent Claims (17, 18, 19, 20)
-
Specification