Predictive Autoscaler for Distributed Computing Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing autoscaling techniques in distributed computing systems are reactive and fail to adequately address ongoing load variations, leading to service slowdowns or outages during peak demand and wastage of resources during decreased demand, due to delays in provisioning and de-provisioning computing resources.

Innovation Solution

Implementing a predictive autoscaler that processes historical resource consumption data to generate time series, decompose it into regular and irregular components, and use these to anticipate future resource needs, allowing proactive scaling of computing resources before potential scalability issues occur.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If reactive autoscaling is used to monitor and provision computing resources based on current load, then resource provisioning can be triggered when thresholds are exceeded, but service slowdowns or outages occur during the provisioning delay period when processor usage reaches 100%

Engineering Contradiction:
Improveservice availabilityVSAvoidprovisioning delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by predicting future resource consumption patterns using historical data and time series analysis. The predictive autoscaler analyzes past resource usage trends to forecast future demand before it actually occurs, allowing the system to provision resources in advance rather than waiting for current thresholds to be exceeded. This eliminates the reactive delay where services would slow down or outage during the time between threshold detection and resource provisioning.

Inventive Principle:
Principle #10Preliminary action

2Loss of energy

If computing resources are reduced when processor usage is below threshold to save costs, then resource utilization is optimized, but valuable computing resources are wasted during the termination delay period which can take up to thirty minutes

Engineering Contradiction:
Improveresource wastageVSAvoidtermination delay
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The system performs preliminary actions by predicting future resource consumption patterns using historical data and time series analysis. The predictive autoscaler analyzes past resource usage trends to forecast future demand before it actually occurs, allowing the system to provision resources in advance rather than waiting for current thresholds to be exceeded. This eliminates the reactive delay where services would slow down or outage during the time between threshold detection and resource provisioning.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If additional virtual machines are provisioned to handle peak demand, then service availability is maintained during high load periods, but computing resources are wasted when demand decreases and virtual machines remain idle

Engineering Contradiction:
Improveservice availability during peak demandVSAvoididle computing resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system applies dynamics by continuously adapting resource provisioning based on predicted future demand rather than static threshold-based rules. The predictive autoscaler uses time series analysis to dynamically adjust resource allocation in advance of demand changes, allowing the system to scale up before peak demand arrives and scale down before demand decreases. This dynamic approach maintains service availability during peak periods while minimizing idle resources during low-demand periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system implements feedback by using historical resource consumption data to continuously improve future predictions. The predictive autoscaler analyzes past resource usage patterns, processes this feedback information through time series analysis, and adjusts resource provisioning accordingly. This closed-loop feedback mechanism ensures that the system learns from past behavior and optimizes resource allocation to match actual demand patterns, preventing both over-provisioning and under-provisioning.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10476949B2Predictive autoscaling in computing systems
Publication Date: 2019.11.12 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10476949B2 patent drawing
  • US10476949B2 patent drawing
  • US10476949B2 patent drawing

AI summary

Techniques of predictive autoscaling in distributed computing systems are disclosed herein. In one embodiment, a method includes receiving data representing consumption of a computing resource by an application executing on one or more servers in the distributed computing system. The method also includes processing the received data into a time series having multiple resource consumption values by the application with corresponding time stamps and decomposing the time series into a regular component and an irregular component. The method further includes generating a predicted consumption value of the computing resource by the application at a future time point according to the trend, cyclic pattern, or seasonal pattern of the regular component of the time series and causing immediate adjustment of an amount of the computing resource provisioned in the distributed computing system for the application according to the generated predicted consumption value.