What Does Dynamic Optimality Mean in External Memory?

01/05/2022
by   Micael A. Bender, et al.
0

In this paper, we revisit the question of how the dynamic optimality of search trees should be defined in external memory. A defining characteristic of external-memory data structures is that there is a stark asymmetry between queries and inserts/updates/deletes: by making the former slightly asymptotically slower, one can make the latter significantly asymptotically faster (even allowing for operations with sub-constant amortized I/Os). This asymmetry makes it so that rotation-based search trees are not optimal (or even close to optimal) in insert/update/delete-heavy external-memory workloads. To study dynamic optimality for such workloads, one must consider a different class of data structures. The natural class of data structures to consider are what we call buffered-propagation trees. Such trees can adapt dynamically to the locality properties of an input sequence in order to optimize the interactions between different inserts/updates/deletes and queries. We also present a new form of beyond-worst-case analysis that allows for us to formally study a continuum between static and dynamic optimality. Finally, we give a novel data structure, called the , that is statically optimal and that achieves dynamic optimality for a large natural class of inputs defined by our beyond-worst-case analysis.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/14/2022

Dynamic Spanning Trees for Connectivity Queries on Fully-dynamic Undirected Graphs (Extended version)

Answering connectivity queries is fundamental to fully dynamic graphs wh...
research
04/14/2021

Engineering Predecessor Data Structures for Dynamic Integer Sets

We present highly optimized data structures for the dynamic predecessor ...
research
03/08/2019

Belga B-trees

We revisit self-adjusting external memory tree data structures, which co...
research
05/01/2022

Dynamic data structures for parameterized string problems

We revisit classic string problems considered in the area of parameteriz...
research
04/15/2004

The Persistent Buffer Tree : An I/O-efficient Index for Temporal Data

In a variety of applications, we need to keep track of the development o...
research
02/15/2018

Smooth heaps and a dual view of self-adjusting data structures

We present a new connection between self-adjusting binary search trees (...
research
02/07/2018

Optimal data structures for stochastic driven simulations

Simulations where we have some prior information on the probability dist...

Please sign up or login with your details

Forgot password? Click here to reset