On the Support of Versioning in Distributed Key-Value Stores

被引:9
|
作者
Felber, Pascal [1 ]
Pasin, Marcelo [1 ]
Riviere, Etienne [1 ]
Schiavoni, Valerio [1 ]
Sutra, Pierre [1 ]
Coelho, Fabio [2 ,3 ]
Oliveira, Rui [2 ,3 ]
Matos, Miguel [2 ,3 ]
Vilaca, Ricardo [2 ,3 ]
机构
[1] Univ Neuchatel, CH-2000 Neuchatel, Switzerland
[2] INESC TEC, HASLab, Oporto, Portugal
[3] U Minho, Oporto, Portugal
关键词
versioning; key-value store; listeners; CLOCKS;
D O I
10.1109/SRDS.2014.35
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
The ability to access and query data stored in multiple versions is an important asset for many applications, such as Web graph analysis, collaborative editing platforms, data forensics, or correlation mining. The storage and retrieval of versioned data requires a specific API and support from the storage layer. The choice of the data structures used to maintain versioned data has a fundamental impact on the performance of insertions and queries. The appropriate data structure also depends on the nature of the versioned data and the nature of the access patterns. In this paper we study the design and implementation space for providing versioning support on top of a distributed key-value store (KVS). We define an API for versioned data access supporting multiple writers and show that a plain KVS does not offer the necessary synchronization power for implementing this API. We leverage the support for listeners at the KVS level and propose a general construction for implementing arbitrary types of data structures for storing and querying versioned data. We explore the design space of versioned data storage ranging from a flat data structure to a distributed sharded index. The resulting system, ALEPH, is implemented on top of an industrial-grade open-source KVS, Infinispan. Our evaluation, based on real-world Wikipedia access logs, studies the performance of each versioning mechanisms in terms of load balancing, latency and storage overhead in the context of different access scenarios.
引用
收藏
页码:95 / 104
页数:10
相关论文
共 50 条
  • [31] Palpatine: Mining Frequent Sequences for Data Prefetching in NoSQL Distributed Key-Value Stores
    Estevest, Sergio
    Silva, Joao Nuno
    Veiga, Luis
    [J]. 2020 IEEE 19TH INTERNATIONAL SYMPOSIUM ON NETWORK COMPUTING AND APPLICATIONS (NCA), 2020,
  • [32] AUTOPLACER: Scalable Self-Tuning Data Placement in Distributed Key-Value Stores
    Paiva, Joao
    Ruivo, Pedro
    Romano, Paolo
    Rodrigues, Luis
    [J]. ACM TRANSACTIONS ON AUTONOMOUS AND ADAPTIVE SYSTEMS, 2015, 9 (04)
  • [33] A scheduling framework for distributed key-value stores and its application to tail latency minimization
    Sonia Ben Mokhtar
    Louis-Claude Canon
    Anthony Dugois
    Loris Marchal
    Etienne Rivière
    [J]. Journal of Scheduling, 2024, 27 : 183 - 202
  • [34] Parameterized and Runtime-tunable Snapshot Isolation in Distributed Transactional Key-value Stores
    Wei, Hengfeng
    Huang, Yu
    Lu, Jian
    [J]. 2017 IEEE 36TH INTERNATIONAL SYMPOSIUM ON RELIABLE DISTRIBUTED SYSTEMS (SRDS), 2017, : 21 - 33
  • [35] FoundationDB: A Distributed Key-Value Store
    Zhou, Jingyu
    Xu, Meng
    Shraer, Alexander
    Namasivayam, Bala
    Miller, Alex
    Tschannen, Evan
    Atherton, Steve
    Beamon, Andrew J.
    Sears, Rusty
    Leach, John
    Rosenthal, Dave
    Dong, Xin
    Wilson, Will
    Collins, Ben
    Scherer, David
    Grieser, Alec
    Liu, Yang
    Moore, Alvin
    Muppana, Bhaskar
    Su, Xiaoge
    Yadav, Vishesh
    [J]. COMMUNICATIONS OF THE ACM, 2023, 66 (06) : 97 - 105
  • [36] A Resource Allocation Controller for Key-Value Data Stores
    Kim, Young Ki
    HoseinyF, M. Reza
    Lee, Young Choon
    Zomaya, Albert Y.
    [J]. 2017 IEEE 16TH INTERNATIONAL SYMPOSIUM ON NETWORK COMPUTING AND APPLICATIONS (NCA), 2017, : 281 - 284
  • [37] Optimization of LSM-Tree for Key-Value Stores
    Wu S.
    Xie J.
    Wang Y.
    [J]. Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 2020, 57 (11): : 2432 - 2441
  • [38] Benchmarking Key-Value Stores via Trace Replay
    Boza, Edwin F.
    San-Lucas, Cesar
    Abad, Cristina L.
    Viteri, Jose A.
    [J]. 2017 IEEE INTERNATIONAL CONFERENCE ON CLOUD ENGINEERING (IC2E 2017), 2017, : 183 - 189
  • [39] FloDB: Unlocking Memory in Persistent Key-Value Stores
    Balmau, Oana
    Guerraoui, Rachid
    Trigonakis, Vasileios
    Zablotchi, Igor
    [J]. PROCEEDINGS OF THE TWELFTH EUROPEAN CONFERENCE ON COMPUTER SYSTEMS (EUROSYS 2017), 2017, : 80 - 94
  • [40] Quantitative Analysis of Consistency in NoSQL Key-Value Stores
    Liu, Si
    Nguyen, Son
    Ganhotra, Jatin
    Rahman, Muntasir Raihan
    Gupta, Indranil
    Meseguer, Jose
    [J]. QUANTITATIVE EVALUATION OF SYSTEMS, 2015, 9259 : 228 - 243