Workload-Based Scheduling for Fair Storage Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage systems face challenges in ensuring fair utilization of system resources, leading to inefficiencies and performance degradation due to uneven distribution of workload and resource utilization among entities.

Innovation Solution

Implementing workload-based, time-independent scheduling mechanisms that monitor and manage system resources by determining available resources, identifying entities exceeding their fair share, and adjusting access to prevent overload, thereby ensuring equitable resource allocation and optimizing performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional scheduling mechanisms are used, then system resources may be allocated quickly, but resource utilization becomes uneven and performance degrades

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidperformance stability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements a feedback mechanism where the scheduler continuously monitors resource usage by entities and adjusts scheduling decisions based on observed consumption patterns. The system tracks the amount of resources consumed by each entity and uses this information to make fair scheduling decisions, ensuring that no single entity monopolizes system resources while maintaining high overall utilization.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The scheduling mechanism dynamically adapts to changing workload conditions by adjusting the priority and resource allocation to different entities in real-time. Instead of using static scheduling policies, the system modifies scheduling behavior based on current resource availability and entity-specific consumption patterns, allowing the system to maintain optimal performance under varying load conditions.

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If resources are allocated without monitoring, then allocation speed is maintained, but entities may exceed their fair share causing overload

Engineering Contradiction:
Improveallocation speedVSAvoidresource management complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system implements self-service resource management where entities effectively regulate their own resource consumption through the scheduling mechanism. The scheduler automatically identifies when an entity is consuming excessive resources and adjusts scheduling to prevent overload, eliminating the need for manual intervention or complex external control systems while maintaining allocation speed.

Inventive Principle:
Principle #25Self-service

3Reliability

If fair scheduling is implemented, then resource distribution becomes equitable, but system complexity increases

Engineering Contradiction:
Improvefairness of resource distributionVSAvoidscheduling mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the fairness enforcement logic from the core scheduling path into a separate monitoring and adjustment mechanism. This allows the primary scheduling operations to remain simple and efficient while a dedicated subsystem handles the complex task of monitoring resource consumption and making fairness adjustments, thereby maintaining equitable distribution without significantly increasing overall system complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10896068B1Ensuring the fair utilization of system resources using workload based, time-independent scheduling
Publication Date: 2021.01.19 PURE STORAGE INC
  • US10896068B1 patent drawing
  • US10896068B1 patent drawing
  • US10896068B1 patent drawing

AI summary

Ensuring the fair utilization of system resources using workload based, time-independent scheduling, including: determining whether an amount of available system resources in the storage system has reached a predetermined reservation threshold; and responsive to determining that the amount of available system resources in the storage system has reached the predetermined reservation threshold: determining whether one or more entities in the storage system have utilized system resources in excess of their fair share by a predetermined threshold during one or more time-independent periods; and responsive to determining that one or more entities in the storage system have utilized system resources in excess of their fair share by the predetermined threshold during the time-independent period, limiting the one or more entities from issuing additional I/O requests to the storage system.