Distributed Resource Scheduling with Global Usage Quotas

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed systems face challenges in managing resource access due to resource contention and monopolization, especially with distinct resources where a small number of resources service specific requests, leading to inefficiencies and poor system performance.

Innovation Solution

Implementing dynamic scheduling based on usage quotas across the distributed system, where usage information is monitored and quotas are enforced globally, allowing requests to be queued or processed based on quota status, ensuring fair access and high system utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If usage quotas are enforced strictly at each node independently, then resource monopolization is prevented locally, but system-wide resource utilization decreases and requests are needlessly penalized when processing capacity is available

Engineering Contradiction:
Improveprevention of resource monopolizationVSAvoidsystem utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges independent per-node quota enforcement into a coordinated system-wide quota management approach. Nodes share quota status information and coordinate request processing decisions, combining local enforcement capabilities with global awareness to prevent monopolization while maintaining system-wide utilization efficiency

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system implements feedback mechanisms where nodes report usage information and receive quota status updates. This feedback loop enables dynamic adjustment of request processing decisions based on current system state, allowing requests to be processed when capacity is available while preventing quota violations

Inventive Principle:
Principle #23Feedback

2Ease of operation

If complex scheduling algorithms are implemented to manage resource access fairly, then resource allocation fairness improves, but computational overhead increases and throughput decreases

Engineering Contradiction:
Improvefairness of resource accessVSAvoidsystem throughput
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The scheduling problem is segmented into simple local decisions at each node based on shared quota status. Instead of one complex centralized algorithm, each node independently makes scheduling decisions using straightforward rules derived from global quota information, reducing computational complexity while maintaining fairness

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Usage quota status acts as an intermediary mechanism that mediates between competing requests. Rather than nodes directly competing using complex algorithms, the quota status serves as a shared signal that coordinates access decisions, simplifying the interaction while ensuring fair resource distribution

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If per-atom usage tracking is implemented to enforce quotas, then precise quota control is achieved, but system complexity and overhead increase

Engineering Contradiction:
Improveusage quota control accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system implements a universal usage tracking mechanism that serves multiple atoms and request types through a common quota management framework. This multi-functional approach achieves precise per-atom control while avoiding the complexity of separate tracking systems for each resource

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10931592B1Quota-based resource scheduling
Publication Date: 2021.02.23 GOOGLE LLC
  • US10931592B1 patent drawing
  • US10931592B1 patent drawing
  • US10931592B1 patent drawing

AI summary

The present disclosure relates to dynamically scheduling resource requests in a distributed system based on usage quotas. One example method includes identifying usage information for a distributed system including atoms, each atom representing a distinct item used by users of the distributed system; determining that a usage quota associated with the distributed system has been exceeded based on the usage information, the usage quota representing an upper limit for a particular type of usage of the distributed system; receiving a first request for a particular atom requiring invocation of the particular type of usage represented by the usage quota; determining that a second request for a different type of usage of the particular atom is waiting to be processed; and processing the second request for the particular atom before processing the first request.