Deferred-Free Block Logs for Storage Metadata Updates
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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.
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
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.
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.
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
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.
Data Source
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.


