Elimination (a,b)-trees with fast, durable updates

12/31/2021
by   Anubhav Srivastava, et al.
0

Many concurrent dictionary implementations are designed and optimized for read-mostly workloads with uniformly distributed keys, and often perform poorly on update-heavy workloads. In this work, we first present a concurrent (a,b)-tree, the OCC-ABtree, which outperforms its fastest competitor by up to 2x on uniform update-heavy workloads, and is competitive on other workloads. We then turn our attention to skewed update-heavy workloads (which feature many inserts/deletes on the same key) and introduce the Elim-ABtree, which uses a new optimization called publishing elimination. In publishing elimination, concurrent inserts and deletes to a key are reordered to eliminate them. This reduces the number of writes in the data structure. The Elim-ABtree achieves up to 2.5x the performance of its fastest competitor (including the OCC-ABtree). The OCC-ABtree and Elim-ABtree are linearizable. We also introduce durable linearizable versions (for systems with Intel Optane DCPMM non-volatile main memory) that are nearly as fast.

READ FULL TEXT

page 15

page 16

page 17

page 18

research
05/01/2023

An Update-intensive LSM-based R-tree Index

Many applications require update-intensive workloads on spatial objects,...
research
03/24/2023

Honeycomb: ordered key-value store acceleration on an FPGA-based SmartNIC

In-memory ordered key-value stores are an important building block in mo...
research
05/18/2023

Benchmark Framework with Skewed Workloads

In this work, we present a new benchmarking suite with new real-life ins...
research
08/07/2017

Adaptive Lock-Free Data Structures in Haskell: A General Method for Concurrent Implementation Swapping

A key part of implementing high-level languages is providing built-in an...
research
11/25/2018

Enabling Efficient Updates in KV Storage via Hashing: Design and Performance Evaluation

Persistent key-value (KV) stores mostly build on the Log-Structured Merg...
research
08/06/2020

Efficient Multi-word Compare and Swap

Atomic lock-free multi-word compare-and-swap (MCAS) is a powerful tool f...
research
05/17/2023

Concurrent Gaussian elimination

Working in a semi-constructive logical system that supports the extracti...

Please sign up or login with your details

Forgot password? Click here to reset