DIDACache: An Integration of Device and Application for Flash-based Key-value Caching

被引:20
|
作者
Shen, Zhaoyan [1 ,4 ]
Chen, Feng [2 ]
Jia, Yichen [3 ]
Shao, Zili [1 ,5 ]
机构
[1] Hong Kong Polytech Univ, Hong Kong, Peoples R China
[2] Louisiana State Univ, Dept Comp Sci & Engn, 3272-L Patrick K Taylor Hall, Baton Rouge, LA 70803 USA
[3] Louisiana State Univ, Dept Comp Sci & Engn, 140C Coates Hall, Baton Rouge, LA 70803 USA
[4] Shandong Univ, Sch Comp Sci & Technol, Binhai Rd 72, Qingdao, Peoples R China
[5] Chinese Univ Hong Kong, Dept Comp Sci & Engn, Shatin, Hong Kong, Peoples R China
基金
美国国家科学基金会;
关键词
NAND flash memory; key-value caching; open-channel SSD;
D O I
10.1145/3203410
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Key-value caching is crucial to today's low-latency Internet services. Conventional key-value cache systems, such as Memcached, heavily rely on expensive DRAM memory. To lower Total Cost of Ownership, the industry recently is moving toward more cost-efficient flash-based solutions, such as Facebook's McDipper [14] and Twitter's Fatcache [56]. These cache systems typically take commercial SSDs and adopt a Memcached-like scheme to store and manage key-value cache data in flash. Such a practice, though simple, is inefficient due to the huge semantic gap between the key-value cache manager and the underlying flash devices. In this article, we advocate to reconsider the cache system design and directly open device-level details of the underlying flash storage for key-value caching. We propose an enhanced flash-aware key-value cache manager, which consists of a novel unified address mapping module, an integrated garbage collection policy, a dynamic over-provisioning space management, and a customized wear-leveling policy, to directly drive the flash management. A thin intermediate library layer provides a slab-based abstraction of low-level flash memory space and an API interface for directly and easily operating flash devices. A special flash memory SSD hardware that exposes flash physical details is adopted to store key-value items. This co-design approach bridges the semantic gap and well connects the two layers together, which allows us to leverage both the domain knowledge of key-value caches and the unique device properties. In this way, we can maximize the efficiency of key-value caching on flash devices while minimizing its weakness. We implemented a prototype, called DIDACache, based on the Open-Channel SSD platform. Our experiments on real hardware show that we can significantly increase the throughput by 35.5%, reduce the latency by 23.6%, and remove unnecessary erase operations by 28%.
引用
收藏
页数:32
相关论文
共 50 条
  • [1] DIDACache: A Deep Integration of Device and Application for Flash based Key-value Caching
    Shen, Zhaoyan
    Chen, Feng
    Jia, Yichen
    Shao, Zili
    PROCEEDINGS OF FAST '17: 15TH USENIX CONFERENCE ON FILE AND STORAGE TECHNOLOGIES, 2017, : 391 - 405
  • [2] SlimCache: An Efficient Data Compression Scheme for Flash-based Key-value Caching
    Jia, Yichen
    Shao, Zili
    Chen, Feng
    ACM TRANSACTIONS ON STORAGE, 2020, 16 (02)
  • [3] Cascade Mapping: Optimizing Memory Efficiency for Flash-based Key-value Caching
    Wang, Kefei
    Chen, Feng
    PROCEEDINGS OF THE 2018 ACM SYMPOSIUM ON CLOUD COMPUTING (SOCC '18), 2018, : 464 - 476
  • [4] SlimCache: Exploiting Data Compression Opportunities in Flash-based Key-value Caching
    Jia, Yichen
    Shao, Zili
    Chen, Feng
    2018 IEEE 26TH INTERNATIONAL SYMPOSIUM ON MODELING, ANALYSIS, AND SIMULATION OF COMPUTER AND TELECOMMUNICATION SYSTEMS (MASCOTS), 2018, : 209 - 222
  • [5] SPOPB: Reducing solid state drive write traffic for flash-based key-value caching
    Li, Zongwei
    Feng, Dan
    Hu, Yuchong
    Lu, Mengting
    SOFTWARE-PRACTICE & EXPERIENCE, 2022, 52 (02): : 353 - 373
  • [6] BlueCache: A Scalable Distributed Flash-based Key-value Store
    Xu, Shuotao
    Lee, Sungjin
    Jun, Sang-Woo
    Liu, Ming
    Hicks, Jamey
    Arvind
    PROCEEDINGS OF THE VLDB ENDOWMENT, 2016, 10 (04): : 301 - 312
  • [7] Optimizing Key-Value Stores for Flash-Based SSDs via Key Reshaping
    Kim, Sunggon
    Son, Yongseok
    IEEE ACCESS, 2021, 9 : 115135 - 115144
  • [8] A matrix-indexed bloom filter for flash-based key-value store
    Li, Wei
    Zhang, Dafang
    Xie, Kun
    Li, Wenwei
    He, Jie
    Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 2015, 52 (05): : 1210 - 1222
  • [9] iFKVS: Lightweight Key-Value Store for Flash-Based Intermittently Computing Devices
    Chen, Yen-Hsun
    Liao, Ting-En
    Chang, Li-Pin
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2024, 43 (11) : 3564 - 3575
  • [10] A Key-Value Database Optimization Method Based on Raw Flash Device
    Qin X.
    Zhang J.
    Lu Y.
    Shu J.
    Shu, Jiwu (shujw@tsinghua.edu.cn), 1600, Science Press (54): : 1326 - 1336