English

Algorithms for Optimizing Acyclic Queries

Databases 2026-01-09 v3 Data Structures and Algorithms

Abstract

Most research on query optimization has centered on binary join algorithms like hash join and sort-merge join. However, recent years have seen growing interest in theoretically optimal algorithms, notably Yannakakis' algorithm. These algorithms rely on join trees, which differ from the operator trees for binary joins and require new optimization techniques. We propose three approaches to constructing join trees for acyclic queries. First, we give an algorithm to enumerate all join trees of an alpha-acyclic query by edits with amortized constant delay, which forms the basis of a cost-based optimizer for acyclic joins. Second, we show that the Maximum Cardinality Search algorithm by Tarjan and Yannakakis constructs a unique shallowest join tree, rooted at any relation, for a Berge-acyclic query; this tree enables parallel execution of large join queries. Finally, we prove that any connected left-deep linear plan for a gamma-acyclic query can be converted into a join tree by a simple algorithm, allowing reuse of optimization infrastructure developed for binary joins.

Keywords

Cite

@article{arxiv.2509.14144,
  title  = {Algorithms for Optimizing Acyclic Queries},
  author = {Zheng Luo and Wim Van den Broeck and Guy Van den Broeck and Yisu Remy Wang},
  journal= {arXiv preprint arXiv:2509.14144},
  year   = {2026}
}