Dynamic Rebalancing for Pure-Spot Auto-Scaling Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Big Data cloud services face challenges in efficiently utilizing Spot Instances due to their unpredictable availability, high termination risk, and potential for data corruption, which complicates workload management and increases costs.

Innovation Solution

Implementing a dynamic rebalancing method that uses a mix of stable and volatile Spot Instances, where stable nodes are created with high bid prices and volatile nodes with low bid prices, with a pre-established ratio, allowing for swapping of nodes to maintain cluster stability and availability, and automatically falling back to On-Demand instances when necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If Spot Instances are used to reduce costs, then cost savings are achieved, but instance availability and stability deteriorate due to unpredictable termination

Engineering Contradiction:
ImprovecostVSAvoidinstance availability
Core Design Contradiction:
Loss of energyVSReliability

Solution Approach 1:

The Hadoop cluster is segmented into two distinct node types: stable nodes (master and scheduler) and volatile nodes (slave workers). This segmentation allows critical control functions to run on reliable infrastructure while computation-intensive tasks run on cost-effective Spot Instances, resolving the contradiction between cost savings and system stability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different quality levels are applied to different parts of the system. Stable nodes use high-reliability On-Demand instances for control plane functions, while volatile nodes use low-cost Spot Instances for data plane computations. This local differentiation optimizes both cost and reliability where needed.

Inventive Principle:
Principle #3Local quality

2Reliability

If higher bid prices are used for Spot Instances to reduce termination risk, then instance stability improves, but cost savings deteriorate

Engineering Contradiction:
Improveinstance stabilityVSAvoidcost
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system segments bidding strategies by node type: stable nodes use aggressive bidding (or On-Demand) for stability, while volatile nodes use economical bidding for cost efficiency. This segmented approach allows the system to achieve adequate stability without paying premium prices across the entire cluster.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Volatile nodes are designed as disposable, low-cost Spot Instances that can be terminated and replaced easily. This approach accepts their transient nature and focuses on rapid replacement rather than expensive stabilization, achieving cost savings while maintaining operational reliability through orchestration.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

3Loss of energy

If Spot Instances are used for slave nodes, then cost efficiency improves, but data corruption risk increases due to unexpected terminations

Engineering Contradiction:
Improvecost efficiencyVSAvoiddata corruption risk
Core Design Contradiction:
Loss of energyVSObject-affected harmful factors

Solution Approach 1:

The system implements preemptive protective measures: checkpoints, data replication, and task acknowledgment mechanisms are in place before potential Spot Instance terminations occur. This cushioning approach ensures data integrity even when volatile nodes are unexpectedly terminated, allowing cost-effective Spot usage without compromising data safety.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Solution Approach 2:

The system employs feedback mechanisms where slave nodes acknowledge task completion and master nodes monitor cluster health continuously. This real-time feedback enables rapid detection and recovery from Spot Instance terminations, preventing data corruption by ensuring tasks are properly committed before node failure.

Inventive Principle:
Principle #23Feedback

4Reliability

If a mix of stable and volatile nodes is used, then overall system reliability improves, but system complexity increases

Engineering Contradiction:
Improvesystem availabilityVSAvoidcluster management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The cluster orchestration system automatically manages the complexity of mixed node types through self-service mechanisms: automatic node provisioning, health monitoring, failure detection, and dynamic rebalancing. This automation hides the underlying complexity from users while maintaining high system reliability through continuous adaptive management.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11436667B2Pure-spot and dynamically rebalanced auto-scaling clusters
Publication Date: 2022.09.06 QUBOLE INC
  • US11436667B2 patent drawing

AI summary

The present invention is generally directed to systems and methods of providing automatic scaling pure-spot clusters. Such dusters may be dynamically rebalanced for further costs savings. In accordance with some methods of the present invention may include a method of utilizing a cluster in a big data cloud computing environment where instances may include reserved on-demand instances for a set price and on-demand spot instances that may be bid on by a user, the method including: creating one or more stable nodes, comprising spot instances with a bid price above a price for an equivalent on-demand instance; creating one or more volatile nodes, comprising spot instances with a bid price below a price for an equivalent on-demand instance; using one or more of the stable nodes as a master node; and using the volatile nodes as slave nodes.