HoneyComb: A Parallel Worst-Case Optimal Join on Multicores
Jiacheng Wu, Dan Suciu
Abstract
To achieve true scalability on massive datasets, a modern query engine needs to be able to take advantage of large, sharedmemory, multicore systems. Binary joins are conceptually easy to parallelize on a multicore system; however, several applications require a different approach to query evaluation, using a Worst-Case Optimal Join (WCOJ) algorithm. WCOJ is known to outperform traditional query plans for cyclic queries. However, there is no obvious adaptation of WCOJ to parallel architectures. The few existing systems that parallelize WCOJ do this by partitioning only the top variable of the WCOJ algorithm. This leads to work skew (since some relations end up being read entirely by every thread), possible contention between threads (when the hierarchical trie index is built lazily, which is the case on most recent WCOJ systems), and exacerbates the redundant computations already existing in WCOJ. We introduce HoneyComb, a parallel version of WCOJ, optimized for large multicore, shared-memory systems. HoneyComb partitions the domains of all query variables, not just that of the top loop. We adapt the partitioning idea from the HyperCube algorithm, developed by the theory community for computing multi-join queries on a massively parallel shared-nothing architecture, and introduce new methods for computing the shares, optimized for a shared-memory architecture. To avoid the contention created by the lazy construction of the trie-index, we introduce CoCo, a new and very simple index structure, which we build eagerly, by sorting the entire relation. Finally, in order to remove some of the redundant computations of WCOJ, we introduce a rewriting technique of the WCOJ plan that factors out some of these redundant computations. Our experimental evaluation compares HoneyComb with several recent implementations of WCOJ.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 42527261-a069-4b14-acd8-9c3aa3da926cCited by top-tier papers1
Ask how each one uses itBuilds on8
- Adopting Worst-Case Optimal Joins in Relational Database SystemsMichael J. Freitag, Maximilian Bandle, Tobias Schmidt, Alfons Kemper et al.VLDB 2020 · 79 citations
- Worst-Case Optimal Graph Joins in Almost No SpaceDiego Arroyuelo, Aidan Hogan, Gonzalo Navarro, Juan L. Reutter et al.SIGMOD 2021 · 34 citations
- Robust Join Processing with Diamond Hardened JoinsAltan Birler, Alfons Kemper, Thomas NeumannVLDB 2024 · 23 citations
- Parallel Index-based Stream Join on a Multicore CPUAmirhesam Shahvarani, Hans-Arno JacobsenSIGMOD 2020 · 20 citations
- Free Join: Unifying Worst-Case Optimal and Traditional JoinsYisu Remy Wang, Max Willsey, Dan SuciuSIGMOD 2023 · 18 citations
Related papers
- ADOPT: Adaptively Optimizing Attribute Orders for Worst-Case Optimal Join Algorithms via Reinforcement LearningJunxiong Wang, Immanuel Trummer, Ahmet Kara, Dan OlteanuVLDB 2023 · 10 citations
- APEX: Adaptive Variable-Wise Parallel Execution for Worst-Case Optimal Joins on Graph QueriesYipeng Liu, Yuming Lin, Zhicheng Pan, Chengcheng Yang et al.ICDE 2026
- Instance-Optimal Acyclic Join Processing Without Regret: Engineering the Yannakakis Algorithm in Column StoresLiese Bekkers, Frank Neven, Stijn Vansummeren, Yisu Remy WangVLDB 2025 · 14 citations
- Waffle: A Workload-Aware and Query-Sensitive Framework for Disk-Based Spatial IndexingMoin Hussain Moti, Panagiotis Simatis, Dimitris PapadiasVLDB 2023 · 11 citations
- Vertex-centric Parallel Computation of SQL QueriesAinur Smagulova, Alin DeutschSIGMOD 2021 · 1 citation
