Server Resource Allocation via Queue Distribution Prediction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional methods for predicting future system loads in server resource allocation rely solely on historical data, which are inadequate for accurately forecasting irregular task executions, leading to inefficient resource allocation.
Innovation Solution
A computer-implemented method that combines current queue distribution and historical information to predict future task executions, using a nonlinear estimator to determine the required number of servers for scheduled tasks, optimizing server allocation by minimizing backlog.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If conventional historical data-only prediction methods are used, then the prediction process is simple, but the prediction accuracy for irregular task executions is poor
Solution Approach 1:
The patent combines multiple data sources (historical data, current queue distribution, scheduled task information) and multiple prediction methods into a unified prediction system. This merging approach integrates diverse information streams to achieve more accurate predictions for irregular task executions while maintaining a manageable system through structured data integration.
Solution Approach 2:
The prediction system is designed to handle multiple types of task executions (regular and irregular) using a unified prediction framework. The system adapts to different task patterns by incorporating scheduled task information and queue distribution data, making the prediction method universally applicable to various execution scenarios without requiring separate specialized systems.
2Productivity
If server resources are allocated based on inaccurate predictions, then resource allocation is simple, but system performance deteriorates due to insufficient or excessive resources
Solution Approach 1:
The system continuously monitors actual task execution patterns and queue distributions, comparing them against predictions. This feedback loop allows the system to refine its prediction accuracy over time by learning from actual system behavior, thereby improving resource allocation decisions and overall system performance through iterative optimization.
Solution Approach 2:
The prediction system proactively forecasts future system loads before tasks are executed, allowing resources to be pre-allocated or pre-scaled in anticipation of demand spikes. This preliminary action enables the system to prepare adequate resources in advance, preventing performance degradation during peak execution periods.
3Productivity
If more servers are allocated to handle potential task executions, then task execution capability is improved, but resource waste increases due to over-provisioning
Solution Approach 1:
The system dynamically adjusts server allocation based on real-time queue distribution and predicted task executions rather than maintaining static over-provisioned resources. This dynamic approach allows the system to scale resources up or down according to actual demand, ensuring adequate task execution capability while minimizing resource waste during low-demand periods.
Solution Approach 2:
The prediction system analyzes changes in queue distribution parameters and task execution patterns to dynamically determine optimal server allocation. By monitoring and responding to parameter changes in real-time, the system adjusts resource allocation to match actual workload requirements, avoiding both over-provisioning and under-provisioning.
Data Source
AI summary
A computer-implemented system and method facilitate dynamically allocating server resources. The system and method include determining a current queue distribution, referencing historical information associated with execution of at least one task, and predicting, based on the current queue distribution and the historical information, a total number of tasks of various task types that are to be executed during the time period in the future. Based on this prediction, a resource manager determines a number of servers that should be instantiated for use during the time period in the future.


