Full Text:   <3241>

Summary:  <395>

CLC number: TP302

On-line Access: 2023-05-31

Received: 2022-07-25

Revision Accepted: 2023-05-31

Crosschecked: 2022-11-16

Cited: 0

Clicked: 1839

Citations:  Bibtex RefMan EndNote GB/T7714

 ORCID:

Guangyan ZHANG

https://orcid.org/0000-0002-3480-5902

Junchao CHEN

https://orcid.org/0000-0002-6273-075X

-   Go to

Article info.
Open peer comments

Frontiers of Information Technology & Electronic Engineering  2023 Vol.24 No.5 P.637-658

http://doi.org/10.1631/FITEE.2200317


A survey on design and application of open-channel solid-state drives


Author(s):  Junchao CHEN, Guangyan ZHANG, Junyu WEI

Affiliation(s):  Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China; more

Corresponding email(s):   gyzh@tsinghua.edu.cn

Key Words:  Domain-specific storage, Flash translation layer, Garbage collection, Internal parallelism, Open-channel solid-state drives (OCSSDs)


Junchao CHEN, Guangyan ZHANG, Junyu WEI. A survey on design and application of open-channel solid-state drives[J]. Frontiers of Information Technology & Electronic Engineering, 2023, 24(5): 637-658.

@article{title="A survey on design and application of open-channel solid-state drives",
author="Junchao CHEN, Guangyan ZHANG, Junyu WEI",
journal="Frontiers of Information Technology & Electronic Engineering",
volume="24",
number="5",
pages="637-658",
year="2023",
publisher="Zhejiang University Press & Springer",
doi="10.1631/FITEE.2200317"
}

%0 Journal Article
%T A survey on design and application of open-channel solid-state drives
%A Junchao CHEN
%A Guangyan ZHANG
%A Junyu WEI
%J Frontiers of Information Technology & Electronic Engineering
%V 24
%N 5
%P 637-658
%@ 2095-9184
%D 2023
%I Zhejiang University Press & Springer
%DOI 10.1631/FITEE.2200317

TY - JOUR
T1 - A survey on design and application of open-channel solid-state drives
A1 - Junchao CHEN
A1 - Guangyan ZHANG
A1 - Junyu WEI
J0 - Frontiers of Information Technology & Electronic Engineering
VL - 24
IS - 5
SP - 637
EP - 658
%@ 2095-9184
Y1 - 2023
PB - Zhejiang University Press & Springer
ER -
DOI - 10.1631/FITEE.2200317


Abstract: 
Compared with traditional solid-state drives (SSDs), open-channel SSDs (OCSSDs) expose their internal physical layout and provide a host-based flash translation layer (FTL) that allows host-side software to control the internal operations such as garbage collection (GC) and input/output (I/O) scheduling. In this paper, we comprehensively survey research works built on OCSSDs in recent years. We show how they leverage the features of OCSSDs to achieve high throughput, low latency, long lifetime, strong performance isolation, and high resource utilization. We categorize these efforts into five groups based on their optimization methods: adaptive interface customizing, rich FTL co-designing, internal parallelism exploiting, rational I/O scheduling, and efficient GC processing. We discuss the strengths and weaknesses of these efforts and find that almost all these efforts face a dilemma between performance effectiveness and management complexity. We hope that this survey can provide fundamental knowledge to researchers who want to enter this field and further inspire new ideas for the development of OCSSDs.

开放通道固态硬盘的设计与应用研究综述

