Skip to main content
QUICK REVIEW

[Paper Review] Faster Concurrent Range Queries with Contention Adapting Search Trees Using Immutable Data

Kjell Winblad|arXiv (Cornell University)|Sep 3, 2017
Data Management and Algorithms3 citations
TL;DR

This paper presents Im-Tr-CA, a new concurrent ordered set data structure that combines contention adapting search trees with immutable data structures to enable fast, linearizable range queries. By dynamically adjusting the size of immutable data segments based on contention and query size, Im-Tr-CA reduces lock contention and achieves up to threefold performance improvement over existing approaches, especially in workloads with large range queries.

ABSTRACT

The need for scalable concurrent ordered set data structures with linearizable range query support is increasing due to the rise of multicore computers, data processing platforms and in-memory databases. This paper presents a new concurrent ordered set with linearizable range query support. The new data structure is based on the contention adapting search tree and an immutable data structure. Experimental results show that the new data structure is as much as three times faster compared to related data structures. The data structure scales well due to its ability to adapt the sizes of its immutable parts to the contention level and the sizes of the range queries.

Motivation & Objective

  • To address the scalability limitations of existing concurrent ordered sets with linearizable range query support under high contention.
  • To overcome the performance bottlenecks of coarse-grained and fixed-size fine-grained approaches in concurrent range queries.
  • To design a data structure that adapts synchronization granularity dynamically to workload characteristics such as query size and contention level.
  • To improve performance for both small and large range queries while maintaining linearizability and low contention.
  • To evaluate the proposed approach against state-of-the-art concurrent data structures in realistic workloads.

Proposed method

  • The data structure uses a contention adapting search tree (CA tree) as its core structure, where base nodes manage sequential data structures protected by locks.
  • Immutable data structures are used to store key-value pairs, with updates creating new versions instead of modifying in-place.
  • The size of immutable segments is dynamically adjusted based on observed contention levels and the expected size of range queries.
  • Range queries traverse a minimal number of shared mutable base nodes before switching to read-only traversal of immutable data, minimizing lock contention.
  • Update operations use atomic compare-and-swap to replace the root reference to the immutable data, ensuring linearizability.
  • The design leverages cache-friendly memory access patterns and reduces false sharing by isolating mutable state to base nodes.

Experimental results

Research questions

  • RQ1Can a concurrent ordered set with linearizable range queries achieve better performance by combining CA trees with immutable data structures?
  • RQ2How does dynamic adaptation of immutable segment size affect performance under varying contention and query size workloads?
  • RQ3Does the proposed approach outperform existing CA tree variants and other concurrent data structures in both small and large range query scenarios?
  • RQ4To what extent does the use of immutable data reduce lock contention and improve scalability in concurrent environments?
  • RQ5How does the performance of the proposed data structure scale with increasing data set sizes and varying access patterns?

Key findings

  • Im-Tr-CA achieves up to three times higher performance than related data structures in workloads with large range queries.
  • The number of base nodes traversed per range query remains low (e.g., 13 for 32K-range queries), indicating minimal shared mutable state access.
  • In scenarios with 128K-range queries, Im-Tr-CA traversed only 56 base nodes per query, demonstrating efficient shared state access.
  • The data structure maintains high performance across diverse workloads, outperforming others in both small and large query scenarios.
  • The dynamic adaptation of immutable segment size effectively reduces contention and improves scalability under varying workloads.
  • Even in high-contention scenarios with large range queries, Im-Tr-CA's performance remains superior due to reduced lock-holding times.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.