Multi-Cloud Workload Scheduling via Dynamic Ranking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-cloud environments, maximizing resource utilization while meeting service level agreements (SLAs) and minimizing waste of perishable cloud resources is challenging due to heterogeneity and fluctuating demands, requiring efficient job scheduling and resource allocation across diverse cloud providers.
Innovation Solution
A dynamic distributed algorithm using sigmoidal and logarithmic utility functions for resource provisioning, prioritizing sigmoidal functions over elastic tasks, and implementing a ranked system for scheduling workload-aware jobs to optimize resource allocation and revenue maximization in a heterogeneous multi-cloud environment.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional scheduling algorithms are used in multi-cloud environments, then implementation simplicity is maintained, but resource utilization efficiency deteriorates due to heterogeneity and fluctuating demands
Solution Approach 1:
The scheduling algorithm is segmented into distinct modules: a workload awareness module that monitors cloud provider states, a ranking module that orders providers by suitability, and a selection module that assigns jobs. This modular segmentation allows the complex scheduling task to be broken down into manageable components, improving resource utilization while controlling implementation complexity.
Solution Approach 2:
The scheduling algorithm dynamically adapts to changing workload conditions and cloud provider states. The workload awareness component continuously monitors resource availability and demand fluctuations, while the ranking mechanism dynamically reorders cloud providers based on current system state. This dynamic behavior enables efficient resource utilization in response to heterogeneity and fluctuating demands without requiring overly complex static scheduling rules.
2Productivity
If workload-aware scheduling is implemented, then resource allocation optimization improves, but computational overhead increases due to continuous monitoring and ranking operations
Solution Approach 1:
The workload awareness mechanism implements partial monitoring by selectively tracking only the most relevant workload parameters and cloud provider states necessary for effective scheduling decisions. Rather than continuously monitoring all possible metrics, the system focuses on key indicators that drive scheduling optimization, thereby reducing computational overhead while maintaining resource allocation efficiency.
Solution Approach 2:
Cloud providers self-report their workload status and resource availability to the scheduling system, reducing the computational burden on the central scheduler. The providers autonomously maintain their own state information and make it available for ranking and selection, allowing the scheduling algorithm to optimize resource allocation with minimal computational overhead for continuous monitoring.
3Reliability
If multi-cloud deployments are used, then scalability and reliability improve, but resource coordination complexity increases due to heterogeneity across providers
Solution Approach 1:
The scheduling algorithm implements a universal ranking mechanism that can evaluate and compare diverse cloud providers using a common framework. The workload awareness module and ranking criteria are designed to handle heterogeneous resource types, pricing models, and service characteristics across different cloud providers through a unified approach. This universality enables effective resource coordination across multi-cloud deployments while managing complexity through standardization.
Solution Approach 2:
The scheduling algorithm acts as an intermediary layer between heterogeneous cloud providers and user jobs. It abstracts the complexity of multi-cloud coordination by introducing a standardized interface for workload submission and resource allocation. The ranking mechanism serves as a mediator that translates diverse provider characteristics into a common evaluation metric, simplifying resource coordination while maintaining scalability and reliability across heterogeneous environments.
4Reliability
If dynamic resource provisioning is implemented, then service level agreement compliance improves, but system complexity increases due to real-time adjustments
Solution Approach 1:
The scheduling algorithm performs preliminary ranking and evaluation of cloud providers before job execution begins. By pre-assessing provider suitability based on current workload awareness and ranking criteria, the system prepares optimal resource allocations in advance. This preliminary action enables real-time SLA compliance adjustments without requiring complex runtime decision-making, thereby improving SLA adherence while controlling system complexity.
Data Source
AI summary
Disclosed are systems and methods for optimally provisioning tasks to machine instances. The machine instances can correspond to cloud providers and can be part of a multi-cloud. The machine instances can each have various resources available. The task can be received from a user including a job profile. A ranking can be determined for the machine instances. Based on the ranking, the task can be provisioned to one or more of the machine instances.


