Multi-level bucket aggregation for journal destaging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional journal destaging in distributed storage systems is inefficient for certain types of write operations, such as random writes and writes to many small logical storage volumes, leading to low metadata update amortization and excessive bandwidth utilization, which degrades overall IO processing performance.

Innovation Solution

The implementation of multi-level bucket aggregation, where metadata updates are organized into first-level and second-level buckets, allowing for improved amortization and reduced bandwidth consumption by aggregating metadata pages from multiple first-level buckets into second-level buckets, optimizing the number of updates and maintaining high amortization for large logical storage volumes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If fixed-size pages are used for destaging metadata updates, then simplicity of implementation is maintained, but amortization efficiency deteriorates and excessive bandwidth is consumed

Engineering Contradiction:
Improvesimplicity of implementationVSAvoidamortization efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent segments metadata updates into variable-sized batches based on the number of updates, rather than using fixed-size pages. This segmentation allows the system to optimize batch sizes dynamically, improving amortization efficiency while maintaining implementation simplicity through the use of hash-based bucketing structures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically adjusts the number of metadata updates per batch based on runtime conditions. By using variable batch sizes instead of fixed pages, the system can adapt to different workload patterns, thereby improving amortization efficiency without significantly complicating the implementation.

Inventive Principle:
Principle #15Dynamics

2Productivity

If metadata updates are aggregated into large batches, then amortization efficiency improves, but bandwidth utilization increases and IO processing performance deteriorates

Engineering Contradiction:
Improveamortization efficiencyVSAvoidbandwidth utilization
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies partial aggregation by combining only a selective number of metadata updates into batches, rather than aggregating all updates. This partial action approach optimizes the balance between amortization efficiency and bandwidth utilization, preventing excessive bandwidth consumption while maintaining improved amortization compared to fixed-page methods.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system changes the parameter of batch size from fixed to variable, allowing dynamic adjustment based on workload characteristics. This parameter change enables the system to optimize amortization efficiency for different types of write operations while controlling bandwidth utilization through adaptive batch sizing.

Inventive Principle:
Principle #35Parameter changes

3Ease of manufacture

If conventional batch aggregation is used for all write operations, then implementation simplicity is maintained, but performance deteriorates for random writes and writes to small logical storage volumes

Engineering Contradiction:
Improveimplementation simplicityVSAvoidIO processing performance
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent applies local quality by using hash-based bucketing to group metadata updates from the same logical storage volume together. This local grouping optimizes performance for specific types of workloads (random writes, small volumes) while maintaining overall system simplicity, as the same mechanism handles all write operations uniformly.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent introduces hash-based bucketing as an intermediary structure between the write operations and the batch aggregation process. This intermediary organizes metadata updates in a way that improves performance for diverse workload types while keeping the overall implementation simple and uniform across different operation types.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11126361B1Multi-level bucket aggregation for journal destaging in a distributed storage system
Publication Date: 2021.09.21 EMC IP HLDG CO LLC
  • US11126361B1 patent drawing
  • US11126361B1 patent drawing
  • US11126361B1 patent drawing

AI summary

An apparatus comprises at least one processing device configured to maintain a metadata update journal for at least a first storage node of a plurality of storage nodes of a distributed storage system, and to destage the metadata update journal of the first storage node to one or more storage devices accessible to the first storage node. The metadata update journal of the first storage node utilizes a multi-level bucket aggregation of metadata updates in which metadata pages each comprising a plurality of address-to-hash mapping pairs are arranged in a plurality of first-level buckets containing respective subsets of the metadata pages for respective different logical storage volumes, and a plurality of second-level buckets are each configured to aggregate multiple metadata pages from different ones of the first-level buckets in order to increase a number of metadata updates in each second-level bucket relative to numbers of metadata updates in its corresponding first-level buckets.