Article Preview
Top1. Introduction
With the upcoming IoE revolution, the amount of data transferred over digital universe grows exponentially, which is called data explosion. Gartner predicts 20.8 billion IoT (Internet of Things) devices will be connected by 2020 (Cai et al., 2016), which is five times more than the previous year. The billions of IoE devices communicate with each other while generating massive amount of data that could be used for deriving meaningful information (Liu et al., 2015; Charmonman et al., 2015). Moreover, the tens of billions of devices which are connected by network generate massive data and the data exploration problem is directly related to the storage technologies.
Figure 1 shows the storage system for fast storing and processing of large scale data from various types of devices, such as smart cars, smart homes, smart medical devices, in IoE environment. The storage system is composed of servers which consist of multiple SSDs to improve the latency and throughput. As illustrated in the figure, billions of IoE devices are connected by network and transmit large scale data to the storage systems. Then the aggregated sensor data should be rapidly processed for real-time analysis and various application services. Thus, the improvement of the throughput and latency of the storage systems is the key issue of high performance IoE services.
In these days, SSDs are rapidly adopted since they have a lot of benefits such as fascinating performance, low power consumption, shock resilience and light weight. Nowadays, they have become a common storage devices by replacing HDDs. Recently, efficient data management on multiple SSDs have started having much attention with the emergence of high performance storage systems including All-Flash-Arrays (AFA) which are composed of several SSDs to meet the performance and capacity requirements (Yi et al., 2015).
Figure 1. High performance storage systems based on SSD array for IoE environment
However, SSDs bear some obvious drawbacks like poor random write performance, erase-before-write issue, increasing error rate, and wear-out problems. The main reason of these drawback is due to the write amplification (WA) problem which degrades I/O performance and shortens the lifetime of SSDs under random write workloads (Sun et al., 2013; Yang and Zhu, 2015). The WA problem is caused by the gap of operation units between the program and erase in NAND flash memories. The erase operation is conducted in a unit of blocks composed of several pages which is a programming unit. This characteristic makes SSDs perform out-of-place update and remove outdated data by triggering garbage collection (GC) periodically. Moreover, the reliability of NAND flash memories rapidly decrease as the SSD gets older because they have a predetermined number of P/E cycles and the aging strongly affects the bit error rate (BER) (Kim et al., 2016; Jiang et al., 2014).