How It Works
Use the interactive visualization above to explore the Cuckoo Heavy Keeper hands-on. Insert individual items and watch them flow through the lobby → promotion → heavy entry pipeline. Switch to Batch Mode to generate Zipf-distributed data streams and watch the algorithm process them at speed, then slowing down automatically whenever a promotion or kickout event occurs so you can observe the mechanics in action.
Algorithm Breakdown
Cuckoo Heavy Keeper (CHK) is an algorithm for detecting heavy hitters in data streams. It has two versions:
-
Cuckoo Heavy Keeper (CHK): A fast, accurate, and space-efficient heavy-hitter detection algorithm. It delivers orders of magnitude better throughput and accuracy compared to state-of-the-art methods, even under tight memory constraints. CHK introduces a "lobby" concept that acts as a lightweight filter, requiring items to prove their significance before being promoted. This unlocks new synergies like selective hash collision resolution and pre-calculation.
-
Parallel Processing Framework: A flexible framework designed to parallelize any heavy-hitter detection algorithm without requiring mergeability. It operates as a wrapper (e.g.,
ParallelWrapper<HeavyHitterAlgorithm>), allowing developers to achieve near-linear scaling with minimal code changes. Our framework processes billions of updates per second with very low query latency (<150 μsec).
In this visualization, we focus on the first version, Cuckoo Heavy Keeper (CHK).