Explore modules

HyperLogLog Register Harmonic Estimate

Estimate distinct values from bucketwise leading-zero maxima and a harmonic aggregate.

Free theory article

Estimate distinct values from bucketwise leading-zero maxima and a harmonic aggregate.

Concept & interpretation

Estimate distinct values from bucketwise leading-zero maxima and a harmonic aggregate.

Experiment

Using the module at https://riano.app/module/hyperloglog-register-harmonic-estimate, try the following configurations:

  1. Set Stream to "Empty" and Prefix to "16". Notice the raw estimate is 10.768, and corrected is 0.
  2. Set Stream to "Repeated" and Prefix to "16". The stream contains the exact same hash (2048) 16 times. Observe that only one register (M[0]) becomes 1, giving a corrected estimate of ~1.03.
  3. Set Stream to "Mixed" and Prefix to "16". This shows typical behavior when hash functions distribute items among various buckets.
  4. Set Stream to "Spread" and Prefix to "16". Notice that the exact distinct hashes count is perfectly predicted by the corrected estimate.
Read the full free theory article