Wait-Free Updates and Range Search using Uruv
Gaurav Bhardwaj, Abhay Jain, Bapi Chatterjee, Sathya Peri

TL;DR
Uruv is a novel wait-free concurrent data structure that efficiently supports CRUD and range queries, outperforming previous lock-free solutions in dynamic analytics tasks.
Contribution
This paper introduces Uruv, the first fully wait-free, proactive, and linearizable concurrent B+tree supporting CRUD and range search operations.
Findings
Uruv outperforms previous lock-free B+trees in experiments.
Uruv is the first wait-free, proactive B+tree implementation.
Uruv effectively supports dynamic analytics workloads.
Abstract
CRUD operations, along with range queries make a highly useful abstract data type (ADT), employed by many dynamic analytics tasks. Despite its wide applications, to our knowledge, no fully wait-free data structure is known to support this ADT. In this paper, we introduce Uruv, a proactive linearizable and practical wait-free concurrent data structure that implements the ADT mentioned above. Structurally, Uruv installs a balanced search index on the nodes of a linked list. Uruv is the first wait-free and proactive solution for concurrent B+tree. Experiments show that Uruv significantly outperforms previously proposed lock-free B+trees for dictionary operations and a recently proposed lock-free method to implement the ADT mentioned above.
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
TopicsAdvanced Database Systems and Queries · Distributed systems and fault tolerance · Data Management and Algorithms
