# Data Placement Using a Classifier for SLC/QLC Hybrid SSDs
## 3 A Classifier-Based Data Placement  
The data placement scheme we propose is illustrated in Figure 2, outlining a systematic process for handling write requests in hybrid SSDs. At the core of this scheme is a feature collector, a crucial component that initiates the process by capturing a range of basic features from each incoming write request. These basic features include essential information like the timestamp, logical block address, size, and type of the request. Going beyond these basic parameters, the feature collector also delves into more nuanced statistical or relational aspects that paint a clearer picture of the I/O workload patterns. It analyzes factors such as the frequency of requests, intervals between requests, and both the average and standard deviation of these intervals and the sizes of I/O requests. This deeper analysis allows the system to recognize and understand the nature of the workload over a given window of time. Another key aspect of our approach is the tracking of the most recent placement location for each write request, either in the SLC cache or the QLC region. This tracking is based on the understanding that data requests exhibiting similar characteristics often follow comparable access patterns. Such insights are invaluable in predicting future data accesses. In addition to these external features, internal SSD char  
Figure 2: Data placement using a binary classifier. into account. These include the total SSD capacity, the ratio of the SLC cache to the QLC region, and the overall space utilization of the SSD. These internal features provide a comprehensive view of the SSD's operational state, which is critical in making informed data placement decisions. To ensure the efficacy of our feature set, we employ information gain as a metric to evaluate the relevance and quality of each feature. Through this process, we iteratively refine our feature set, adding only the most valuable features. This iterative process continues until there is no further improvement in classification accuracy. The final, optimized set of features that we derive through this meticulous process is summarized in Table 2.  
The training module of our data placement scheme plays a pivotal role in refining the decision-making process. It utilizes the eight carefully gathered features and employs a binary labeling system for the training data, where a '1' represents a cache hit and a '0' denotes a cache miss. These labels are crucial for guiding the training of the model to accurately predict future data access patterns. At the heart of the training module is an Artificial Neural Network (ANN), a sophisticated machine-learning framework known for its ability to model complex patterns in data. The ANN in our scheme is composed of several layers, each housing multiple neurons. This multi-layered structure of the ANN, along with its ability to apply non-linear activation functions, grants it the capability to identify intricate patterns in data that are not readily apparent or linearly separable [21; 22; 23]. This feature of ANNs is particularly beneficial for our data placement scheme, as it enables the model to discern the optimal locations for data placement, therefore effectively reducing I/O latency, a critical factor in SSD performance. Our specific ANN model includes one input layer, two hidden layers, and one output layer designed for binary classification. For the activation function in the input and hidden layers, we use the Rectified Linear Unit (ReLU). ReLU is chosen for its renowned performance benefits and its ability to facilitate fast learning in neural networks [24]. In the output layer, we employ the Sigmoid function, which is well-suited for binary classification tasks due to its ability to map inputs to a binary output effectively. To ensure that the model remains accurate and relevant to current data access patterns, we have implemented a routine for updating the model. The ANN model is refreshed daily during the early hours, a time typically characterized by lower system activity.