Adaptive Metadata Batching for Journaling File Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional metadata batching mechanisms in journaling file systems fail to achieve optimal I/O throughput and latency, particularly when dealing with varying I/O admission rates, leading to inefficiencies in data and journal write operations.

Innovation Solution

Adaptive metadata batching is implemented, using triggers based on write completion, time thresholds, and count thresholds to dynamically adjust batch closure and writing, supporting both trickle and burst I/O admission rates, allowing for flexible and scalable metadata batching.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If fixed batch size is used for metadata batching, then I/O amplification is reduced when I/O admission rate is high, but I/O latency increases when I/O admission rate is low

Engineering Contradiction:
ImproveI/O throughputVSAvoidI/O latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements dynamic metadata batching that adapts to varying I/O admission rates. The system monitors the rate of incoming I/O operations and dynamically adjusts batch size and timing parameters. When I/O admission rate is high, larger batches are formed to reduce I/O amplification. When I/O admission rate is low, smaller batches are formed to reduce latency, thus resolving the contradiction between throughput and latency across different workload conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes batching parameters (batch size, time window) based on observed I/O admission rate. By dynamically adjusting these parameters rather than using fixed values, the system can optimize for either throughput or latency depending on current workload conditions, resolving the contradiction between the two performance metrics.

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If fixed time window is used for metadata batching, then I/O latency is reduced when I/O admission rate is high, but I/O amplification increases when I/O admission rate is low

Engineering Contradiction:
ImproveI/O latencyVSAvoidI/O throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent implements dynamic metadata batching that adapts to varying I/O admission rates. The system monitors the rate of incoming I/O operations and dynamically adjusts batch size and timing parameters. When I/O admission rate is high, larger batches are formed to reduce I/O amplification. When I/O admission rate is low, smaller batches are formed to reduce latency, thus resolving the contradiction between throughput and latency across different workload conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes batching parameters (batch size, time window) based on observed I/O admission rate. By dynamically adjusting these parameters rather than using fixed values, the system can optimize for either throughput or latency depending on current workload conditions, resolving the contradiction between the two performance metrics.

Inventive Principle:
Principle #35Parameter changes

3Loss of time

If individual journal writes are performed for each data write, then I/O latency is reduced, but I/O amplification increases

Engineering Contradiction:
ImproveI/O latencyVSAvoidI/O throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent implements metadata batching that combines multiple individual journal writes into aggregated batch writes. By merging multiple small write operations into fewer larger writes, the system reduces I/O amplification while maintaining acceptable latency through dynamic batch sizing and timing. This resolves the contradiction between latency and throughput by finding an optimal balance point.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11429308B2Adaptive metadata batching based on input/output rate
Publication Date: 2022.08.30 VMWARE INC
  • US11429308B2 patent drawing
  • US11429308B2 patent drawing
  • US11429308B2 patent drawing

AI summary

The disclosure supports both trickle and burst input/output (I/O) admission rates in journaling file systems. Examples include receiving incoming data; based at least on receiving the incoming data, generating metadata for a journal entry; adding the metadata to an active metadata batch; issuing a data write to write the incoming data to a storage medium; monitoring for a first trigger comprising determining that a data write for an entry in the active metadata batch is complete; based at least on the first trigger, closing the active metadata batch; and issuing a journal write to write entries of the active metadata batch to the storage medium. A second trigger comprises determining that a batch open time exceeds a selected percentage of a moving average of data write durations. A third trigger comprises determining that a batch counter exceeds a count threshold. These triggers work together to reduce I/O latencies.