Multi-Stream Data Storage Allocation for Garbage Collection Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data storage mechanisms fail to accurately allocate data with similar update frequencies to the same block, leading to reduced Garbage Collection (GC) performance and shortened service life of storage devices.
Innovation Solution
A data storage method and device that allocates stream identifiers (IDs) to user data files and metadata based on their access attribute information, separating them into different subsets to ensure similar update frequencies are stored in the same block, thereby reducing data moving operations during GC.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If stream IDs are allocated without considering access attribute information, then allocation is simple and fast, but data with different update frequencies are incorrectly allocated to the same block, increasing data moving operations during GC
Solution Approach 1:
The patent applies parameter changes by utilizing access attribute information (such as access frequency, update frequency, and access patterns) as additional parameters for stream ID allocation. Instead of simple sequential allocation, the system analyzes these parameters and allocates stream IDs based on the characteristics of data files and metadata, ensuring that data with similar update frequencies are grouped together while maintaining an manageable allocation process.
Solution Approach 2:
The patent applies segmentation by dividing the stream ID space into different subsets: first stream IDs are allocated to data files based on their access attributes, while second stream IDs are allocated to metadata based on their own access attributes. This segmentation allows independent optimization of allocation strategies for data and metadata, improving overall allocation accuracy without overwhelming complexity.
2Reliability
If data with different update frequencies are allocated to the same block, then storage capacity is efficiently utilized, but Garbage Collection requires more data moving operations, reducing storage device lifespan
Solution Approach 1:
The patent uses access attribute parameters (update frequency, access patterns) to determine stream ID allocation, which directly impacts GC efficiency. By changing the allocation parameter from simple indexing to attribute-based classification, the system groups data with similar update frequencies together, reducing the need to move data during GC operations and thereby extending storage device lifespan while maintaining GC productivity.
Solution Approach 2:
The patent applies local quality by allocating different stream ID subsets to different types of data (data files vs. metadata) based on their specific access characteristics. This localized allocation strategy ensures that each subset of data is optimized for its specific access pattern, with data files and metadata receiving appropriate stream IDs that reflect their update frequencies and access behaviors.
3Measurement precision
If separate stream ID subsets are allocated to data files and metadata, then allocation accuracy is improved, but the allocation process becomes more complex
Solution Approach 1:
The patent applies segmentation by creating separate allocation processes for data files and metadata, each with its own stream ID subset. This segmentation improves measurement precision by allowing independent analysis of access attributes for each data type, while managing complexity through modular allocation logic that can be implemented separately for data and metadata streams.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A data storage method includes allocating first stream identifiers (IDs) of a first subset of streams of a storage device (200) that supports multi-stream to data files based on first access attribute information of the data files, allocating second stream IDs of a second subset of the streams to metadata for the data files based on second access attribute information of the metadata, and writing the data files and the metadata into storage areas of the storage device (200) based on the first stream IDs and the second stream IDs, respectively.