English
Related papers

Related papers: Dynamic Indexability: The Query-Update Tradeoff fo…

200 papers

In this paper, we present a probabilistic self-balancing dictionary data structure for massive data sets, and prove expected amortized I/O-optimal bounds on the dictionary operations. We show how to use the structure as an I/O-optimal…

Data Structures and Algorithms · Computer Science 2007-05-23 Saju Jude Dominic , G. Sajith

We show how to construct a dynamic ordered dictionary, supporting insert/delete/rank/select on a set of $n$ elements from a universe of size $U$, that achieves the optimal amortized expected time complexity of $O(1 + \log n / \log \log U)$,…

Data Structures and Algorithms · Computer Science 2025-10-23 William Kuszmaul , Jingxun Liang , Renfei Zhou

Cartesian tree matching is a form of generalized pattern matching where a substring of the text matches with the pattern if they share the same Cartesian tree. This form of matching finds application for time series of stock prices and can…

Data Structures and Algorithms · Computer Science 2024-11-20 Eric M. Osterkamp , Dominik Köppl

Memory disaggregation can potentially allow memory-optimized range indexes such as B+-trees to scale beyond one machine while attaining high hardware utilization and low cost. Designing scalable indexes on disaggregated memory, however, is…

Databases · Computer Science 2024-05-24 Baotong Lu , Kaisong Huang , Chieh-Jan Mike Liang , Tianzheng Wang , Eric Lo

In this paper we propose a new method called ND-Tree-based update (or shortly ND-Tree) for the dynamic non-dominance problem, i.e. the problem of online update of a Pareto archive composed of mutually non-dominated points. It uses a new…

Data Structures and Algorithms · Computer Science 2017-11-08 Andrzej Jaszkiewicz , Thibaut Lust

A non-blocking chromatic tree is a type of balanced binary search tree where multiple processes can concurrently perform search and update operations. We prove that a certain implementation has amortized cost $O(\dot{c} + \log n)$ for each…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-11-16 Jeremy Ko

The $k$d-tree is one of the most widely used data structures to manage multi-dimensional data. Due to the ever-growing data volume, it is imperative to consider parallelism in $k$d-trees. However, we observed challenges in existing parallel…

Data Structures and Algorithms · Computer Science 2025-01-08 Ziyang Men , Zheqi Shen , Yan Gu , Yihan Sun

Index plays an essential role in modern database engines to accelerate the query processing. The new paradigm of "learned index" has significantly changed the way of designing index structures in DBMS. The key insight is that indexes could…

Databases · Computer Science 2021-04-14 Jiacheng Wu , Yong Zhang , Shimin Chen , Jin Wang , Yu Chen , Chunxiao Xing

The performance of today's in-memory indexes is bottlenecked by the memory latency/bandwidth wall. Processing-in-memory (PIM) is an emerging approach that potentially mitigates this bottleneck, by enabling low-latency memory access whose…

Learned indexes have emerged as a promising alternative to traditional index structures, offering higher throughput and lower memory usage by approximating the cumulative key distribution function with lightweight models. Despite these…

Databases · Computer Science 2026-05-25 Shubham Vashisth , Olivier Michaud , Bettina Kemme , Oana Balmau

A tree-packing is a collection of spanning trees of a graph. It has been a useful tool for computing the minimum cut in static, dynamic, and distributed settings. In particular, [Thorup, Comb. 2007] used them to obtain his dynamic min-cut…

Data Structures and Algorithms · Computer Science 2024-12-05 Tijn de Vos , Aleksander B. G. Christiansen

The next-generation non-volatile memory (NVM) is striding into computer systems as a new tier as it incorporates both DRAM's byte-addressability and disk's persistency. Researchers and practitioners have considered building persistent…

Data Structures and Algorithms · Computer Science 2021-06-02 Chongnan Ye , Chundong Wang

The end-to-end lookup latency of a hierarchical index -- such as a B-tree or a learned index -- is determined by its structure such as the number of layers, the kinds of branching functions appearing in each layer, the amount of data we…

Databases · Computer Science 2023-09-06 Supawit Chockchowwat , Wenjie Liu , Yongjoo Park

In this paper we present a novel algorithm for concurrent lock-free internal binary search trees (BST) and implement a Set abstract data type (ADT) based on that. We show that in the presented lock-free BST algorithm the amortized step…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-05-12 Bapi Chatterjee , Nhan Nguyen , Philippas Tsigas

The paper presents the first \emph{concurrency-optimal} implementation of a binary search tree (BST). The implementation, based on a standard sequential implementation of an internal tree, ensures that every \emph{schedule} is accepted,…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-03-03 Vitaly Aksenov , Vincent Gramoli , Petr Kuznetsov , Anna Malova , Srivatsan Ravi

We study dynamic algorithms for maintaining fundamental algebraic properties of matrices, specifically, rank, basis, and full-rank submatrices, with applications to maximum matching on dynamic graphs. Prior dynamic algorithms for rank…

Data Structures and Algorithms · Computer Science 2026-05-12 Jan van den Brand , Vishal Kumar , Daniel J. Zhang

Indexes are models: a B-Tree-Index can be seen as a model to map a key to the position of a record within a sorted array, a Hash-Index as a model to map a key to a position of a record within an unsorted array, and a BitMap-Index as a model…

Databases · Computer Science 2018-05-01 Tim Kraska , Alex Beutel , Ed H. Chi , Jeffrey Dean , Neoklis Polyzotis

While operations {\em rank} and {\em select} on static bitvectors can be supported in constant time, lower bounds show that supporting updates raises the cost per operation to $\Theta(\log n/ \log\log n)$ on bitvectors holding $n$ bits.…

Data Structures and Algorithms · Computer Science 2025-05-22 Gonzalo Navarro

Previous work on Dynamic Complexity has established that there exist dynamic constant-time parallel algorithms for regular tree languages and context-free languages under label or symbol changes. However, these algorithms were not developed…

Data Structures and Algorithms · Computer Science 2023-07-20 Jonas Schmidt , Thomas Schwentick , Jennifer Todtenhoefer

A \emph{resizable array} is an array that can \emph{grow} and \emph{shrink} by the addition or removal of items from its end, or both its ends, while still supporting constant-time \emph{access} to each item stored in the array given its…

Data Structures and Algorithms · Computer Science 2023-05-30 Robert E. Tarjan , Uri Zwick