Deferred-Free Block Logs for Storage Metadata Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems face inefficiencies due to frequent metadata modifications, leading to increased overhead and decreased performance, particularly when updating tracking structures for free blocks, which results in poor user experience and higher costs.

Innovation Solution

Implementing a block free unit with efficient metadata updates using deferred-free block logs, where block identifiers are appended to an active log, sorted in subsets, and then merged into a sorted log, reducing the number of input/output operations by leveraging spatial locality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If frequent metadata modifications are performed to track free blocks, then the storage system can maintain accurate block allocation information, but the storage system overhead increases and performance decreases

Engineering Contradiction:
Improvemetadata accuracyVSAvoidstorage system performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the metadata update process into distinct phases: tracking free blocks in an active log, sorting subsets of block identifiers, merging sorted subsets, and updating metadata. This segmentation allows the system to maintain metadata accuracy while reducing overhead by processing updates in organized batches rather than individually for each freed block.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by maintaining an active log that tracks freed blocks before metadata updates are executed. Block identifiers are sorted and merged in advance, so when metadata updates occur, they can be applied efficiently to multiple blocks simultaneously, reducing the performance impact of frequent modifications.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If individual block metadata updates are performed frequently, then each block's allocation status is accurately maintained, but the number of input/output operations increases

Engineering Contradiction:
Improveblock tracking accuracyVSAvoidinput/output operation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent merges multiple sorted subsets of block identifiers into a single sorted structure before performing metadata updates. This merging process combines information about multiple freed blocks, allowing the system to update metadata for many blocks in a coordinated manner, thereby reducing the total number of input/output operations compared to updating each block individually.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent maintains copies of block identifier information in sorted subsets and an active log before performing actual metadata updates. These copied and organized data structures allow the system to prepare update information in advance, reducing the time-critical I/O operations during the actual metadata modification phase.

Inventive Principle:
Principle #26Copying

3Productivity

If sorted subsets of block identifiers are merged into a sorted log, then spatial locality is improved and I/O operations are reduced, but the device complexity increases

Engineering Contradiction:
Improvemetadata update efficiencyVSAvoidblock free unit structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the block identifier management into segmented sorted subsets that are independently maintained and then merged. This segmentation strategy improves spatial locality within each subset, making I/O operations more efficient, while the modular structure allows the complexity to be managed through systematic processing of smaller, organized units rather than a single large unstructured dataset.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9965196B2Resource reservation for storage system metadata updates
Publication Date: 2018.05.08 NETAPP INC
  • US9965196B2 patent drawing
  • US9965196B2 patent drawing
  • US9965196B2 patent drawing

AI summary

Storage systems track free blocks using various data structures and maps. For instance, free block maps may contain data blocks with values that indicate whether a block is free or not. When an operation results in a block being freed, the relevant data block in the maps must be written during an I/O operation to update the value. Large numbers of updates my occur after an operation that frees a large numbers of blocks, which can lead to performance degradation. Accordingly, disclosed are systems and methods for deferring updating of free block data tracking structures using logs.