Digital Library[ Search Result ]
Overcoming a Zone Reclaiming Overhead with Partial-Zone Reclaiming
Inho Song, Wonjin Lee, Jaedong Lee, Seehwan Yoo, Jongmoo Choi
http://doi.org/10.5626/JOK.2024.51.2.115
Solid State Drive (SSD) suffers unpredictable IO latency and space amplification due to the traditional block interface. Zoned Namespace, which is a more flash friendly interface, replaced the block interface bringing reliable IO latency and increasing both the capacity and lifespan of SSDs. The benefit of the zone interface is not free. A Zoned Namespace (ZNS) SSD delegates the garbage collection and data placement responsibility to the host, which requires host-level garbage collection called "zone reclaiming". At the same time, ZNS SSD exposes a larger zone to the host to exploit the device parallelism. The increased number of blocks to a zone gives high parallelism; however, the overhead of the zone reclaiming process becomes high with the increased size of the zone. Eventually, the host neither expects predictable latency nor optimal performance due to the background process. This paper tackles the overhead of the zone reclaiming process by introducing "Partial Zone Reclaiming" method. Partial zone reclaiming delays the ongoing reclaiming process and handles the host request that is on the fly. In our experiment, partial zone reclaiming not only improved the host request latency by up to 8% on average, but also reduced zone reclaiming time by up to 41%.
Addressing Write-Warm Pages in OLTP Workloads
Kyong-Shik Lee, Mijin An, Sang-Won Lee
http://doi.org/10.5626/JOK.2023.50.11.1002
One of the most important purposes of buffer management policies is to cache frequently accessed data in the buffer pool to minimize disk I/O. However, even if frequently referenced pages are effectively stored, a small number of pages can still result in excessive disk I.O. This is because of write-warm pages, which are repeatedly fetched and evicted from the buffer pool. In this paper, we introduce a “(Write-)Warm Page Thrashing” problem and confirm the existence of write-warm pages. Specifically, we found that 10% of flushed pages accounted for 41% of writes. This could degrade the performance, particularly for flash memory devices with slow write speeds. Therefore, a new buffer management policy is required to detect and prevent such thrashing problem.
ESP: Improving Performance and Lifetime of High-Capacity 3D Flash Storage Using an Erase-Free Subpage Programming Technique
http://doi.org/10.5626/JOK.2023.50.1.1
Recent high-capacity 3D NAND flash devices have large page sizes. Although large pages are useful in increasing flash capacity, they can degrade both the performance and lifetime of flash storage systems when small writes are dominant. We propose a new NAND programming scheme, called erase-free sub-page programming (ESP), which allows the same page to be programmed multiple times for small writes without the intervention of the erase operation. By avoiding internal fragmentation, the ESP scheme reduces the overhead of garbage collection for large-page NAND storage. Based on the proposed ESP scheme with an adaptive retention management technique, we implemented an ESP-aware FTL(subFTL) and performed comprehensive evaluations using various benchmarks and workloads. The experimental results showed that an ESP-aware FTL could improve the IOPS and lifetime by up to 74% and 177%, respectively.
Database Tuning Techniques to Mitigate SSD-internal Interference among Multi-tenant Databases
Seung-Jin Oh, Jong-Hyeok Park, Sang-Won Lee
http://doi.org/10.5626/JOK.2022.49.5.388
In a multi-tenant environment, multi-tenants share an SSD(Solid State Drive) as their storage device. Multi-tenants with different IO characteristics can interfere with each other at the channel level in terms of storage performance. In this paper, to harness the full potential of channel level parallelism of SSD, we proposed two tuning techniques: page size alignment and increasing readahead size. We measured transaction throughput and latency (execution time) while running Linkbench and TPC-H simultaneously in Docker container-based environment. Our evaluation showed that the page size alignment technique reduced unnecessary data padding/division overhead and prevented unnecessary IO requests from occupying the channel to mitigate interference, improving the performance of the Linkbench and the TPC-H. However, increasing readahead size raised SSD internal channel occupancy of sequential read requests and reduced the interference of the Linkbench, whose request size was small and access type was random. Thus, it only improved the TPC-H in terms of query execution performance.
Improving Performance of Flash Storage Using Restricted Copyback
Duwon Hong, Seulgi Shin, Jihong Kim
http://doi.org/10.5626/JOK.2019.46.8.726
In case of modern flash-based SSDs, the performance overhead of internal data migrations is dominated by the data transfer time and not by the flash program time as in old SSDs. In order to mitigate the performance impact of data migrations, we propose rcopyback, a restricted version of copyback. Rcopyback works in a manner similar to the original copyback except that only n consecutive copybacks are allowed. By limiting the number of successive copybacks, the version guarantees internal migration of data using rcopyback without any reliability problem. In order to take a full advantage of rcopyback, we developed a rcopyback-aware FTL, rcFTL, which intelligently decides whether rcopyback should be used or not by exploiting varying host workloads. Our evaluation results show that rcFTL can improve the overall I/O throughput by 54% on average over an existing FTL which does not use copybacks.
qtar: Design and Implementation of an Optimized tar Command with FTL-level Remapping
Jeongseok Ryoo, Sangwook Shane Hahn, Jihong Kim
http://doi.org/10.5626/JOK.2018.45.1.9
Tar is a Linux command that combines several files into a single file. Combining multiple small files into large files increases the compression efficiency and data transfer speed. However, tar has a problem in that smaller target files, result in a lower performance. In this paper, we show that this performance degradation occurs when tar reads the data from the target files and propose qtar (quick tar) to solve this problem via flash-level remapping. When the size of an I/O request is less than 1 MB, the I/O performance decreases proportionally to the decrease in size of the I/O request. Since tar reads the data of files one by one, a smaller file size results in a lower performance. Therefore, the remapping technique is implemented in qtar to read data from the target files at the maximum I/O size regardless of the size of each file. Our evaluations show that the execution time with qtar is reduced by up to 3.4 times compared to that with tar.
A Cross Layer Optimization Technique for Improving Performance of MLC NAND Flash-Based Storages
Jisung Park, Sungjin Lee, Jihong Kim
http://doi.org/10.5626/JOK.2017.44.11.1130
The multi-leveling technique that stores multiple bits in a single memory cell has significantly improved the density of NAND flash memory along with shrinking processes. However, because of the side effects of the multi-leveling technique, the average write performance of MLC NAND flash memory is degraded more than twice that of SLC NAND flash memory. In this paper, we introduce existing cross-layer optimization techniques proposed to improve the performance of MLC NAND flash-based storages, and propose a new integration technique that overcomes the limitations of existing techniques by exploiting their complementarity. By fully exploiting the performance asymmetry in MLC NAND flash devices at the flash translation layer, the proposed technique can handle many write requests with the performance of SLC NAND flash devices, thus significantly improving the performance of NAND flash-based storages. Experimental results show that the proposed technique improves performance 39% on average over individual techniques.
Garbage Collection Synchronization Technique for Improving Tail Latency of Cloud Databases
Seungwook Han, Sangwook Shane Hahn, Jihong Kim
http://doi.org/10.5626/JOK.2017.44.8.767
In a distributed system environment, such as a cloud database, the tail latency needs to be kept short to ensure uniform quality of service. In this paper, through experiments on a Cassandra database, we show that long tail latency is caused by a lack of memory space because the database cannot receive any request until free space is reclaimed by writing the buffered data to the storage device. We observed that, since the performance of the storage device determines the amount of time required for writing the buffered data, the performance degradation of Solid State Drive (SSD) due to garbage collection results in a longer tail latency. We propose a garbage collection synchronization technique, called SyncGC, that simultaneously performs garbage collection in the java virtual machine and in the garbage collection in SSD concurrently, thus hiding garbage collection overheads in the SSD. Our evaluations on real SSDs show that SyncGC reduces the tail latency of 99.9th and, 99.99th-percentile by 31% and 36%, respectively.
An Efficient Cleaning Scheme for File Defragmentation on Log-Structured File System
Jonggyu Park, Dong Hyun Kang, Euiseong Seo, Young Ik Eom
When many processes issue write operations alternately on Log-structured File System (LFS), the created files can be fragmented on the file system layer although LFS sequentially allocates new blocks of each process. Unfortunately, this file fragmentation degrades read performance because it increases the number of block I/Os. Additionally, read-ahead operations which increase the number of data to request at a time exacerbates the performance degradation. In this paper, we suggest a new cleaning method on LFS that minimizes file fragmentation. During a cleaning process of LFS, our method sorts valid data blocks by inode numbers before copying the valid blocks to a new segment. This sorting re-locates fragmented blocks contiguously. Our cleaning method experimentally eliminates 60% of file fragmentation as compared to file fragmentation before cleaning. Consequently, our cleaning method improves sequential read throughput by 21% when read-ahead is applied.
Dual Write Buffer Algorithm for Improving Performance and Lifetime of SSDs
Se Jun Han, Dong Hyun Kang, Young Ik Eom
In this paper, we propose a hybrid write buffer architecture comprised of DRAM and NVRAM on SSD and a write buffer algorithm for the hybrid write buffer architecture. Unlike other write buffer algorithms, the proposed algorithm considers read pages as well as write pages to improve the performance of storage devices because most actual workloads are read-write mixed workloads. Through effectively managing NVRAM pages, the proposed algorithm extends the endurance of SSD by reducing the number of erase operations on NAND flash memory. Our experimental results show that our algorithm improved the buffer hit ratio by up to 116.51% and reduced the number of erase operations of NAND flash memory by up to 56.66%.
Search

Journal of KIISE
- ISSN : 2383-630X(Print)
- ISSN : 2383-6296(Electronic)
- KCI Accredited Journal
Editorial Office
- Tel. +82-2-588-9240
- Fax. +82-2-521-1352
- E-mail. chwoo@kiise.or.kr