Predictive Auto Scaling Engine for Cloud Workload Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud computing environments face challenges in efficiently scaling application instances to match fluctuating workloads, leading to inefficiencies, delays, and potential system failures due to reactive scaling methods that are slow to adapt to dynamic changes in workload demands.

Innovation Solution

Implement a predictive scaling method that monitors historical performance and workload data to identify scaling patterns, allowing for proactive adjustment of application instances based on anticipated future workload, ensuring efficient resource allocation and minimizing downtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If reactive scaling is used to adjust application instances based on current workload, then the system can respond to workload changes, but the scaling process is too slow due to application start-up time, causing performance degradation and potential system failure

Engineering Contradiction:
Improvesystem stabilityVSAvoidscaling response time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by proactively scaling out application instances before the workload peak actually occurs. The system monitors workload patterns and triggers scaling operations in advance, allowing applications to initialize and become ready before the increased workload arrives, thus avoiding performance degradation during scaling.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies preliminary anti-action by taking countermeasures before the harmful effect (workload overload) occurs. The system predicts upcoming workload increases and preemptively adds capacity, counteracting the potential performance degradation before it can manifest.

Inventive Principle:
Principle #9Preliminary anti-action

2Reliability

If the number of application instances is increased to handle peak workload, then the system can accommodate maximum demand, but resources are inefficiently utilized during non-peak periods with idle instances

Engineering Contradiction:
Improveworkload accommodation capacityVSAvoidresource utilization efficiency
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies dynamics by making the application instance configuration dynamic rather than static. The system continuously monitors workload patterns and adjusts the number of running instances in real-time, scaling out during peak periods and scaling in during non-peak periods, thus optimizing resource utilization while maintaining adequate capacity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent applies feedback by continuously monitoring workload metrics and using this information to adjust the number of application instances. The system measures actual workload conditions and feeds this information back to the scaling logic, which then adjusts capacity accordingly, creating a closed-loop control system that optimizes resource usage.

Inventive Principle:
Principle #23Feedback

3Loss of time

If application instances are scaled out proactively in advance of workload peaks, then scaling response time is improved, but the risk of over-provisioning increases if workload patterns change

Engineering Contradiction:
Improvescaling lead timeVSAvoidnumber of application instances
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent applies feedback by continuously monitoring both workload patterns and the effectiveness of scaling decisions. The system uses this feedback to refine its predictions and adjust scaling timing, ensuring that instances are added in advance of actual workload increases without significantly over-provisioning, thus balancing lead time with resource efficiency.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP2863306B1Predictive auto scaling engine
Publication Date: 2021.05.12 NETFLIX INC
  • EP2863306B1 patent drawingFigure 1
  • EP2863306B1 patent drawingFigure 2
  • EP2863306B1 patent drawingFigure 3

AI summary

Techniques for predictively scaling a distributed application are described. Embodiments could monitor performance of an application within a cloud computing environment over a first window of time to collect historical performance data. Here, the application comprises a plurality of application instances. A workload of the application could be monitored over a second window of time to collect historical workload data. Embodiments could analyze both the historical performance data and the historical workload data to determine one or more scaling patterns for the application. Upon determining a present state of the application matches one of the one or more scaling patterns, a plan for predictively scaling the application could be determined. Embodiments could then predictively scale the plurality of application instances, based on the determined plan.