Distributed Semaphore Reduces Disk Space Reservation Contention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized infrastructure environments, traditional methods for data management face challenges due to high workload consolidation and the need for instant, granular recovery, leading to inefficiencies in data storage and recovery processes.

Innovation Solution

A distributed semaphore system is implemented using a distributed key-value store to efficiently allocate and manage disk space and network bandwidth across a cluster of data storage nodes, employing multiple semaphores to reduce contention and scale with increasing node numbers, along with an integrated data management and storage system for snapshot management and recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single global semaphore is used to manage disk space reservations across all data storage nodes, then the system structure is simple, but contention increases and prevents efficient reservations when numerous jobs vie for access simultaneously

Engineering Contradiction:
Improvesemaphore system structureVSAvoidreservation efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The single global semaphore is divided into multiple distributed semaphores, each managing a specific portion of disk space. This segmentation reduces contention by allowing multiple jobs to reserve space from different semaphores simultaneously, thereby improving reservation efficiency while maintaining manageable system complexity through modular organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from a single-dimension global semaphore to a multi-dimension distributed semaphore structure where semaphores are organized by disk space portions. This dimensional change allows parallel reservation operations across different space portions, resolving the contention bottleneck while preserving structural simplicity through hierarchical management.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple distributed semaphores are implemented to reduce contention and improve reservation efficiency, then productivity increases, but device complexity increases

Engineering Contradiction:
Improvereservation efficiencyVSAvoidsemaphore system structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Each distributed semaphore is designed with universal functionality to manage its assigned disk space portion independently using the same reservation and release mechanisms. This multi-functionality allows the system to scale to multiple semaphores without proportionally increasing operational complexity, as each semaphore handles identical operations on different data segments.

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

Solution Approach 2:

The disk space management system is segmented into multiple independent semaphore-managed portions, allowing parallel operations. This segmentation improves productivity by enabling concurrent reservations while controlling complexity through clear separation of responsibilities and standardized interfaces for each segment.

Inventive Principle:
Principle #1Segmentation

3Quantity of substance

If disk space is allocated dynamically without pre-reservation, then storage utilization is optimized, but reliability decreases when jobs may run out of space mid-execution

Engineering Contradiction:
Improvestorage utilizationVSAvoidjob completion guarantee
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The system performs preliminary action by reserving disk space for jobs before execution begins. This advance reservation guarantees that sufficient space will be available throughout job execution, ensuring reliability. The reserved space is tracked and managed by distributed semaphores, allowing efficient allocation while maintaining the guarantee.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where the job scheduler monitors disk space reservations and communicates with distributed semaphores to allocate and release space dynamically. This feedback loop ensures that storage utilization is optimized by releasing reserved space when jobs complete, while maintaining reliability through continuous tracking of reserved versus available space.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11216315B2Distributed semaphore with a different keys to reduce contention for dynamic reservation of disk space
Publication Date: 2022.01.04 RUBRIK INC
  • US11216315B2 patent drawing
  • US11216315B2 patent drawing
  • US11216315B2 patent drawing

AI summary

Methods and systems for allocating disk space and other limited resources (e.g., network bandwidth) for a cluster of data storage nodes using distributed semaphores with atomic updates are described. The distributed semaphores may be built on top of a distributed key-value store and used to reserve disk space, global disk streams for writing data to disks, and per node network bandwidth settings. A distributed semaphore comprising two or more semaphores that are accessed with different keys may be used to reduce contention and allow a globally accessible semaphore to scale as the number of data storage nodes within the cluster increases over time. In some cases, the number of semaphores within the distributed semaphore may be dynamically adjusted over time and may be set based on the total amount of disk space within the cluster and/or the number of contention fails that have occurred to the distributed semaphore.