Storage Device Multi-Stream Classification via Machine Learning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current semiconductor memory devices face inefficiencies in managing data streams, leading to frequent maintenance operations and reduced performance due to lack of effective data classification, which results in increased write amplification factors and reduced storage device lifespan.
Innovation Solution
Implementing a stream manager that uses machine learning models to classify and allocate data streams based on various attributes, generating stream identifiers through a model ratio calculation to optimize storage and reduce maintenance needs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If data streams are not classified effectively, then the storage device can operate with simpler management, but maintenance operations increase and performance decreases
Solution Approach 1:
The patent segments data streams into multiple categories based on access patterns (sequential, random, mixed) and assigns different stream identifiers to each category. This segmentation allows the storage device to manage different types of data traffic separately, optimizing performance for each type while maintaining overall system efficiency.
Solution Approach 2:
The storage device performs self-service by automatically classifying incoming data streams using machine learning models without requiring external intervention. The device autonomously identifies access patterns, generates stream identifiers, and routes data accordingly, reducing the need for complex external management while improving performance.
2Measurement precision
If multiple machine learning models are used for stream classification, then classification accuracy improves, but computational complexity increases
Solution Approach 1:
The patent merges multiple machine learning models (e.g., sequential access model, random access model, mixed access model) into a unified classification system. Each model specializes in detecting specific access patterns, and their combined output provides comprehensive stream classification. This merging approach improves accuracy while distributing computational complexity across specialized models.
Solution Approach 2:
The system applies partial action by selectively activating specific machine learning models based on the characteristics of incoming data. Rather than running all models simultaneously for every data stream, the system activates only the relevant models needed for that particular classification task, reducing unnecessary computational overhead while maintaining high accuracy.
3Loss of substance
If stream classification is performed for all input/output requests, then write amplification factor reduces, but processing time increases
Solution Approach 1:
The storage device performs preliminary classification of data streams before actual write operations occur. By identifying access patterns and assigning stream identifiers in advance, the system prepares the data for optimized storage operations. This preliminary action reduces write amplification by pre-organizing data according to its access characteristics, while the classification process itself is designed to be efficient to minimize processing time overhead.
Data Source
AI summary
Disclosed is an operation method of a storage device supporting a multi-stream, which includes receiving an input/output request from an external host, generating a plurality of stream identifier candidates by performing machine learning on the input/output request based on a plurality of machine learning models that are based on different machine learning algorithms, generating a model ratio based on a characteristic of the input/output request, applying the model ratio to the plurality of stream identifier candidates to allocate a final stream identifier for the input/output request, and storing write data corresponding to the input/output request in a nonvolatile memory device of the storage device based on the final stream identifier.


