Storage Space Management via Contiguous Block Aggregation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current storage systems face inefficiencies in managing and reallocating large blocks of free memory, leading to increased latency and decreased performance due to the random location of freed memory blocks, which hampers file system access speed and storage device performance.
Innovation Solution
A system and method that aggregates information on contiguous ranges of freed memory blocks, allowing for the issuance of UNMAP commands to storage devices like SSDs, enabling them to efficiently reallocate large segments of free space without the need for excessive seeks or data rearrangement.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If bitmap techniques are used to track free space, then allocated and free space information can be maintained, but long random seeks on disk are required to locate free space, reducing file system access speed
Solution Approach 1:
The patent divides the storage space into blocks and uses space maps to track free space at the block level rather than requiring disk-level bitmap operations. This segmentation allows the system to maintain accurate free space information while reducing the need for long random seeks, as space maps provide a compact representation that can be accessed more efficiently.
2Productivity
If storage devices wait for large contiguous blocks of free space to become available, then large blocks of data can be written efficiently, but numerous discontiguous blocks may be freed randomly, making reallocation inefficient
Solution Approach 1:
The patent implements a preliminary action by proactively notifying the storage device when large contiguous blocks of free space become available, before the storage device needs to reallocate them. The host system monitors freed blocks and sends notifications to the storage device when contiguous segments are formed, allowing the storage device to prepare for efficient reallocation without waiting for random freed blocks to coalesce naturally.
Solution Approach 2:
The system uses feedback mechanisms where the host system continuously monitors the state of freed blocks and provides information to the storage device about when large contiguous free segments are available. This feedback loop allows the storage device to adjust its reallocation strategies based on actual free space conditions, improving both the efficiency of large block writes and reducing reallocation delays.
3Adaptability or versatility
If the storage device moves data around and compacts it to accommodate large blocks, then storage device requirements for large segments can be met, but this approach decreases storage device performance
Solution Approach 1:
The patent extracts the data movement and compaction operation from the storage device and relocates it to the host system. Instead of the storage device actively moving and compacting data to create large contiguous blocks, the host system identifies when large contiguous free blocks are available and notifies the storage device. This eliminates performance-degrading compaction operations on the storage device while still enabling efficient large block allocations.
Data Source
AI summary
Aspects of the present disclosure disclose systems and methods for managing space in storage devices. In various aspects, the disclosure is directed to providing more efficient method for managing free space in the storage system, and related apparatus and methods. In particular, the system provides for freeing blocks of memory that are no longer being used based on the information stored in a file system. More specifically, the system allows for reclaiming of large segments of free blocks at one time by providing information on aggregated blocks that were being freed to the storage devices.


