Task Packing Scheduling for Cloud Cluster Resource Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Uniform resource allocation strategies in cloud-based big-data processing lead to difficulties in downscaling clusters due to long-running tasks and state left on servers, resulting in increased costs and inefficient resource utilization, as servers cannot be deprovisioned even when workload can be handled by fewer nodes.

Innovation Solution

Implementing a 'Task Packing' or 'Container Packing' scheduling algorithm that categorizes servers into high, medium, and low usage categories, prioritizing task scheduling on medium and low usage servers before high usage ones, allowing for more efficient downscaling and cluster utilization while preserving data locality preferences.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If uniform resource allocation is used to distribute tasks evenly across all servers, then reliability is improved and server utilization is maximized, but the ability to downscale the cluster is reduced and costs increase

Engineering Contradiction:
Improvesystem reliabilityVSAvoidcluster resource waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments servers into different categories (first set with long-running tasks, second set with short-running tasks) and applies different scheduling strategies to each segment. This allows the system to maintain reliability for long-running tasks while enabling downscaling of servers running only short-running tasks, thus resolving the contradiction between reliability and resource waste.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different quality characteristics to different parts of the system by treating long-running task servers differently from short-running task servers. Servers in the first set are protected from deprovisioning to ensure reliability, while servers in the second set can be downscaled to reduce waste, implementing local quality differentiation.

Inventive Principle:
Principle #3Local quality

2Productivity

If tasks are evenly distributed across all available servers, then productivity is improved through parallel processing, but the complexity of managing task distribution and state tracking increases

Engineering Contradiction:
Improvetask processing throughputVSAvoidscheduling system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the server pool into distinct segments (first set and second set) with different scheduling rules. This segmentation simplifies the scheduling logic by applying different strategies to different segments rather than managing all servers uniformly, reducing the complexity of tracking task states across heterogeneous server groups while maintaining high productivity through parallel processing.

Inventive Principle:
Principle #1Segmentation

3Reliability

If servers are kept available to handle long-running tasks, then reliability is maintained, but hardware costs increase due to inability to deprovision servers

Engineering Contradiction:
Improveapplication continuityVSAvoidhardware resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments servers into those running long-running tasks (first set) and those running short-running tasks (second set). Servers in the first set are maintained to ensure reliability and application continuity, while servers in the second set can be deprovisioned to reduce hardware resources, thus resolving the contradiction between reliability and hardware quantity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent enables discarding of servers from the second set that are running only short-running tasks, allowing the system to recover hardware resources by deprovisioning these servers while maintaining reliability through the first set of servers that handle long-running tasks.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10733024B2Task packing scheduling process for long running applications
Publication Date: 2020.08.04 QUBOLE INC

AI summary

In general, the invention is directed to systems and methods of distributing tasks amongst servers or nodes in a cluster in a cloud-based big data environment, including: establishing a high_server_threshold; dividing active servers/nodes into at least three (3) categories of high usage servers, comprising servers on which usage is greater than the high_server_threshold; medium usage servers, comprising servers on which usage is less than the high_server_threshold, but is greater than zero; and low usage servers, comprising servers that are currently not utilized; receiving one or more tasks to be performed; scheduling the tasks by: first requesting that medium usage servers take tasks; if tasks remain that are not scheduled on the medium usage servers, schedule remaining tasks on low usage servers; if any tasks remain that are not scheduled on medium usage servers or low usage servers, scheduling remaining tasks on high usage servers.