Job Scheduler for Cluster Node Availability Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional data warehousing methods are insufficient to handle increased query loads and storage requirements in large internet-based enterprises, leading to instability and inefficiency in cluster node resource allocation.

Innovation Solution

A scheduler system that allocates jobs to cluster nodes based on availability data, using metric and threshold data to determine resource capacity and prevent overloading, thereby reducing cluster node failures and improving scalability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional data warehousing methods are used to handle increased query loads and storage requirements, then the system can maintain basic operational capacity, but the cluster nodes become overloaded and unstable

Engineering Contradiction:
Improvequery load handling capacityVSAvoidcluster node stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic job allocation by continuously monitoring cluster node availability metrics and adjusting job assignments in real-time. The scheduler system dynamically adapts to changing node capacities and workload conditions, preventing overload and maintaining stability while handling increased query loads.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters by introducing availability metrics and thresholds that dynamically control job allocation. By monitoring and adjusting parameters such as node capacity, job priority, and allocation thresholds, the system optimizes both productivity and reliability under varying load conditions.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If more jobs are allocated to cluster nodes to increase processing capacity, then productivity improves, but resource overloading occurs leading to node failures

Engineering Contradiction:
Improvejob processing capacityVSAvoidresource overloading
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent implements a feedback mechanism where the scheduler system continuously monitors cluster node availability metrics and uses this information to adjust job allocation decisions. This closed-loop control prevents resource overloading by allocating jobs only to nodes that have sufficient available capacity, thereby maintaining productivity while avoiding harmful overload conditions.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary assessment of cluster node availability before allocating jobs. By evaluating node capacity and availability metrics in advance, the scheduler prevents overloading by ensuring that jobs are only assigned to nodes that can handle the additional workload, thus avoiding resource exhaustion and node failures.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If cluster nodes are continuously utilized to maximize resource usage, then efficiency improves, but node failures increase due to lack of recovery time

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidnode availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements periodic monitoring and evaluation of cluster node availability metrics. The scheduler system periodically assesses node status and adjusts job allocation accordingly, allowing nodes to have periods of lower utilization for recovery and maintenance while maintaining high overall efficiency through optimized scheduling during available periods.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS9870269B1Job allocation in a clustered environment
Publication Date: 2018.01.16 AMAZON TECH INC
  • US9870269B1 patent drawing
  • US9870269B1 patent drawing
  • US9870269B1 patent drawing

AI summary

Described herein are systems, devices, and methods for using a job scheduler that allocates jobs to cluster nodes in a data warehouse. The cluster nodes in the data warehouse may generate information about the availability to execute new jobs. The job scheduler may use the information about the availability to determine which cluster node to allocate a particular job based on current information or a prediction of availability. As a result the data warehouse becomes more stable.