Database Theory in Action: Yannakakis' Algorithm
Paraschos Koutris, Stijn Vansummeren, Qichen Wang, Yisu Remy Wang, Xiangyao Yu
TL;DR
Yannakakis' algorithm provides instance-optimal evaluation for $\alpha$-acyclic joins but suffers from high constant factors and a three-pass design that limits practical adoption. The paper surveys practical enhancements, including Bloom-filter bitvector pre-filters, query rewriting with the $YA^{+}$ framework, and zero-overhead semijoin algorithms (bottom-up and top-down), along with robustness improvements from PT and RPT. It discusses aggregation via annotated relations and the trade-offs between implementation effort and performance, highlighting integration with existing indexes and optimizers as key open challenges. Overall, the work guides future optimizer support and research toward making YA-style evaluation more practical and scalable in real systems.
Abstract
Yannakakis' seminal algorithm is optimal for acyclic joins, yet it has not been widely adopted due to its poor performance in practice. This paper briefly surveys recent advancements in making Yannakakis' algorithm more practical, in terms of both efficiency and ease of implementation, and points out several avenues for future research.