陈军超1,2,3,张广艳1,3,魏钧宇1,3
1清华大学计算机科学与技术系,中国北京市,100084
2西安卫星测控中心,中国西安市,710043
3清华大学北京信息科学与技术国家研究中心,中国北京市,100084
摘要:与传统的固态硬盘(SSDs)相比,开放通道固态硬盘(OCSSDs)向外暴露了它们的内部物理布局,并提供了一个基于主机端的闪存转换层(FTL),使得它允许主机端软件根据具体场景和需求控制其内部操作,如垃圾回收(GC)和输入/输出(I/O)调度等。本文对近年来基于OCSSDs的研究工作进行了全面的调研,总结了它们如何利用OCSSDs的特性来实现高吞吐量、低访问延迟、长寿命、强性能隔离和高资源利用率等目标,并从接口定制、FTL协同设计、内部并行性挖掘、I/O调度和GC处理等五个方面对这些工作进行了深入的研究分析。我们讨论了目前研究工作的优势和不足,并发现几乎所有的这些研究方法都面临着性能有效性和管理复杂性之间的困境。本文旨在通过开展综述调研能为希望进入这一领域的研究人员提供关于OCSSDs的基础知识,并进一步激发他们在相关研究工作中的新想法。

关键词:领域专用存储;闪存转换层;垃圾回收;内部并行性;开放通道固态硬盘(OCSSDs)

Darkslateblue:Affiliate; Royal Blue:Author; Turquoise:Article

Reference

[1]Bhimani J, Yang JP, Yang ZY, et al., 2017. Enhancing SSDs with multi-stream: what? why? how? IEEE 36th Int Performance Computing and Communications Conf, p.1-2.

[2]Bjørling M, Gonzalez J, Bonnet P, 2017. LightNVM: the Linux open-channel SSD subsystem. 15th USENIX Conf on File and Storage Technologies, p.359-374.

[3]Chen J, Wang Y, Zhou AC, et al., 2019. PATCH: process-variation-resilient space allocation for open-channel SSD with 3D flash. Design, Automation & Test in Europe Conf & Exhibition, p.216-221.

[4]Chiueh TC, Tsao W, Sun HC, et al., 2014. Software orchestrated flash array. Proc Int Conf on Systems and Storage, p.1-11.

[5]Du YZ, Gu JH, Xiao ZZ, et al., 2020. SSW: a strictly sequential writing method for open-channel SSD. J Syst Archit, 109:101828.

[6]González J, Bjørling M, 2017. Multi-tenant I/O isolation with open-channel SSDs. Non-Volatile Memories Workshop, p.1-2.

[7]González J, Bjørling M, Lee S, et al., 2016. Application-driven flash translation layers on open-channel SSDs. Proc 7th Non-Volatile Memories Workshop, p.1-2.

[8]Han K, Gwak H, Shin D, et al., 2021. ZNS+: advanced zoned namespace interface for supporting in-storage zone compaction. 15th USENIX Symp on Operating Systems Design and Implementation, p.147-162.

[9]Hao MZ, Soundararajan G, Kenchammana-Hosekote DR, et al., 2016. The tail at store: a revelation from millions of hours of disk and SSD deployments. 14th USENIX Conf on File and Storage Technologies, p.263-276.

[10]Hu Y, Jiang H, Feng D, et al., 2013. Exploring and exploiting the multilevel parallelism inside SSDs for improved performance and endurance. IEEE Trans Comput, 62(6):1141-1155.

[11]Huang J, Badam A, Caulfield L, et al., 2017. FlashBlox: achieving both performance isolation and uniform lifetime for virtualized SSDs. 15th USENIX Conf on File and Storage Technologies, p.375-390.

[12]Jiang TY, Zhang GY, Huang ZC, et al., 2021. FusionRAID: achieving consistent low latency for commodity SSD arrays. 19th USENIX Conf on File and Storage Technologies, p.355-370.

[13]Kang W, Shin D, Yoo S, 2017. Reinforcement learning-assisted garbage collection to mitigate long-tail latency in SSD. ACM Trans Embed Comput Syst, 16(5s):134.

[14]Lee C, Sim D, Hwang JY, et al., 2015. F2FS: a new file system for flash storage. 13th USENIX Conf on File and Storage Technologies, p.273-286.

[15]Lee S, Liu M, Jun SW, et al., 2016. Application-managed flash. 14th USENIX Conf on File and Storage Technologies, p.339-353.

