Hierarchical Storage QoS Allocation for Noisy Neighbor Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems in data centers face challenges in managing quality of service (QoS) standards across multiple tenants, leading to disruptive 'noisy neighbor' issues and inefficient resource utilization.

Innovation Solution

Implementing an orchestration system that allocates storage cluster resources hierarchically, schedules operations, and applies algorithms to ensure guaranteed and maximum availability of resources, dynamically moving storage units and rate limiting to optimize resource use across the storage cluster.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple tenants share storage cluster resources, then resource utilization efficiency is improved, but service quality and reliability deteriorate due to noisy neighbor issues

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidservice quality
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent segments the storage cluster resources by implementing hierarchical QoS policies that divide resource allocation into multiple levels (cluster-level, storage pool-level, and storage unit-level). This segmentation allows different tenants to have guaranteed resource allocations while preventing any single tenant from monopolizing resources and affecting others' service quality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the parameter of resource allocation from static to dynamic by implementing algorithms that adjust resource distribution based on real-time conditions. The system monitors resource usage and automatically adjusts allocations to maintain service quality standards while optimizing overall resource utilization efficiency.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If QoS standards are enforced across storage cluster resources, then service level agreement compliance is improved, but resource allocation flexibility and efficiency worsen

Engineering Contradiction:
Improveservice level agreement complianceVSAvoidresource allocation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic QoS enforcement where resource allocation parameters can adjust in real-time based on current system conditions and tenant needs. The hierarchical policy framework allows guaranteed minimum allocations to maintain SLA compliance while permitting excess resource usage when available, thus maintaining allocation efficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs self-adjusting algorithms that automatically monitor resource usage patterns and dynamically reallocate resources among tenants based on current QoS requirements and availability. This self-service mechanism maintains SLA compliance without requiring manual intervention, preserving resource allocation efficiency.

Inventive Principle:
Principle #25Self-service

3Productivity

If storage units are dynamically moved to optimize resource distribution, then resource utilization is improved, but system complexity and operational difficulty increase

Engineering Contradiction:
Improveresource utilizationVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements preliminary action by pre-establishing hierarchical QoS policies and allocation rules before resource distribution occurs. The system pre-configures guaranteed allocations and maximum limits for each tenant, allowing dynamic movements to occur within predetermined boundaries, thus reducing the complexity of real-time decision-making.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary orchestration layer that manages the complexity of dynamic storage unit movements. This intermediary component handles the computational complexity of optimizing resource distribution while presenting simplified interfaces to users and maintaining QoS guarantees, thus improving resource utilization without proportionally increasing operational difficulty.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If hierarchical resource allocation is implemented, then QoS management predictability is improved, but allocation overhead and processing time increase

Engineering Contradiction:
ImproveQoS management predictabilityVSAvoidallocation overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the hierarchical allocation process into distinct levels (cluster-level aggregation, storage pool-level distribution, and storage unit-level assignment). This segmentation allows each level to operate independently with optimized processing, improving predictability while minimizing the time loss at each hierarchical level through specialized handling.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12411712B2Predictable and adaptive quality of service for storage
Publication Date: 2025.09.09 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12411712B2 patent drawing
  • US12411712B2 patent drawing
  • US12411712B2 patent drawing

AI summary

This disclosure describes a set of techniques that include establishing and managing quality of service standards across storage cluster resources in a data center. In one example, this disclosure describes a method that includes establishing a quality of service standard for a tenant sharing a storage resource with a plurality of tenants, wherein the storage resource is provided by the plurality of storage nodes in the storage cluster; allocating a volume of storage within the storage cluster, wherein allocating the volume of storage includes identifying a set of storage nodes to provide the storage resource for the volume of storage, and wherein the set of storage nodes are a subset of the plurality of storage nodes; and scheduling operations to be performed by the set of storage nodes for the volume of storage.