Elimination (a,b)-trees with fast, durable updates
Anubhav Srivastava, Trevor Brown

TL;DR
This paper introduces the OCC-ABtree and Elim-ABtree, two concurrent (a,b)-trees optimized for update-heavy workloads, with Elim-ABtree employing a novel publishing elimination technique to significantly improve performance and durability.
Contribution
The paper presents a new concurrent (a,b)-tree with a novel publishing elimination optimization, achieving superior performance and durability on update-heavy workloads.
Findings
OCC-ABtree outperforms competitors by up to 2x on uniform workloads.
Elim-ABtree achieves up to 2.5x performance improvement on skewed workloads.
Durable versions are nearly as fast as in-memory implementations.
Abstract
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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Advanced Data Storage Technologies · Distributed systems and fault tolerance