[16]Lee S, Han K, Shin D, 2019. Host-level workload-aware budget compensation I/O scheduling for open-channel SSDs. IEEE Non-Volatile Memory Systems and Applications Symp, p.1-2.

[17]Li HC, Putra ML, Shi R, et al., 2021. IODA: a host/device co-design for strong predictability contract on modern flash storage. Proc ACM SIGOPS 28th Symp on Operating Systems Principles, p.263-279.

[18]Lu YY, Shu JW, Zheng WM, 2013. Extending the lifetime of flash-based storage through reducing write amplification from file systems. 11th USENIX Conf on File and Storage Technologies, p.257-270.

[19]Lu YY, Shu JW, Zhang JC, 2019a. Mitigating synchronous I/O overhead in file systems on open-channel SSDs. ACM Tran Stor, 15(3):17.

[20]Lu YY, Zhang JC, Yang Z, et al., 2019b. OCStore: accelerating distributed object storage with open-channel SSDs. IEEE 39th Int Conf on Distributed Computing Systems, p.271-281.

[21]Marmol L, Sundararaman S, Talagala N, et al., 2015. NVMKV: a scalable, lightweight, FTL-aware key-value store. USENIX Annual Technical Conf, p.207-219.

[22]Mathur A, Cao MM, Bhattacharya S, et al., 2007. The new Ext4 filesystem: current status and future plans. Proc Linux Symp, p.21-33.

[23]NVM Express, Inc., 2023. NVM Express. https://nvmexpress.org/

[24]Oh G, Ahn S, 2021. Implementation of memory efficient flash translation layer for open-channel SSDs. Int J Adv Smart Converg, 10(1):142-150.

[25]O’Neil P, Cheng E, Gawlick D, et al., 1996. The log-structured merge-tree (LSM-tree). Acta Inform, 33(4):351-385.

[26]Ouyang J, Lin SD, Jiang S, et al., 2014. SDF: software-defined flash for web-scale Internet storage systems. Proc 19th Int Conf on Architectural Support for Programming Languages and Operating Systems, p.471-484.

[27]Park SY, Seo E, Shin JY, et al., 2010. Exploiting internal parallelism of flash-based SSDs. IEEE Comput Archit Lett, 9(1):9-12.

[28]Picoli IL, Pasco CV, Jónsson B, et al., 2017. uFLIP-OC: understanding flash I/O patterns on open-channel solid-state drives. Proc 8th Asia-Pacific Workshop on Systems, Article 20.

[29]Picoli IL, Hedam N, Bonnet P, et al., 2020. Open-channel SSD (what is it good for). 10th Conf on Innovative Data Systems Research, p.1-8.

[30]Qin HW, Feng D, Tong W, et al., 2019. QBLK: towards fully exploiting the parallelism of open-channel SSDs. Design, Automation & Test in Europe Conf Exhibition, p.1064-1069.

[31]Qin HW, Feng D, Tong W, et al., 2021a. Better atomic writes by exposing the flash out-of-band area to file systems. Proc 22nd ACM SIGPLAN/SIGBED Int Conf on Languages, Compilers, and Tools for Embedded Systems, p.12-23.

[32]Qin HW, Feng D, Tong W, et al., 2021b. QBLKe: host-side flash translation layer management for open-channel SSDs. J Syst Archit, 119:102233.

[33]Qiu YH, Yin WB, Wang LL, 2021. A high-performance open-channel open-way NAND flash controller architecture. 31st Int Conf on Field-Programmable Logic and Applications, p.91-98.

[34]Reidys B, Sun JH, Badam A, et al., 2022. BlockFlex: enabling storage harvesting with software-defined flash in modern cloud platforms. 16th USENIX Symp on Operating Systems Design and Implementation, p.17-33.

[35]Rodeh O, Bacik J, Mason C, 2013. BTRFS: the Linux B-tree filesystem. ACM Trans Stor, 9(3):9.

