Storage Block Level-Based Garbage Collection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices face performance degradation due to increased write amplification and garbage collection overhead, particularly when handling cold data with long life cycles.
Innovation Solution
A method and device for storing data that involves performing garbage collection by storing valid data from a first block into a second block, where the level of the second block is not lower than the level of the first block, thereby reducing the likelihood of multiple garbage collections and balancing program/erase counts across blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If garbage collection is performed by storing valid data from a first block into a second block without considering block levels, then garbage collection can be completed, but cold data may be stored or copied multiple times causing increased write amplification and decreased storage device performance
Solution Approach 1:
The patent introduces block level parameters to characterize the wear state and data temperature of different blocks. By changing the selection parameter from simple validity check to level-based selection, the system identifies suitable target blocks that can receive valid data without requiring multiple copy operations, thereby reducing write amplification while maintaining garbage collection efficiency
Solution Approach 2:
The system pre-establishes block level information before garbage collection operations. By preliminarily categorizing blocks into different levels based on their wear state and data characteristics, the garbage collection process can directly select appropriate target blocks without performing multiple copy operations, thus reducing the energy loss from repeated writes
2Reliability
If garbage collection operations are performed frequently to maintain storage device functionality, then valid data must be moved between blocks, but this increases write amplification and reduces overall device performance
Solution Approach 1:
The patent uses block level parameters to optimize garbage collection operations. By selecting target blocks with appropriate levels, the system can complete garbage collection with fewer operations, maintaining storage device functionality while reducing the performance degradation caused by frequent data movement
Solution Approach 2:
The system implements feedback through block level tracking, where the level information of source and target blocks is continuously monitored and used to guide subsequent garbage collection decisions. This feedback mechanism ensures that garbage collection maintains reliability while minimizing the impact on device performance by avoiding redundant data movements
3Productivity
If valid data is moved multiple times during garbage collection, then garbage collection can be completed, but the lifespan of the storage apparatus is reduced due to increased wear on blocks
Solution Approach 1:
The patent introduces block level parameters that reflect the wear state of blocks. By selecting target blocks with suitable levels, the system ensures that valid data is moved the minimum necessary times, thereby completing garbage collection while minimizing additional wear on storage blocks and extending the overall lifespan of the storage apparatus
Solution Approach 2:
The system preliminarily establishes block level information that indicates the wear state and suitability of each block as a target. This preliminary characterization allows the garbage collection process to select optimal target blocks in advance, reducing the number of data movement operations and thereby extending the duration of action of the storage apparatus
Data Source
AI summary
A method for storing data includes receiving a message to perform garbage collection on a first block of blocks included in a storage apparatus, and, based on the message, performing garbage collection on the first block by storing valid data that is stored in the first block into a second block according to a level of the first block among plural levels. A level of the second block among the plural levels is not lower than the level of the first block.


