HoneyComb: A Parallel Worst-Case Optimal Join on Multicores
Jiacheng Wu, Dan Suciu

TL;DR
HoneyComb is a novel parallel Worst-Case Optimal Join algorithm optimized for multicore systems, addressing load balancing, contention, and redundancy issues in existing WCOJ implementations.
Contribution
It introduces a domain-partitioning approach inspired by HyperCube, a new index structure CoCo, and plan rewriting techniques to improve parallel WCOJ performance.
Findings
HoneyComb outperforms recent WCOJ systems in experiments.
It achieves better load balancing and reduces contention.
Redundant computations are significantly minimized.
Abstract
To achieve true scalability on massive datasets, a modern query engine needs to be able to take advantage of large, shared-memory, 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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · Interconnection Networks and Systems · Embedded Systems Design Techniques