[36]Rosenblum M, Ousterhout JK, 1991. The design and implementation of a log-structured file system. Proc 13th ACM Symp on Operating Systems Principles, p.1-15.

[37]Shen ZY, Chen F, Jia YC, et al., 2017. DIDACache: a deep integration of device and application for flash based key-value caching. 15th USENIX Conf on File and Storage Technologies, p.391-405.

[38]Shen ZY, Chen F, Yadgar G, et al., 2022. Prism-SSD: a flexible storage interface for SSDs. IEEE Trans Comput Aided Des Integr Circ Syst, 41(4):882-896.

[39]Son S, Ahn S, 2021. Optimizing garbage collection overhead of host-level flash translation layer for journaling filesystems. Int J Int Broadcast Commun, 13(2):27-35.

[40]The Open-Channel SSD Community, 2023. LightNVM Open Channel Specification. https://openchannelssd.readthedocs.io/en/latest/specification

[41]Wang HT, Li ZH, Zhang X, et al., 2018. OC-Cache: an open-channel SSD based cache for multi-tenant systems. IEEE 37th Int Performance Computing and Communications Conf, p.1-6.

[42]Wang P, Sun GY, Jiang S, et al., 2014. An efficient design and implementation of LSM-tree based key-value store on open-channel SSD. Proc 9th European Conf on Computer Systems, Article 16.

[43]Wang Y, Zhang MX, Yang X, et al., 2019. A thermal-aware physical space reallocation for open-channel SSD with 3-D flash memory. IEEE Trans Comput Aided Des Integr Circ Syst, 38(4):617-627.

[44]Wang Y, Huang JF, Chen J, et al., 2022. PVSensing: a process-variation-aware space allocation strategy for 3D NAND flash memory. IEEE Trans Comput Aided Des Integr Circ Syst, 41(5):1302-1315.

[45]Weil SA, Brandt SA, Miller EL, et al., 2006. Ceph: a scalable, high-performance distributed file system. Proc 7th Symp on Operating Systems Design and Implementation, p.307-320.

[46]Wu SM, Lin KH, Chang LP, 2021. Integrating LSM trees with multichip flash translation layer for write-efficient KVSSDs. IEEE Trans Comput Aided Des Integr Circ Syst, 40(1):87-100.

[47]Yan SQ, Li HC, Hao MZ, et al., 2017. Tiny-tail flash: near-perfect elimination of garbage collection tail latencies in NAND SSDs. 15th USENIX Conf on File and Storage Technologies, p.15-28.

[48]Yang JP, Plasson N, Gillis G, et al., 2014. Don’t stack your log on my log. 2nd Workshop on Interactions of NVM/Flash with Operating Systems and Workloads, p.1-10.

[49]Yang LH, Zhang T, Fan YL, et al., 2019. Exploiting internal parallelism of SSD for hash join. Chin J Electron, 28(5):889-898.

[50]Zhang JC, Shu JW, Lu YY, 2016. ParaFS: a log-structured file system to exploit the internal parallelism of flash devices. USENIX Annual Technical Conf, p.87-100.

[51]Zhang JC, Lu YY, Shu JW, et al., 2017. FlashKV: accelerating KV performance with open-channel SSDs. ACM Trans Embed Comput Syst, 16(5s):1-19.

[52]Zhang XY, Zhu F, Li S, et al., 2021. Optimizing performance for open-channel SSDs in cloud storage system. IEEE Int Parallel and Distributed Processing Symp, p.902-911.

Open peer comments: Debate/Discuss/Question/Opinion

<1>

Please provide your name, email address and a comment





Journal of Zhejiang University-SCIENCE, 38 Zheda Road, Hangzhou 310027, China
Tel: +86-571-87952783; E-mail: cjzhang@zju.edu.cn
Copyright © 2000 - 2024 Journal of Zhejiang University-SCIENCE