TL;DR
This paper introduces a novel load balancing method for distributed stream processing that efficiently identifies hot keys and assigns them to multiple workers, significantly improving throughput and latency in large deployments.
Contribution
It presents an online, routing-table-free load balancing technique using heavy hitter algorithms to identify hot keys and assign them to multiple choices, optimizing resource use.
Findings
Balances real-world workloads on large deployments
Improves throughput by 150% over previous methods
Reduces latency by 60% in Apache Storm deployments
Abstract
Carefully balancing load in distributed stream processing systems has a fundamental impact on execution latency and throughput. Load balancing is challenging because real-world workloads are skewed: some tuples in the stream are associated to keys which are significantly more frequent than others. Skew is remarkably more problematic in large deployments: more workers implies fewer keys per worker, so it becomes harder to "average out" the cost of hot keys with cold keys. We propose a novel load balancing technique that uses a heaving hitter algorithm to efficiently identify the hottest keys in the stream. These hot keys are assigned to choices to ensure a balanced load, where is tuned automatically to minimize the memory and computation cost of operator replication. The technique works online and does not require the use of routing tables. Our extensive evaluation shows…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
