Predictive Container Resource Allocation via Machine Learning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current dynamic resource allocation in cloud computing environments is inefficient due to the variability in resource demands of service applications, leading to over-allocation and under-allocation, which affects quality of service (QoS) and user satisfaction.

Innovation Solution

Implementing a predictive dynamic resource allocation system using machine learning algorithms, such as modified Random Forest Regression, to forecast future resource requirements based on historical data and quasi-periodic patterns, allowing for proactive adjustment of container instances and resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If traditional reactive resource allocation is used, then system simplicity is maintained, but resource utilization efficiency deteriorates due to over-allocation and under-allocation

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidsystem complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The system performs preliminary resource allocation by predicting future resource requirements of container instances before they are actually needed. The prediction engine analyzes historical workload data and service characteristics to forecast resource demands, allowing the system to proactively allocate resources in advance rather than reactively responding to resource requests, thereby improving resource utilization efficiency while maintaining manageable system complexity through automated prediction algorithms

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If static resource allocation is used, then allocation stability is maintained, but adaptability to fluctuating service volume deteriorates

Engineering Contradiction:
Improveadaptability to service volume changesVSAvoidquality of service stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system implements dynamic resource allocation where resource allocation parameters are continuously adjusted based on predicted service volume and workload characteristics. The prediction engine dynamically adapts allocation decisions to changing service conditions while maintaining quality of service through controlled adjustment rates and validation mechanisms that prevent excessive fluctuations, thereby achieving both adaptability and stability

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system incorporates feedback mechanisms where actual resource usage and service performance metrics are continuously monitored and fed back to the prediction engine. This feedback loop allows the system to learn from past allocation decisions and their outcomes, refining prediction accuracy and adjusting allocation strategies to maintain quality of service while adapting to service volume changes

Inventive Principle:
Principle #23Feedback

3Speed

If minimal historical data is used for prediction, then prediction responsiveness improves, but prediction accuracy deteriorates due to increased variability

Engineering Contradiction:
Improveprediction responsivenessVSAvoidprediction accuracy
Core Design Contradiction:
SpeedVSMeasurement precision

Solution Approach 1:

The prediction engine dynamically adjusts prediction parameters such as the time window for historical data analysis and the weight given to different workload characteristics based on service type and observed patterns. For services with predictable quasi-periodic patterns, the system uses shorter prediction windows for faster responsiveness, while for services with high variability, it extends the analysis window and applies smoothing techniques to maintain accuracy, thereby balancing responsiveness and accuracy through adaptive parameter selection

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentEP3516516B1Dynamic resource allocation for application containers
Publication Date: 2022.05.11 ACCENTURE GLOBAL SOLUTIONS LTD
  • EP3516516B1 patent drawingFigure 1
  • EP3516516B1 patent drawingFigure 2
  • EP3516516B1 patent drawingFigure 3

AI summary

Cloud service based on container technology provides a lightweight, portable, but robust architecture for deploying service applications. Service volume and resource requirement for a typical modern-day application may fluctuate dramatically in time. A dynamic resource allocation scheme based on machine learning algorithms and executed by the cloud for applications deployed as independent containers allows for efficient resource usage and improvement of quality of service for the applications.