English
Related papers

Related papers: B+-tree Index Optimization by Exploiting Internal …

200 papers

Parallel applications can spend a significant amount of time performing I/O on large-scale supercomputers. Fast near-compute storage accelerators called burst buffers can reduce the time a processor spends performing I/O and mitigate I/O…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-01-15 Yiheng Xu , Pranav Sivaraman , Hariharan Devarajan , Kathryn Mohror , Abhinav Bhatele

Database Management Systems and K/V-Stores operate on updatable datasets -- massively exceeding the size of available main memory. Tree-based K/V storage management structures became particularly popular in storage engines. B+ Trees allow…

Databases · Computer Science 2022-09-21 Christian Riegger , Ilia Petrov

While in-memory learned indexes have shown promising performance as compared to B+-tree, most widely used databases in real applications still rely on disk-based operations. Based on our experiments, we observe that directly applying the…

Databases · Computer Science 2023-06-06 Hai Lan , Zhifeng Bao , J. Shane Culpepper , Renata Borovica-Gajic , Yu Dong

Self-adjusting data structures are a classic approach to adapting the complexity of operations to the data access distribution. While several self-adjusting variants are known for both binary search trees and B-Trees, existing constructions…

Data Structures and Algorithms · Computer Science 2023-10-10 Alexander Slastin , Dan Alistarh , Vitaly Aksenov

Solid state drives have a number of interesting characteristics. However, there are numerous file system and storage design issues for SSDs that impact the performance and device endurance. Many flash-oriented and flash-friendly file…

Operating Systems · Computer Science 2019-07-30 Viacheslav Dubeyko

We revisit self-adjusting external memory tree data structures, which combine the optimal (and practical) worst-case I/O performances of B-trees, while adapting to the online distribution of queries. Our approach is analogous to undergoing…

Data Structures and Algorithms · Computer Science 2019-03-11 Erik D. Demaine , John Iacono , Grigorios Koumoutsos , Stefan Langerman

We present an optimal partially-persistent external-memory search tree with amortized I/O bounds matching those achieved by the non-persistent $B^{\varepsilon}$-tree by Brodal and Fagerberg [SODA 2003]. In a partially-persistent data…

Data Structures and Algorithms · Computer Science 2025-03-12 Gerth Stølting Brodal , Casper Moldrup Rysgaard , Rolf Svenning

$k$d-trees are widely used in parallel databases to support efficient neighborhood/similarity queries. Supporting parallel updates to $k$d-trees is therefore an important operation. In this paper, we present BDL-tree, a parallel,…

Data Structures and Algorithms · Computer Science 2021-12-14 Rahul Yesantharao , Yiqiu Wang , Laxman Dhulipala , Julian Shun

Vector searches on large-scale datasets are critical to modern online services like web search and RAG, which necessity storing the datasets and their index on the secondary storage like SSD. In this paper, we are the first to characterize…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-08 Rongxin Cheng , Yifan Peng , Xingda Wei , Hongrui Xie , Rong Chen , Sijie Shen , Haibo Chen

The introduction of Single Instruction Multiple Data (SIMD) instructions in mainstream CPUs has enabled modern database engines to leverage data parallelism by performing more computation with a single instruction, resulting in a reduced…

Databases · Computer Science 2023-12-27 Yeasir Rayhan , Walid G. Aref

Most problems in search-based software engineering involve balancing conflicting objectives. Prior approaches to this task have required a large number of evaluations- making them very slow to execute and very hard to comprehend. To solve…

Software Engineering · Computer Science 2017-05-19 Vivek Nair , Zhe Yu , Tim Menzies

Multidimensional data are becoming more prevalent, partly due to the rise of the Internet of Things (IoT), and with that the need to ingest and analyze data streams at rates higher than before. Some industrial IoT applications require…

Databases · Computer Science 2017-07-05 Juan A. Colmenares , Reza Dorrigiv , Daniel G. Waddington

Optimizing the performance of stencil algorithms has been the subject of intense research over the last two decades. Since many stencil schemes have low arithmetic intensity, most optimizations focus on increasing the temporal data access…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-10-19 Tareq Malas , Georg Hager , Hatem Ltaief , David Keyes

Tree-based data structures are ubiquitous across applications. Therefore, a multitude of different tree implementations exist. However, while these implementations are diverse, they share a tree structure as the underlying data structure.…

Hardware Architecture · Computer Science 2025-01-30 Daniel Biebert , Christian Hakert , Jian-Jia Chen

As a key ingredient of the DBMS, index plays an important role in the query optimization and processing. However, it is a non-trivial task to apply existing indexes or design new indexes for new applications, where both data distribution…

Databases · Computer Science 2020-03-05 Sai Wu , Xinyi Yu , Xiaojie Feng , Feifei Li , Wei Cao , Gang Chen

The B-tree is a fundamental secondary index structure that is widely used for answering one-dimensional range reporting queries. Given a set of $N$ keys, a range query can be answered in $O(\log_B \nm + \frac{K}{B})$ I/Os, where $B$ is the…

Data Structures and Algorithms · Computer Science 2008-11-27 Ke Yi

On heterogeneous memory (HM) where fast memory (i.e., CPU-attached DRAM) and slow memory (e.g., remote NUMA memory, RDMA-connected memory, Persistent Memory (PM)) coexist, optimizing the placement of tree-structure indexes (e.g., B+tree) is…

Operating Systems · Computer Science 2025-07-25 Haoru Zhao , Mingkai Dong , Fangnuo Wu , Haibo Chen

As the amount of data produced in society continues to grow at an exponential rate, modern applications are incurring significant performance and energy penalties due to high data movement between the CPU and memory/storage. While…

Hardware Architecture · Computer Science 2024-03-12 Ryan Wong , Nikita Kim , Kevin Higgs , Sapan Agarwal , Engin Ipek , Saugata Ghose , Ben Feinberg

Index access is one of the dominant performance factors in transactional database systems. Many systems use a B+-tree or one of its variants to handle point and range operations. This access pattern has room for performance improvement.…

Databases · Computer Science 2024-10-23 Sho Nakazono , Yutaro Bessho , Hideyuki Kawashima , Tatsuhiro Nakamori

Maintaining spatial data (points in two or three dimensions) is crucial and has a wide range of applications, such as graphics, GIS, and robotics. To handle spatial data, many data structures, called spatial indexes, have been proposed,…

Databases · Computer Science 2026-01-12 Ziyang Men , Bo Huang , Yan Gu , Yihan Sun