Wait-free Trees with Asymptotically-Efficient Range Queries
Ilya Kokorin, Dan Alistarh, Vitaly Aksenov

TL;DR
This paper introduces a wait-free, scalable method for supporting efficient aggregate range queries in concurrent tree data structures, significantly improving performance over existing approaches.
Contribution
It presents a novel wait-free mechanism for maintaining metadata in concurrent trees, enabling efficient aggregate range queries with practical scalability.
Findings
Achieved wait-free insert, delete, contains, and count operations.
Validated speedups through implementation and benchmarking.
Supported broad class of range queries efficiently.
Abstract
Tree data structures, such as red-black trees, quad trees, treaps, or tries, are fundamental tools in computer science. A classical problem in concurrency is to obtain expressive, efficient, and scalable versions of practical tree data structures. We are interested in concurrent trees supporting range queries, i.e., queries that involve multiple consecutive data items. Existing implementations with this capability can list keys in a specific range, but do not support aggregate range queries: for instance, if we want to calculate the number of keys in a range, the only choice is to retrieve a whole list and return its size. This is suboptimal: in the sequential setting, one can augment a balanced search tree with counters and, consequently, perform these aggregate requests in logarithmic rather than linear time. In this paper, we propose a generic approach to implement a broad class of…
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDistributed systems and fault tolerance · Algorithms and Data Compression · Advanced Database Systems and Queries
