Stream-Aware Garbage Collection for Solid-State Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Garbage collection operations in solid-state storage devices degrade speed performance due to extra NAND flash memory read/write operations, which are exacerbated by mixing data with different lifetimes in the same super-block during conventional multi-stream data write methods.
Innovation Solution
Implement a stream-aware garbage collection method that identifies super-block groups with fewer valid data and sufficient data to complete a super-block, and performs garbage collection within these groups, optionally using a sampling-based method to estimate data lifetimes and assign scaling factors for weighted selection, and sorting data by residual lifetime for efficient distribution across multiple super-blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If garbage collection operations are performed to reclaim flash memory storage space, then storage space availability is improved, but speed performance deteriorates due to extra read/write operations interfering with normal requests
Solution Approach 1:
The patent segments the flash memory into multiple super-block groups and further divides them into individual super-blocks, allowing garbage collection to be performed on specific segments (super-block sets) rather than the entire storage space. This segmentation enables parallel processing and reduces interference with normal read/write operations on other segments.
Solution Approach 2:
The patent applies different treatment to different super-blocks based on their local characteristics (valid data amount, data lifetime). Super-blocks with fewer valid data are selected for garbage collection, while those with more valid data continue normal operations. This local quality approach optimizes the balance between reclamation efficiency and performance maintenance.
2Productivity
If multi-stream data write is used to categorize data by lifetime, then garbage collection efficiency is improved, but data mixing within super-blocks still occurs causing performance degradation
Solution Approach 1:
The patent segments super-blocks into different groups based on data lifetime characteristics and performs garbage collection within each group separately. This prevents mixing of data with different lifetimes during GC operations, maintaining the integrity of multi-stream data write while improving GC efficiency.
Solution Approach 2:
The patent copies valid data from selected super-blocks to new super-blocks within the same super-block group, preserving the lifetime characteristics of the data while reclaiming the original super-blocks for reuse. This copying mechanism maintains data integrity and lifetime separation.
Data Source
AI summary
Methods for enhancing the speed performance of solid-state storage devices using stream-aware garbage collection. A garbage collection method in according to an embodiment includes: searching, in each of a plurality of super-block groups G, for a super-block set C that satisfies: all of the super-blocks m within the super-block set C in the super-block group G contain a lesser amount of valid data than the other super-blocks within the super-block group G; and a total amount of valid data within the super-block set C are just enough to complete an entire super-block; selecting the super-block group G that includes the super-block set C with the maximum number of super-blocks m; and performing garbage collection on the super-block set C in the selected super-block group G.


