Multi-tenant Resource Allocation with Pre-emption Policies
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed computing systems face challenges in resource allocation due to increasing complexity and varied demands from multiple users and groups, requiring efficient scheduling and resource management to ensure fault tolerance, cost-effectiveness, and scalability.
Innovation Solution
A method for resource allocation in distributed computing networks, utilizing a master server and resource servers interconnected via networks, which implements a flexible distribution policy allowing for multiple service levels, pre-emption, and resource reservation, with a distributed resource manager that aggregates demands and availability to assign resources based on policy structures and hierarchical tenant hierarchies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the number of resources and users is increased to provide fault tolerance and cost savings, then reliability and cost-effectiveness are improved, but the number and complexity of demands for system resources increases, presenting scheduling and resource allocation challenges
Solution Approach 1:
The patent segments the distributed computing system into multiple resource pools, each managed independently with specific policies. This segmentation allows the system to handle large numbers of users and resources while maintaining manageable complexity through modular resource management units.
Solution Approach 2:
The patent introduces resource pool managers as intermediary components between the central scheduling system and individual resources. These intermediaries aggregate resource information and handle local allocation decisions, reducing the complexity burden on the central scheduler while maintaining system-wide coordination.
2Adaptability or versatility
If diverse users and groups with varied needs for resource quantity, service level, resource availability and cost are supported, then adaptability and versatility are improved, but scheduling and resource allocation challenges increase
Solution Approach 1:
The patent applies local quality by assigning different service levels, policies, and allocation rules to different resource pools based on their specific characteristics and user requirements. Each resource pool can be optimized for its particular function (e.g., compute-intensive, storage-intensive, low-latency) while maintaining overall system adaptability.
Solution Approach 2:
The patent implements dynamic resource allocation where resource pool configurations, service levels, and allocation policies can be adjusted based on changing user needs and system conditions. This dynamic approach allows the system to adapt to diverse requirements without requiring complete reconfiguration of the entire resource allocation system.
3Loss of energy
If resources are shared among multiple users to achieve cost savings, then cost-effectiveness is improved, but the complexity of managing operational throughput and resource isolation increases
Solution Approach 1:
The patent segments shared resources into isolated resource pools with defined boundaries and access controls. This segmentation enables efficient resource sharing among multiple users while maintaining manageable complexity through clear separation of resource domains and their management policies.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
In a distributed computing network, requests for allocation of resources to tenant workloads and messages identifying resource availability are received and aggregated. Resources are allocated to the workloads in accordance with a distribution policy defining values for resource entitlements of the tenants. The values include pre-emption quantities. In response to determining that a quantity of resources allocated for workloads of a first tenant is less than the tenant's pre-emption quantity, processing of another workload from a second tenant is interrupted to re-allocate resources from the second tenant's workload to the first tenant's workload.