Layered List Labeling
arxiv(2024)
摘要
The list-labeling problem is one of the most basic and well-studied
algorithmic primitives in data structures, with an extensive literature
spanning upper bounds, lower bounds, and data management applications. The
classical algorithm for this problem, dating back to 1981, has amortized cost
O(log^2 n). Subsequent work has led to improvements in three directions:
low-latency (worst-case) bounds; high-throughput (expected)
bounds; and (adaptive) bounds for important workloads.
Perhaps surprisingly, these three directions of research have remained almost
entirely disjoint – this is because, so far, the techniques that allow for
progress in one direction have forced worsening bounds in the others. Thus
there would appear to be a tension between worst-case, adaptive, and expected
bounds. List labeling has been proposed for use in databases at least as early
as PODS'99, but a database needs good throughput, response time, and needs to
adapt to common workloads (e.g., bulk loads), and no current list-labeling
algorithm achieve good bounds for all three.
We show that this tension is not fundamental. In fact, with the help of new
data-structural techniques, one can actually combine any three
list-labeling solutions in order to cherry-pick the best worst-case, adaptive,
and expected bounds from each of them.
更多查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要