Key-Value Storage Engines

被引:23
|
作者
Idreos, Stratos [1 ]
Callaghan, Mark [2 ]
机构
[1] Harvard Univ, Cambridge, MA 02138 USA
[2] MongoDB, New York, NY USA
关键词
D O I
10.1145/3318464.3383133
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Key-value stores are everywhere. They power a diverse set of data-driven applications across both industry and science. Key-value stores are used as stand-alone NoSQL systems but they are also used as a part of more complex pipelines and systems such as machine learning and relational systems. In this tutorial, we survey the state-of-the-art approaches on how the core storage engine of a key-value store system is designed. We focus on several critical components of the engine, starting with the core data structures to lay out data across the memory hierarchy. We also discuss design issues related to caching, timestamps, concurrency control, updates, shifting workloads, as well as mixed workloads with both analytical and transactional characteristics. We cover designs that are read-optimized, write-optimized as well as hybrids. We draw examples from several state-of-the-art systems but we also put everything together in a general framework which allows us to model storage engine designs under a single unified model and reason about the expected behavior of diverse designs. In addition, we show that given the vast number of possible storage engine designs and their complexity, there is a need to be able to describe and communicate design decisions at a high level descriptive language and we present a first version of such a language. We then use that framework to present several open challenges in the field especially in terms of supporting increasingly more diverse and dynamic applications in the era of data science and AI, including neural networks, graphs, and data versioning.
引用
收藏
页码:2667 / 2672
页数:6
相关论文
共 50 条
  • [21] A Novel Global Key-Value Storage System Based on Kinetic Drives
    Cao, Xiang
    Li, Cheng
    ALGORITHMS, 2020, 13 (10)
  • [22] PRISM: Optimizing Key-Value Store for Modern Heterogeneous Storage Devices
    Song, Yongju
    Kim, Wook-Hee
    Monga, Sumit Kumar
    Min, Changwoo
    Eom, Young Ik
    PROCEEDINGS OF THE 28TH ACM INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, VOL 2, ASPLOS 2023, 2023, : 588 - 602
  • [23] Improving Performance of Cloud Key-value Storage Using Flushing Optimization
    Son, Yongseok
    Kang, Hara
    Han, Hyuck
    Yeom, Heon Young
    2016 IEEE 1ST INTERNATIONAL WORKSHOPS ON FOUNDATIONS AND APPLICATIONS OF SELF* SYSTEMS (FAS*W), 2016, : 42 - 47
  • [24] A Flexible QoS Fortified Distributed Key-Value Storage System for the Cloud
    Li, Tonglin
    Wang, Ke
    Zhao, Dongfang
    Qiao, Kan
    Sadooghi, Iman
    Zhou, Xiaobing
    Raicu, Ioan
    PROCEEDINGS 2015 IEEE INTERNATIONAL CONFERENCE ON BIG DATA, 2015, : 515 - 522
  • [25] A Consistent Replica Selection Approach for Distributed Key-Value Storage System
    Nwe, Thazin
    Yee, Tin Tin
    Htoon, Ei Chaw
    Nakamura, Junya
    2019 INTERNATIONAL CONFERENCE ON ADVANCED INFORMATION TECHNOLOGIES (ICAIT), 2019, : 114 - 119
  • [26] Atlas: Baidu's Key-value Storage System for Cloud Data
    Lai, Chunbo
    Jiang, Song
    Yang, Liqiong
    Lin, Shiding
    Sun, Guangyu
    Hou, Zhenyu
    Cui, Can
    Cong, Jason
    2015 31ST SYMPOSIUM ON MASS STORAGE SYSTEMS AND TECHNOLOGIES (MSST), 2015,
  • [27] An Efficient Memory-Mapped Key-Value Store for Flash Storage
    Papagiannis, Anastasios
    Saloustros, Giorgos
    Gonzalez-Ferez, Pilar
    Bilas, Angelos
    PROCEEDINGS OF THE 2018 ACM SYMPOSIUM ON CLOUD COMPUTING (SOCC '18), 2018, : 490 - 502
  • [28] LineairDB: Transactional Key-Value Storage with Epoch-based Synchronization
    Nakazono S.
    Bessho Y.
    Nakamori T.
    Computer Software, 2024, 41 (01): : 15 - 35
  • [29] TreeLine: An Update-In-Place Key-Value Store for Modern Storage
    Yu, Geoffrey X.
    Markakis, Markos
    Kipf, Andreas
    Larson, Per-Ake
    Minhas, Umar Farooq
    Kraska, Tim
    PROCEEDINGS OF THE VLDB ENDOWMENT, 2022, 16 (01): : 99 - 112
  • [30] Parallax: Hybrid Key-Value Placement in LSM-based Key-Value Stores
    Xanthakis, Giorgos
    Saloustros, Giorgos
    Batsaras, Nikos
    Papagiannis, Anastasios
    Bilas, Angelos
    PROCEEDINGS OF THE 2021 ACM SYMPOSIUM ON CLOUD COMPUTING (SOCC '21), 2021, : 305 - 318