Estimate-Based Scheduler for Distributed Storage Task Distribution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed storage systems face inefficiencies in processing redundant data due to random task distribution methods, leading to resource wastage, higher costs, and poor performance, especially as demand for real-time processing increases.

Innovation Solution

Implementing an estimate-based scheduler that receives processing data for storage nodes with redundant data chunks, determines task time estimates for each data path, and selects optimal paths for compute tasks to meet processing time thresholds, while also splitting tasks if necessary and adjusting estimates based on actual performance feedback.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If random selection method is used to assign compute tasks to storage nodes, then task distribution is simple to implement, but processing efficiency deteriorates due to node failures, latency, and load imbalance

Engineering Contradiction:
Improveease of task distributionVSAvoidprocessing efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The system implements a feedback mechanism where the scheduler receives actual processing time data from completed tasks and uses this information to update estimated processing times for future task assignments. This closed-loop feedback system allows the scheduler to learn from past performance and continuously improve task distribution efficiency, resolving the contradiction between simple random assignment and efficient optimized assignment.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The scheduler performs preliminary actions by pre-calculating estimated processing times for each storage node before assigning compute tasks. This advance preparation allows the system to make informed decisions about task distribution without requiring complex real-time calculations during task assignment, maintaining simplicity while improving efficiency.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If more redundant copies of data chunks are distributed across storage nodes, then system reliability improves, but resource wastage increases

Engineering Contradiction:
Improvesystem reliabilityVSAvoidresource wastage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system dynamically changes the parameter of redundancy level by adjusting the number of replicate tasks assigned to different storage nodes based on their estimated processing times and current load conditions. Instead of maintaining uniform high redundancy across all nodes, the system optimizes redundancy distribution to match actual node performance characteristics, improving reliability where needed while reducing resource wastage where unnecessary.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If compute tasks are distributed across multiple data nodes, then processing parallelism increases, but coordination complexity and communication overhead increase

Engineering Contradiction:
Improveprocessing parallelismVSAvoidcoordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The scheduler acts as an intermediary between the task submission system and the distributed storage nodes. It consolidates task assignment decisions, manages coordination logic, and handles communication overhead centrally, allowing individual storage nodes to execute tasks independently without complex peer-to-peer coordination. This mediator approach enables high parallelism while containing coordination complexity in a single component.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Manufacturing precision

If task processing time threshold is set strictly, then service level requirements are met, but task completion rate decreases due to premature task rejection

Engineering Contradiction:
Improveservice level precisionVSAvoidtask completion rate
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The system applies partial action by selectively enforcing the processing time threshold only for tasks where it is critical to meet service level requirements. For tasks where the threshold would prevent completion without significant benefit, the system allows flexibility, maintaining completion rates while still meeting essential service level agreements through targeted threshold enforcement.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11416166B2Distributed function processing with estimate-based scheduler
Publication Date: 2022.08.16 SANDISK TECHNOLOGIES LLC
  • US11416166B2 patent drawing
  • US11416166B2 patent drawing
  • US11416166B2 patent drawing

AI summary

Systems and methods for distributed storage and processing systems using estimate-based schedulers are described. A node receives estimated processing data for each storage device including redundant copies of data chunks for a data unit. The node determines, based on the estimated processing data and data paths to each data chunk, a task time estimate for data paths to each data chunk and selects data paths for at least one copy of each data chunk to be processed using a corresponding set of compute tasks. The compute tasks are sent for processing based on the assignments of the node.