Resource Pool Adaptation via Workload Prediction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current technologies face challenges in timely and efficient adaptation of resource units in shared computer environments, leading to suboptimal performance due to inadequate or excessive resource provisioning, especially when handling dynamic and unpredictable workload changes.
Innovation Solution
A method and system that utilizes a resource controller node to predict future workload demands by retrieving configuration and key performance indicators, calculating capacity differences, and translating them into resource unit adjustments, enabling automatic and proactive adaptation of resource pools to match actual and predicted workloads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If resources are provisioned based on current workload in shared computer environments, then resource allocation is simple and responsive to immediate demands, but the system cannot anticipate future workload changes leading to performance degradation or over-provisioning
Solution Approach 1:
The system performs preliminary actions by predicting future workload demands before they occur. The prediction unit analyzes current and historical workload metrics to forecast future resource needs, allowing the system to provision resources in advance rather than reactively. This resolves the contradiction by enabling adaptability to future changes while maintaining manageable complexity through automated prediction algorithms.
Solution Approach 2:
The system implements continuous feedback loops where workload metrics are monitored, predictions are made, resource allocations are adjusted, and the results are fed back into the prediction model. This feedback mechanism enables the system to learn from past performance and improve future predictions, achieving adaptability while keeping the management system organized and controllable.
2Reliability
If more resources are allocated to handle peak workloads, then service performance is maintained during high demand, but costs increase due to underutilized resources during low demand periods
Solution Approach 1:
The system dynamically adjusts resource allocation based on predicted workload demands rather than maintaining static over-provisioning. Resource units are allocated flexibly according to forecasted needs, ensuring sufficient capacity during peak periods while reducing allocations during low-demand periods. This dynamic approach maintains service reliability when needed while minimizing waste of computing resources.
Solution Approach 2:
The system changes resource allocation parameters based on predicted workload levels. By adjusting the number and capacity of resource units according to forecasted demand, the system optimizes the balance between maintaining service performance and minimizing resource waste. Parameters such as CPU capacity, memory allocation, and bandwidth are dynamically modified to match predicted needs.
3Productivity
If resource allocation is manually managed to optimize costs, then control over resource usage is improved, but the system cannot respond timely to rapid and unexpected workload changes
Solution Approach 1:
The system performs self-service by automatically predicting workload demands and adjusting resource allocations without manual intervention. The prediction unit and resource management system work autonomously to monitor workload metrics, forecast future needs, and provision or de-provision resources as appropriate. This automation enables rapid response to workload changes while maintaining optimal resource utilization.
Solution Approach 2:
The system takes preliminary automated actions by predicting future workload requirements and pre-provisioning resources before demand occurs. This automated preliminary action eliminates the delay associated with manual resource management while maintaining cost efficiency through intelligent prediction. The system automatically responds to rapid and unexpected changes by having already prepared necessary resources based on forecasted demands.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method, node and computer program for a resource controller node (100) for enabling automatic adaptation of the size of a pool of resource units, the resource units needed for operation of an application in a computer environment. The method comprises requesting a predicted capacity demand by a resource controller unit (110) from a prediction unit (120), retrieving a configuration for calculation of the predicted capacity demand from a workload characterization unit (130) by the prediction unit (120) as a response to the request, retrieving at least one key performance indicator based on workload metric data from a monitor unit (140) by the prediction unit (120) as a response to the request, calculating a capacity difference of compute units based on the at least one key performance indicator and the configuration by the prediction unit (120), the capacity difference defined by a difference of compute units between a current capacity allocation and a predicted capacity demand, translating the difference of compute units to a difference of resource units by a resource adapter unit (150), transmitting a size adaptation instruction comprising the difference of resource units to the pool of resource units, instructing the pool of resource units to adapt its size of the pool of resource units according to the difference of resource units, thereby enabling automatic adaptation of the pool of resource units to meet an actual workload and a predicted capacity demand of the application.