{'fraction_non_alphanumeric': 0.024926686217008796, 'fraction_numerical': 0.0, 'mean_word_length': 4.7112970711297075, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Machine-Learning-based Data Classifier to Reduce the Write Amplification in SSDs

Solid-state drives (SSDs) that consist of flash memory have the advantages of non-volatility, fast speed, shock resistance, low-power consumption, and small size. Two critical characteristics of flash memory are that it does not support in-place updates, and it must write data in units of a page and erase data in units of a block. Due to the two characteristics, when a block is selected as a victim block to erase, we need to copy the remaining valid pages from the victim block to another free block and the additional copy overhead is called write amplification (WA). Therefore, how to reduce the write amplification (WA) is a crucial issue for SSDs. By performing data classification, it is effective to concentrate the invalid pages in specific blocks and decrease the distribution of invalid pages in the flash memory. The advantage is that we can reduce the write amplification due to the valid pages copied. In the paper, we will propose a machine-learning-based data classifier to classify the written data. Data with similar characteristics will be eventually written in the same group of data blocks in flash memory. Through such a design, it can improve the performance of SSDs by concentrating the invalid pages in the same block and reduce the write amplification.