Jump to content

Worst-case optimal join algorithm

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Siddharthist (talk | contribs) at 15:44, 4 March 2023 (Created page with '{{Userspace draft|source=ArticleWizard|date={{Subst:CURRENTMONTHNAME}} {{Subst:CURRENTYEAR}}}} {{Subst:Nul| ← do not change this line, it will set the date automatically}} A '''worst-case optimal join algorithm''' is an algorithm for computing relational joins with a runtime that is bounded by the worst-case output size of the join. Traditional ''binary join'' algorithms such as hash join operate over two...'). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)


A worst-case optimal join algorithm is an algorithm for computing relational joins with a runtime that is bounded by the worst-case output size of the join. Traditional binary join algorithms such as hash join operate over two relations at a time; joins between more than two relations are implemented by repeatedly applying binary joins. Worst-case optimal join algorithms are asymptotically faster in worst case than any join algorithm based on such iterated binary joins.

The first worst-case optimal join algorithm was published in 2012.[1] Worst-case optimal join algorithms have been implemented in commercial database systems, including the LogicBlox system.[2] Worst-case optimal joins have been applied to build a worst-case optimal algorithm for e-matching.[3]

References

Notes

  1. ^ Ngo, Hung Q.; Porat, Ely; Ré, Christopher; Rudra, Atri (2012-03-08). "Worst-case Optimal Join Algorithms". arXiv:1203.1952 [cs, math].
  2. ^ Veldhuizen, Todd L. (2013-12-20). "Leapfrog Triejoin: a worst-case optimal join algorithm". arXiv:1210.0481 [cs].
  3. ^ Zhang, Yihong; Wang, Yisu Remy; Willsey, Max; Tatlock, Zachary (2022-01-12). "Relational e-matching". Proceedings of the ACM on Programming Languages. 6 (POPL): 35:1–35:22. doi:10.1145/3498696.

Sources