Open-Channel SSDs are storage devices that let hosts take full control over data placement and I/O scheduling. In recent years, they have gained acceptance in data centers (e.g., Alibaba) and for computational storage (e.g., Pliops). Open-Channel SSDs require a host-based Flash Translation Layer (FTL) that manages the physical address space they expose. Open-source FTLs are now available for Open- Channel SSDs, providing either a generic yet tunable block device interface (e.g., pblk, SPDK, OX-Block), or application- specific FTLs developed for a specific data system (e.g., LightLSM, OX-ELEOS). In this paper, we share our ex- perience developing three of those FTLs in the context of the OX controller. We position Open-Channel SSDs in the SSD landscape and discuss their relevance for data systems. In particular, we argue that Open-Channel SSDs cannot be considered as a uniform class of devices. Our main contri- bution is a description of the key design decisions we took in OX related to Open-Channel SSDs. We reflect on lessons learned and propose hints for the co-design of data systems and Open-Channel SSDs.
|Title of host publication
|Conference on Innovative Data Systems Research
|Place of Publication
|12 Jan 2020
|Published - 12 Jan 2020