Storage Device Stream Classification to Reduce Write Amplification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices face inefficiencies in garbage collection due to the mixing of cold and hot data in the same memory blocks, leading to reduced device life and increased write amplification factors.
Innovation Solution
A storage device that classifies data based on age and update frequency, using a memory controller to change stream identifiers and perform garbage collection only on blocks with predominantly cold data, thereby reducing unnecessary data copying and extending device life.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If garbage collection is performed frequently to secure free memory blocks, then free memory availability is improved, but device life decreases due to increased wear from repeated operations
Solution Approach 1:
The patent segments data into hot data and cold data based on access patterns, and performs garbage collection selectively on blocks containing predominantly cold data. This segmentation allows the system to maintain free memory blocks while avoiding frequent GC operations on hot data blocks, thereby extending device life.
Solution Approach 2:
The patent applies different garbage collection strategies to different memory blocks based on their data composition. Blocks with cold data undergo regular GC to free memory, while blocks with hot data are protected from GC operations. This local differentiation resolves the contradiction by optimizing both free memory availability and device life for different regions.
2Quantity of substance
If cold data and hot data are stored in the same memory block, then storage space utilization is improved, but garbage collection efficiency decreases due to unnecessary copying of cold data
Solution Approach 1:
The patent segments memory blocks into those containing hot data and those containing cold data based on access pattern analysis. By separating these data types into different blocks, the system eliminates the inefficiency of copying cold data during GC operations while maintaining high storage space utilization through appropriate block allocation.
Solution Approach 2:
The patent applies quality differentiation by identifying and separating cold data from hot data within memory blocks. Cold data blocks are optimized for GC operations while hot data blocks are protected, improving overall GC efficiency without compromising storage utilization through intelligent block management.
3Quantity of substance
If data is continuously written to flash memory without classification, then data storage capacity is maximized, but write amplification factor increases due to repeated garbage collection operations
Solution Approach 1:
The patent segments write operations based on data characteristics, directing hot data to protected blocks and cold data to GC-eligible blocks. This segmentation reduces the frequency of GC operations by isolating cold data, thereby lowering the write amplification factor while maintaining full data storage capacity.
Solution Approach 2:
The patent applies different write management strategies to different data types. Hot data receives protected write handling that prevents GC operations, while cold data undergoes normal write and GC processes. This local quality differentiation reduces unnecessary write amplification while preserving complete storage capacity.
Data Source
Figure 1~2
Figure 3
Figure 4
AI summary
A storage device (300) according to the technical ideas of the inventive concepts include: a memory device (320) including a plurality of memory blocks, the plurality of memory blocks including a plurality of pages; a data controller (313) configured to receive, from a host, data to be written to the plurality of pages and a stream identifier corresponding the data, and determine whether to change the stream identifier based on an age of the data representing a frequency of update on the data on one of the plurality of memory blocks or one of the plurality of pages; and a garbage collection controller (314) configured to classify the data based on the stream identifier, and control a garbage collection operation of the memory device (320) based on a classification result.