External Memory Fully Persistent Search Trees
Gerth Stølting Brodal, Casper Moldrup Rysgaard, Rolf Svenning
Abstract
We present the first fully-persistent external-memory search tree achieving amortized I/O bounds matching those of the classic (ephemeral) B-tree by Bayer and McCreight. The insertion and deletion of a value in any version requires amortized O log 𝐵 𝑁 𝑣 I/Os and a range reporting query in any version requires worst-case O log 𝐵 𝑁 𝑣 + 𝐾/𝐵 I/Os, where 𝐾 is the number of values reported, 𝑁 𝑣 is the number of values in the version 𝑣 of the tree queried or updated, and 𝐵 is the external-memory block size. The data structure requires space linear in the total number of updates. Compared to the previous best bounds for fully persistent B-trees [Brodal, Sioutas, Tsakalidis, and Tsichlas, SODA 2012], this paper eliminates from the update bound an additive term of O log 2 𝐵 I/Os. This result matches the previous best bounds for the restricted case of partial persistent B-trees [Arge, Danner and Teh, JEA 2003]. Central to our approach is to consider the problem as a dynamic set of two-dimensional rectangles that can be merged and split.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Builds on1
Related papers
- Efficient Concurrent Updates to Persistent Randomized Binary Search TreesGuanhao Hou, Jinchao Huang, Fangyuan Zhang, Sibo WangVLDB 2025 · 1 citation
- Better Data Structures for Colored Orthogonal Range ReportingTimothy M. Chan, Yakov NekrichSODA 2020 · 6 citations
- ART That Lasts: Persistent Multiversion Adaptive Radix Trees with Fast Atomic Range QueriesMohammad Khalaji, Trevor Brown, Khuzaima DaudjeeSIGMOD 2026
- When Tree Meets Hash: Reducing Random Reads for Index Structures on Persistent MemoriesKe Wang, Guanqun Yang, Yiwei Li, Huanchen Zhang et al.SIGMOD 2023 · 11 citations
- Dynamic "Succincter"Tianxiao Li, Jingxun Liang, Huacheng Yu, Renfei ZhouFOCS 2023 · 3 citations
