English

A Simple Algorithm for Worst-Case Optimal Join and Sampling

Databases 2024-09-24 v1

Abstract

We present an elementary branch and bound algorithm with a simple analysis of why it achieves worstcase optimality for join queries on classes of databases defined respectively by cardinality or acyclic degree constraints. We then show that if one is given a reasonable way for recursively estimating upper bounds on the number of answers of the join queries, our algorithm can be turned into algorithm for uniformly sampling answers with expected running time O(UP/OUT)O(UP/OUT) where UPUP is the upper bound, OUTOUT is the actual number of answers and O()O(\cdot) ignores polylogarithmic factors. Our approach recovers recent results on worstcase optimal join algorithm and sampling in a modular, clean and elementary way.

Keywords

Cite

@article{arxiv.2409.14094,
  title  = {A Simple Algorithm for Worst-Case Optimal Join and Sampling},
  author = {Florent Capelli and Oliver Irwin and Sylvain Salvati},
  journal= {arXiv preprint arXiv:2409.14094},
  year   = {2024}
}

Comments

19 pages, including 17 pages of main text