Storage Controller Stream Classification for SSD Lifespan
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing semiconductor memory storage devices, such as SSDs, do not optimize operations for different types of data, leading to reduced lifespan and performance due to frequent maintenance operations like garbage collection.
Innovation Solution
A storage controller that classifies data into streams based on cosine similarity and machine learning, allocating write requests to pre-allocated streams to reduce unnecessary maintenance operations and improve data management efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is stored without stream classification, then storage operations are simple, but maintenance operations increase and device lifetime decreases
Solution Approach 1:
The patent segments incoming data into multiple streams based on characteristics such as sequentiality, size, and access patterns. By dividing data into distinct streams with unique identifiers, the system can apply different management strategies to each stream, reducing overall maintenance operations and extending device lifetime while managing complexity through structured classification.
Solution Approach 2:
The patent performs preliminary classification of data into streams before storage operations. By pre-allocating streams and assigning stream identifiers to data based on their characteristics beforehand, the system prepares data for optimized storage and retrieval, reducing the need for frequent maintenance operations and extending device lifetime.
2Productivity
If stream classification is implemented, then data management efficiency improves, but processing complexity increases
Solution Approach 1:
The patent divides data management into multiple independent streams, each with its own identifier and management characteristics. This segmentation allows parallel processing of different data types and patterns, improving overall data management efficiency while distributing processing complexity across multiple manageable stream handlers rather than a single complex system.
Solution Approach 2:
The patent changes parameters such as stream identifiers, allocation policies, and management strategies based on data characteristics. By adjusting these parameters dynamically according to stream type and access patterns, the system optimizes data management efficiency for different workloads while keeping the underlying processing framework relatively simple.
3Duration of action of stationary object
If maintenance operations are reduced through stream allocation, then device lifetime extends, but initial setup complexity increases
Solution Approach 1:
The patent performs preliminary stream allocation and classification setup before actual storage operations begin. By pre-allocating streams, assigning identifiers, and establishing management policies in advance, the system reduces the need for complex maintenance operations during device operation, thereby extending device lifetime while concentrating complexity in the initial setup phase.
Solution Approach 2:
The patent implements self-service mechanisms where the storage system automatically classifies data into appropriate streams and manages stream allocation without requiring complex external intervention. This automation reduces maintenance complexity over time and extends device lifetime by minimizing manual maintenance operations.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An operation method of a storage device includes receiving a first write request; adding the first write request to a first fragment; selecting at least "n" (e.g., at least two) streams among a plurality of pre-allocated streams when a size of the first fragment, when a size of the first fragment is >= a reference value, based on a cosine similarity between the first fragment and each of the pre-allocated streams; applying input information to a machine learning model to detect a first sequential stream associated with the first fragment from among the at least "n" streams; allocating a stream identifier of the first sequential stream to the first fragment; and storing write data included in the first fragment based on the stream identifier of the first sequential stream. The input information includes statistical information of at least one of the "n" streams and the first fragment.