• Corpus ID: 239024658

Using RDMA for Efficient Index Replication in LSM Key-Value Stores

  title={Using RDMA for Efficient Index Replication in LSM Key-Value Stores},
  author={Michalis Vardoulakis and Giorgos Saloustros and Pilar Gonz'alez-F'erez and Angelos Bilas},
Log-Structured Merge tree (LSM tree) Key-Value (KV) stores have become a foundational layer in the storage stacks of datacenter and cloud services. Current approaches for achieving reliability and availability avoid replication at the KV store level and instead perform these operations at higher layers, e.g., the DB layer that runs on top of the KV store. The main reason is that past designs for replicated KV stores favor reducing network traffic and increasing I/O size. Therefore, they perform… 


Differentiated Key-Value Storage Management for Balanced I/O Performance
DiffKV is proposed, which builds on KV separation to carefully manage the ordering for keys and values and can simultaneously achieve the best performance in all aspects among existing LSM-tree-optimized KV stores.
Enabling Efficient Updates in KV Storage via Hashing
This work proposes HashKV, which aims for high update performance atop KV separation under update-intensive workloads and uses hash-based data grouping, which deterministically maps values to storage space to make both updates and GC efficient.
ACaZoo: A Distributed Key-Value Store Based on Replicated LSM-Trees
ACaZoo is described, a key-value store that combines strong consistency with high performance and high availability and is compared to Oracle's NoSQL Database and to Cassandra providing serial consistency via an extension of the Paxos algorithm.
An Efficient Memory-Mapped Key-Value Store for Flash Storage
Kreon is a key-value store that targets servers with flash-based storage, where CPU overhead and I/O amplification are more significant bottlenecks compared to I/o randomness and Kreon performs data movement from level to level by performing partial instead of full data reorganization via the use of a full index per-level.
Atlas: Baidu's key-value storage system for cloud data
A customized compact server design based on the ARM processors is adopted and three-copy replication for data protection with erasure coding is replaced to enable low-power and high-density storage supporting Baidu's cloud storage service.
Using One-Sided RDMA Reads to Build a Fast, CPU-Efficient Key-Value Store
This paper explores the design of a distributed in-memory key-value store called Pilaf that takes advantage of Remote Direct Memory Access to achieve high performance with low CPU overhead and introduces the notion of self-verifying data structures that can detect read-write races without client-server coordination.
Tucana: Design and Implementation of a Fast and Efficient Scale-up Key-value Store
Tucana is presented, a feature-rich key-value store that achieves low CPU overhead that is designed from a Be-tree approach to maintain asymptotic properties for inserts and uses three techniques to reduce overheads: copy-on-write, private allocation, and direct device management.
Hailstorm: Disaggregated Compute and Storage for Distributed LSM-based Databases
Hailstorm achieves load balance in many MongoDB deployments with skewed workloads, improving the average throughput by 60%, while decreasing tail latency by as much as 5X, and enables cost savings of 47-56% in OLTP workloads.
Tailwind: Fast and Atomic RDMA-based Replication
Tailwind is the first replication protocol that eliminates all CPU-driven data copying and fully bypasses target server CPUs for data replication, and substantially improves replication throughput and response latency compared with conventional RPC-based replica-tion.
VAT: Asymptotic Cost Analysis for Multi-Level Key-Value Stores
The Variable Amplification- Throughput analysis (VAT) is introduced to calculate insert-path amplification and its impact on multi-level KV-store performance and predicts that the advancements in device technology towards NVM, reduces the benefits from both using key-value separation and tiering.