Dynamic Resource Scheduling for Distributed Data Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing distributed data processing systems face challenges in efficient resource allocation and management, leading to suboptimal utilization of computing resources and increased complexity in implementation and maintenance.

Innovation Solution

Implementing independent resource scheduling for distributed data processing programs, where a management node dynamically allocates and manages computing resources on a just-in-time basis, avoiding static resource assignments and optimizing resource usage based on the specific needs of each task.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If static resource assignments are used for distributed data processing, then resource allocation is simple to implement, but resource utilization is suboptimal and setup time is increased

Engineering Contradiction:
Improveease of implementationVSAvoidresource utilization
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent implements dynamic resource scheduling where resources are allocated based on real-time task requirements rather than static pre-assignment. The system continuously monitors task progress and resource availability, dynamically adjusting resource allocation to optimize utilization while maintaining implementation feasibility through automated scheduling algorithms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The distributed data processing system performs self-service resource allocation where the scheduling framework automatically identifies and assigns resources based on task needs without manual intervention. This self-organizing mechanism reduces setup complexity while improving resource utilization through automated decision-making algorithms that adapt to changing conditions.

Inventive Principle:
Principle #25Self-service

2Ease of manufacture

If static resource assignments are used for distributed data processing, then resource allocation is simple to implement, but setup time is increased

Engineering Contradiction:
Improveease of implementationVSAvoidsetup time
Core Design Contradiction:
Ease of manufactureVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-configuring scheduling policies and resource templates that enable rapid resource allocation when tasks are submitted. While full dynamic allocation occurs at runtime, the advance preparation of scheduling frameworks and resource specifications reduces setup time without requiring complex manual configuration for each new task.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If distributed data processing programs are incorrectly configured, then implementation is simpler, but resource utilization becomes non-optimal

Engineering Contradiction:
Improveease of configurationVSAvoidresource utilization
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent incorporates feedback mechanisms where the scheduling system continuously monitors resource utilization metrics and task performance. This feedback loop enables the system to automatically adjust configurations and identify suboptimal resource allocation patterns, improving utilization without requiring complex manual tuning or configuration by users.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10944814B1Independent resource scheduling for distributed data processing programs
Publication Date: 2021.03.09 AMAZON TECH INC
  • US10944814B1 patent drawing
  • US10944814B1 patent drawing
  • US10944814B1 patent drawing

AI summary

Independent scheduling of resources may be performed for distributed data processing programs. When a request is received that causes the performance of a distributed data processing program, a plan to perform the distributed data processing program may be generated. Different resources may be obtained to perform different portions of the distributed data processing program according to different portions of the generated plan. A result of the request may be provided to a user. In some embodiments, resources obtained for different portions of the distributed data processing program may be returned for use by other programs.