
FOLLOWUS
1.Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China
2.Xi'an Satellite Control Center, Xi'an 710043, China
3.Beijing National Research Center for Information Science and Technology, Tsinghua University, Beijing 100084, China
‡ Corresponding author
收稿:2022-07-25,
录用:2022-11-16,
纸质出版:2023-05-0
Scan QR Code
陈军超, 张广艳, 魏钧宇. 开放通道固态硬盘的设计与应用研究综述[J]. 信息与电子工程前沿(英文), 2023,24(5):637-658.
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.
陈军超, 张广艳, 魏钧宇. 开放通道固态硬盘的设计与应用研究综述[J]. 信息与电子工程前沿(英文), 2023,24(5):637-658. DOI: 10.1631/FITEE.2200317.
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. DOI: 10.1631/FITEE.2200317.
与传统的固态硬盘(SSDs)相比,开放通道固态硬盘(OCSSDs)向外暴露了它们的内部物理布局,并提供了一个基于主机端的闪存转换层(FTL),使得它允许主机端软件根据具体场景和需求控制其内部操作,如垃圾回收(GC)和输入/输出(I/O)调度等。本文对近年来基于OCSSDs的研究工作进行了全面的调研,总结了它们如何利用OCSSDs的特性来实现高吞吐量、低访问延迟、长寿命、强性能隔离和高资源利用率等目标,并从接口定制、FTL协同设计、内部并行性挖掘、I/O调度和GC处理等五个方面对这些工作进行了深入的研究分析。我们讨论了目前研究工作的优势和不足,并发现几乎所有的这些研究方法都面临着性能有效性和管理复杂性之间的困境。本文旨在通过开展综述调研能为希望进入这一领域的研究人员提供关于OCSSDs的基础知识,并进一步激发他们在相关研究工作中的新想法。
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.
Bhimani J , Yang JP , Yang ZY , et al. , 2017 . Enhancing SSDs with multi-stream: what? why? how? IEEE 36 th Int Performance Computing and Communications Conf , p. 1 - 2 . doi: 10.1109/PCCC.2017.8280493 http://doi.org/10.1109/PCCC.2017.8280493
Bjørling M , Gonzalez J , Bonnet P , 2017 . LightNVM: the Linux open-channel SSD subsystem . 15 th USENIX Conf on File and Storage Technologies , p. 359 - 374 .
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 . doi: 10.23919/DATE.2019.8715197 http://doi.org/10.23919/DATE.2019.8715197
Chiueh TC , Tsao W , Sun HC , et al. , 2014 . Software orchestrated flash array . Proc Int Conf on Systems and Storage , p. 1 - 11 . doi: 10.1145/2611354.2611360 http://doi.org/10.1145/2611354.2611360
Du YZ , Gu JH , Xiao ZZ , et al. , 2020 . SSW: a strictly sequential writing method for open-channel SSD . J Syst Archit , 109 : 101828 . doi: 10.1016/j.sysarc.2020.101828 http://doi.org/10.1016/j.sysarc.2020.101828
González J , Bjørling M , 2017 . Multi-tenant I/O isolation with open-channel SSDs . Non-Volatile Memories Workshop , p. 1 - 2 .
González J , Bjørling M , Lee S , et al. , 2016 . Application-driven flash translation layers on open-channel SSDs . Proc 7 th Non-Volatile Memories Workshop , p. 1 - 2 .
Han K , Gwak H , Shin D , et al. , 2021 . ZNS+: advanced zoned namespace interface for supporting in-storage zone compaction . 15 th USENIX Symp on Operating Systems Design and Implementation , p. 147 - 162 .
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 . 14 th USENIX Conf on File and Storage Technologies , p. 263 - 276 .
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 . doi: 10.1109/TC.2012.60 http://doi.org/10.1109/TC.2012.60
Huang J , Badam A , Caulfield L , et al. , 2017 . FlashBlox: achieving both performance isolation and uniform lifetime for virtualized SSDs . 15 th USENIX Conf on File and Storage Technologies , p. 375 - 390 .
Jiang TY , Zhang GY , Huang ZC , et al. , 2021 . FusionRAID: achieving consistent low latency for commodity SSD arrays . 19 th USENIX Conf on File and Storage Technologies , p. 355 - 370 .
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 . doi: 10.1145/3126537 http://doi.org/10.1145/3126537
Lee C , Sim D , Hwang JY , et al. , 2015 . F2FS: a new file system for flash storage . 13 th USENIX Conf on File and Storage Technologies , p. 273 - 286 .
Lee S , Liu M , Jun SW , et al. , 2016 . Application-managed flash . 14 th USENIX Conf on File and Storage Technologies , p. 339 - 353 .
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 . doi: 10.1109/NVMSA.2019.8863515 http://doi.org/10.1109/NVMSA.2019.8863515
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 28 th Symp on Operating Systems Principles , p. 263 - 279 . doi: 10.1145/3477132.3483573 http://doi.org/10.1145/3477132.3483573
Lu YY , Shu JW , Zheng WM , 2013 . Extending the lifetime of flash-based storage through reducing write amplification from file systems . 11 th USENIX Conf on File and Storage Technologies , p. 257 - 270 .
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 . doi: 10.1145/3319369 http://doi.org/10.1145/3319369
Lu YY , Zhang JC , Yang Z , et al. , 2019b . OCStore: accelerating distributed object storage with open-channel SSDs . IEEE 39 th Int Conf on Distributed Computing Systems , p. 271 - 281 . doi: 10.1109/ICDCS.2019.00035 http://doi.org/10.1109/ICDCS.2019.00035
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 .
Mathur A , Cao MM , Bhattacharya S , et al. , 2007 . The new Ext4 filesystem: current status and future plans . Proc Linux Symp , p. 21 - 33 .
NVM Express, Inc. , 2023 . NVM Express . https://nvmexpress.org/ https://nvmexpress.org/
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 . doi: 10.7236/IJASC.2021.10.1.142 http://doi.org/10.7236/IJASC.2021.10.1.142
O’Neil P , Cheng E , Gawlick D , et al. , 1996 . The log-structured merge-tree (LSM-tree) . Acta Inform , 33 ( 4 ): 351 - 385 . doi: 10.1007/s002360050048 http://doi.org/10.1007/s002360050048
Ouyang J , Lin SD , Jiang S , et al. , 2014 . SDF: software-defined flash for web-scale Internet storage systems . Proc 19 th Int Conf on Architectural Support for Programming Languages and Operating Systems , p. 471 - 484 . doi: 10.1145/2541940.2541959 http://doi.org/10.1145/2541940.2541959
Park SY , Seo E , Shin JY , et al. , 2010 . Exploiting internal parallelism of flash-based SSDs . IEEE Comput Archit Lett , 9 ( 1 ): 9 - 12 . doi: 10.1109/L-CA.2010.3 http://doi.org/10.1109/L-CA.2010.3
Picoli IL , Pasco CV , Jónsson B , et al. , 2017 . uFLIP-OC: understanding flash I/O patterns on open-channel solid-state drives . Proc 8 th Asia-Pacific Workshop on Systems , Article 20 . doi: 10.1145/3124680.3124741 http://doi.org/10.1145/3124680.3124741
Picoli IL , Hedam N , Bonnet P , et al. , 2020 . Open-channel SSD (what is it good for) . 10 th Conf on Innovative Data Systems Research , p. 1 - 8 .
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 . doi: 10.23919/DATE.2019.8715049 http://doi.org/10.23919/DATE.2019.8715049
Qin HW , Feng D , Tong W , et al. , 2021a . Better atomic writes by exposing the flash out-of-band area to file systems . Proc 22 nd ACM SIGPLAN/SIGBED Int Conf on Languages, Compilers, and Tools for Embedded Systems , p. 12 - 23 . doi: 10.1145/3461648.3463843 http://doi.org/10.1145/3461648.3463843
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 . doi: 10.1016/j.sysarc.2021.102233 http://doi.org/10.1016/j.sysarc.2021.102233
Qiu YH , Yin WB , Wang LL , 2021 . A high-performance open-channel open-way NAND flash controller architecture . 31 st Int Conf on Field-Programmable Logic and Applications , p. 91 - 98 . doi: 10.1109/FPL53798.2021.00023 http://doi.org/10.1109/FPL53798.2021.00023
Reidys B , Sun JH , Badam A , et al. , 2022 . BlockFlex: enabling storage harvesting with software-defined flash in modern cloud platforms . 16 th USENIX Symp on Operating Systems Design and Implementation , p. 17 - 33 .
Rodeh O , Bacik J , Mason C , 2013 . BTRFS: the Linux B-tree filesystem . ACM Trans Stor , 9 ( 3 ): 9 . doi: 10.1145/2501620.2501623 http://doi.org/10.1145/2501620.2501623
Rosenblum M , Ousterhout JK , 1991 . The design and implementation of a log-structured file system . Proc 13 th ACM Symp on Operating Systems Principles , p. 1 - 15 . doi: 10.1145/121132.121137 http://doi.org/10.1145/121132.121137
Shen ZY , Chen F , Jia YC , et al. , 2017 . DIDACache: a deep integration of device and application for flash based key-value caching . 15 th USENIX Conf on File and Storage Technologies , p. 391 - 405 .
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 . doi: 10.1109/TCAD.2021.3072326 http://doi.org/10.1109/TCAD.2021.3072326
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 . doi: 10.7236/IJIBC.2021.13.2.27 http://doi.org/10.7236/IJIBC.2021.13.2.27
The Open-Channel SSD Community , 2023 . LightNVM Open Channel Specification . https://openchannelssd.readthedocs.io/en/latest/specification https://openchannelssd.readthedocs.io/en/latest/specification
Wang HT , Li ZH , Zhang X , et al. , 2018 . OC-Cache: an open-channel SSD based cache for multi-tenant systems . IEEE 37 th Int Performance Computing and Communications Conf , p. 1 - 6 . doi: 10.1109/PCCC.2018.8711079 http://doi.org/10.1109/PCCC.2018.8711079
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 9 th European Conf on Computer Systems , Article 16 . doi: 10.1145/2592798.2592804 http://doi.org/10.1145/2592798.2592804
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 . doi: 10.1109/TCAD.2018.2821442 http://doi.org/10.1109/TCAD.2018.2821442
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 . doi: 10.1109/TCAD.2021.3091957 http://doi.org/10.1109/TCAD.2021.3091957
Weil SA , Brandt SA , Miller EL , et al. , 2006 . Ceph: a scalable, high-performance distributed file system . Proc 7 th Symp on Operating Systems Design and Implementation , p. 307 - 320 .
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 . doi: 10.1109/TCAD.2020.2987781 http://doi.org/10.1109/TCAD.2020.2987781
Yan SQ , Li HC , Hao MZ , et al. , 2017 . Tiny-tail flash: near-perfect elimination of garbage collection tail latencies in NAND SSDs . 15 th USENIX Conf on File and Storage Technologies , p. 15 - 28 .
Yang JP , Plasson N , Gillis G , et al. , 2014 . Don’t stack your log on my log . 2 nd Workshop on Interactions of NVM/Flash with Operating Systems and Workloads , p. 1 - 10 .
Yang LH , Zhang T , Fan YL , et al. , 2019 . Exploiting internal parallelism of SSD for hash join . Chin J Electron , 28 ( 5 ): 889 - 898 . doi: 10.1049/cje.2019.06.009 http://doi.org/10.1049/cje.2019.06.009
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 .
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 . doi: 10.1145/3126545 http://doi.org/10.1145/3126545
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 . doi: 10.1109/IPDPS49936.2021.00099 http://doi.org/10.1109/IPDPS49936.2021.00099
关联资源
相关文章
相关作者
相关机构
京公网安备11010802024621