Storage Network Task Assignment for Underutilized Resource Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems face challenges in efficiently managing data storage and retrieval across geographically diverse storage units in a distributed network, particularly in ensuring data integrity and availability in the face of failures, while also supporting complex computational tasks.
Innovation Solution
A distributed storage network (DSN) system that employs dispersed error encoding and decoding, along with distributed task processing, to store and manage data across multiple geographically diverse storage units, ensuring data integrity and availability through error correction and task distribution across multiple units.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is stored across multiple geographically diverse storage units in a distributed network, then data availability and fault tolerance are improved, but system complexity and coordination overhead increase
Solution Approach 1:
The patent segments data into multiple data slices and distributes them across geographically diverse storage units. Each storage unit stores only a portion of the data, which improves fault tolerance and availability while reducing the complexity burden on any single node. The segmentation principle allows the system to achieve high reliability without requiring every node to handle the entire data set.
Solution Approach 2:
The patent introduces a coordinating entity that acts as an intermediary to manage task assignment and data retrieval operations across the distributed storage network. This intermediary handles the complexity of coordination, task prioritization, and resource allocation centrally, while the individual storage units remain relatively simple. The intermediary resolves the contradiction by centralizing complex management functions while maintaining distributed data storage benefits.
2Reliability
If error correction encoding is applied to ensure data integrity, then data reliability is improved, but processing time and computational resources increase
Solution Approach 1:
The patent applies error correction encoding to data slices before distribution to storage units. This preliminary encoding ensures that data integrity can be verified and restored without requiring complex real-time checking during retrieval operations. The error correction codes are pre-computed and attached to each data slice, allowing for efficient verification and reconstruction while minimizing processing time during data access.
3Productivity
If tasks are distributed across multiple storage units for parallel processing, then productivity is improved, but coordination overhead and communication costs increase
Solution Approach 1:
The patent assigns different task priorities and processing requirements to different storage units based on their local characteristics such as geographic location, current load, and capability. High-priority time-sensitive tasks are assigned to storage units with lower latency, while less critical tasks are distributed to other units. This local quality approach optimizes processing throughput while reducing unnecessary communication overhead by matching tasks to appropriate local resources.
4Reliability
If redundant copies of data are stored for fault tolerance, then reliability is improved, but storage capacity requirements increase
Solution Approach 1:
The patent creates multiple copies of encoded data slices and distributes them across different storage units. Rather than storing full redundant copies of the entire data set, the system stores distributed fragments that collectively provide fault tolerance. This copying approach achieves reliability through distribution rather than replication, reducing the total storage capacity requirement compared to traditional redundant copying methods.
Data Source
AI summary
A storage network is operable to obtain resource utilization information for a plurality of storage units of the storage network. The plurality of storage units are grouped, based the resource utilization information, into an underutilized resource group and an overutilized resource group. A first subset of a plurality of tasks is assigned to one or more storage units of the underutilized resource group. A first set of requests, corresponding to the first subset of the plurality of tasks, are issued to the one or more storage units of the underutilized resource group for execution. A remaining subset of the plurality of tasks are assigned to one or more storage units of the overutilized resource group. A second set of requests, corresponding to the remaining subset of the plurality of tasks, are issued to the one or more storage units of the overutilized resource group for execution.


