ADAPT: An Auxiliary Storage Data Path Toolkit

ABSTRACT The legacy storage data path is largely structured in black-box layers and has four major limitations: (1) functional redundancies across layers, (2) poor cross-layer coordination and data tracking, (3) presupposition of high-latency storage devices, and (4) poor support for new storage data models. While addressing all these limitations is a daunting challenge, we introduce ADAPT, an auxiliary storage data path toolkit that complements the legacy storage data path to help mitigate these limitations. This toolkit enables all storage layers to coordinate and track data using shared data structures constructed through the ADAPT API. Our case studies have shown that we can directly support applications such as a key-value store without going through the file system. We also built an ADAPT-based file system and prioritized caching to demonstrate the usability, extensibility, and robustness of ADAPT. In addition, we built per-file secure deletion via our ADAPT-based file system to demonstrate data-path-wide coordination and data tracking.

[1]  Meng Zhu,et al.  Journaling of journal is (almost) free , 2014, FAST.

[2]  Andrea C. Arpaci-Dusseau,et al.  Semantically-smart disk systems: past, present, and future , 2006, PERV.

[3]  Carlos Maltzahn,et al.  LiFS: An Attribute-Rich File System for Storage Class Memories , 2006 .

[4]  Justin Marshall,et al.  TrueErase: per-file secure deletion for the storage data path , 2012, ACSAC '12.

[5]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[6]  Timothy Roscoe,et al.  Arrakis , 2014, OSDI.

[7]  Andrea C. Arpaci-Dusseau,et al.  File Systems as Processes , 2019, HotStorage.

[8]  Geoffrey H. Kuenning,et al.  Conquest: Better Performance Through a Disk/Persistent-RAM Hybrid File System , 2002, USENIX Annual Technical Conference, General Track.

[9]  Sanjay Kumar,et al.  System software for persistent memory , 2014, EuroSys '14.

[10]  Andrea C. Arpaci-Dusseau,et al.  Information and control in gray-box systems , 2001, SOSP.

[11]  B. Nesbitt Life or death? , 1977, Journal of psychiatric nursing and mental health services.

[12]  Erez Zadok,et al.  Building workload-independent storage with VT-trees , 2013, FAST.

[13]  Thomas E. Anderson,et al.  Strata: A Cross Media File System , 2017, SOSP.

[14]  Michael Kuhn JULEA: A Flexible Storage Framework for HPC , 2017, ISC Workshops.

[15]  Red Hat JFFS : The Journalling Flash File System , 2001 .

[16]  Sam H. Noh,et al.  Write-Optimized Dynamic Hashing for Persistent Memory , 2019, FAST.

[17]  Ronald Fagin,et al.  Extendible hashing—a fast access method for dynamic files , 1979, ACM Trans. Database Syst..

[18]  Andrea C. Arpaci-Dusseau,et al.  Life or Death at Block-Level , 2004, OSDI.

[19]  Stephen M. Rumble,et al.  Log-structured memory for DRAM-based storage , 2014, FAST.

[20]  An-I Wang,et al.  The Composite-file File System: Decoupling the One-to-One Mapping of Files and Metadata for Better Performance , 2016, FAST.

[21]  Yang Liu,et al.  Willow: A User-Programmable SSD , 2014, OSDI.

[22]  James L. Peterson,et al.  Buddy systems , 1977, CACM.

[23]  Prashant Malik,et al.  Cassandra: a decentralized structured storage system , 2010, OPSR.

[24]  Michael P. Mesnier,et al.  Differentiated storage services , 2011, SOSP.

[25]  Jeff Bonwick,et al.  The Slab Allocator: An Object-Caching Kernel Memory Allocator , 1994, USENIX Summer.

[26]  Michael M. Swift,et al.  Aerie: flexible file-system interfaces to storage-class memory , 2014, EuroSys '14.

[27]  Gang Cao,et al.  SPDK: A Development Kit to Build High Performance Storage Applications , 2017, 2017 IEEE International Conference on Cloud Computing Technology and Science (CloudCom).

[28]  Andrea C. Arpaci-Dusseau,et al.  A logic of file systems , 2005, FAST'05.

[29]  Josef Bacik,et al.  BTRFS: The Linux B-Tree Filesystem , 2013, TOS.

[30]  Andrea C. Arpaci-Dusseau,et al.  WiscKey: Separating Keys from Values in SSD-conscious Storage , 2016, FAST.

[31]  Javier González,et al.  LightNVM: The Linux Open-Channel SSD Subsystem , 2017, FAST.

[32]  Steven Swanson,et al.  Refactor, Reduce, Recycle: Restructuring the I/O Stack for the Future of Storage , 2013, Computer.

[33]  S. M. García,et al.  2014: , 2020, A Party for Lazarus.

[34]  Kai Ren,et al.  TABLEFS: Enhancing Metadata Efficiency in the Local File System , 2013, USENIX Annual Technical Conference.

[35]  Andrea C. Arpaci-Dusseau,et al.  Designing a True Direct-Access File System with DevFS , 2018, FAST.

[36]  Andrea C. Arpaci-Dusseau,et al.  Semantically-Smart Disk Systems , 2003, FAST.