Dynamic Cluster Scaling via Core and Auxiliary Node Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing large-scale computer networks and data centers has become increasingly complex due to the need for dynamic scaling of computing resources to handle varying workloads and ensure efficient resource allocation, while maintaining data availability and performance.

Innovation Solution

A Distributed Program Execution (DPE) service that dynamically scales clusters of computing nodes by categorizing them as core and auxiliary nodes, participating in a distributed storage system, and allowing for the addition or removal of nodes based on demand, using a service that separates programs into execution jobs and allocates resources efficiently across multiple nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the number of computing nodes in a cluster is increased to handle larger workloads, then processing capacity and productivity are improved, but system complexity and difficulty of management increase

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

Solution Approach 1:

The patent segments the cluster management into distinct functional components: a management system that handles provisioning and configuration, monitoring systems that track performance metrics, and automated scaling mechanisms that adjust resource allocation. This segmentation allows each component to handle specific aspects of complexity independently, enabling the overall system to scale without proportionally increasing management difficulty.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary management system that acts as a mediator between the computing nodes and the external environment. This management system abstracts the complexity of node provisioning, configuration, and coordination, allowing individual nodes to operate independently while maintaining system-wide coherence through standardized interfaces and protocols.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If computing resources are dynamically allocated to meet varying workload demands, then resource utilization efficiency is improved, but system stability and reliability may deteriorate

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidsystem stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic resource allocation through automated scaling mechanisms that adjust the number and configuration of computing nodes based on real-time workload monitoring. The system maintains stability by using controlled transition protocols that ensure smooth scaling operations, preventing abrupt changes that could disrupt service continuity or data integrity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs feedback mechanisms where monitoring systems continuously track performance metrics such as CPU utilization, memory usage, and request throughput. This feedback is fed back to the management system, which automatically adjusts resource allocation to maintain optimal performance while ensuring system stability through controlled scaling decisions that prevent over-provisioning or under-provisioning.

Inventive Principle:
Principle #23Feedback

3Productivity

If virtualization technologies are used to share physical computing machines among multiple users, then resource sharing efficiency is improved, but security risks and isolation challenges increase

Engineering Contradiction:
Improveresource sharing efficiencyVSAvoidsecurity risks
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The patent segments the virtualized environment into isolated virtual machines, each with its own operating system and application runtime. This segmentation ensures that security breaches or failures in one virtual machine do not propagate to other virtual machines or the host system, maintaining security boundaries while enabling efficient resource sharing through the virtualization layer.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8260840B1Dynamic scaling of a cluster of computing nodes used for distributed execution of a program
Publication Date: 2012.09.04 AMAZON TECH INC
  • US8260840B1 patent drawing
  • US8260840B1 patent drawing
  • US8260840B1 patent drawing

AI summary

Techniques are described for managing distributed execution of programs, including by dynamically scaling a cluster of multiple computing nodes used to perform ongoing distributed execution of a program, such as to increase and/or decrease the quantity of computing nodes in the cluster at various times and for various reasons. An architecture may be used that facilitates the dynamic scaling of a cluster, including by having at least some of the computing nodes act as core nodes that each participate in a distributed storage system for the distributed program execution, and having one or more other computing nodes that act as auxiliary nodes that do not participate in the distributed storage system. If computing nodes are selected to be removed from the cluster during ongoing distributed execution of a program, one or more nodes of the auxiliary computing node type may be selected for the removal.