پرش به مطلب اصلی

HyperLogLog

خیلی وقت‌ها می‌خواهیم تعداد یکتای آیتم‌ها رو بدون اینکه همه‌شون رو ذخیره کنیم، تخمین بزنیم. اینجاست که HyperLogLog میاد کمکمون! 🧑‍💻

فرض کن 100 هزار تا عدد داریم و می‌خواهیم بدون اینکه همشونو ذخیره کنیم، بدونیم چقدرشون یکتا هستند.
تو HyperLogLog هر داده رو یه جوریش هش می‌کنی و می‌بینی چندتا صفر اول داره. بعد، این صفرها رو تو چند تا باکت می‌ریزی و تخمین می‌زنی که تعداد یکتاها چقدر میشه. 🚀

خودش یه تخمین احتمالیه که بسته به داده‌ها ممکنه یه کمی پایین و بالا بشه، اما جالبه که با تعداد زیاد داده‌ها، خیلی دقیق میشه. 🎯

یه مثال: اگه مثلاً بعد از 100 هزار داده، بیشترین تعداد صفرهای اولی که دیدی 16 بود، می‌تونی تخمین بزاری که تعداد یکتای داده‌ها حدود 65 هزار تاست. 🔥

خیلی باحال که این روش رو میشه به راحتی پیاده‌سازی کرد بدون اینکه حافظه زیادی بخواد، درست مثل بازی با تاس 🎲! ردیس هم داره