Counting Billion Distinct Objects Using Only 1.5KB of Memory (2012)
highscalability.com
highscalability.com
How do you do this without sorting? Or, do you approximate again by throwing out everything < 0.3 * max_hash? It’s not obvious to me how that approach would actually give any better results: the spacing between 0.3 * max_hash and the next lowest hash is just as prone to variance as the distance between 0 and the absolute lowest hash, and it’s that distance which feeds the estimate.
https://github.com/RaRe-Technologies/bounter
Apart from HyperLogLog, Bounter implements a bunch of other nifty (fast) approximate counting algorithms like CountMinSketch.
These look like hex digits. 16 hex digits is 8 bytes which is 64 bits. What am I missing?