Latest web development tutorials

رديس HyperLogLog

في رديس يضيف 2.8.9 الافراج عن هيكل HyperLogLog.

يستخدم رديس HyperLogLog قاعدة لجعل الخوارزميات الإحصائية HyperLogLog ميزة هي أن عدد العناصر في الإدخال أو حجم هو كبير جدا جدا، والمساحة المطلوبة لأساس حساب دائما ثابتة، وصغيرة جدا.

في رديس داخل كل HyperLogLog مفتاح يستغرق سوى 12 كيلو بايت من الذاكرة، يمكنك حساب أقرب قاعدة 2 ^ 64 عناصر مختلفة. هذا هو عندما قاعدة الحساب، وعناصر أكثر تستهلك ذاكرة من مجموعة من التباين أكثر وضوحا.

ومع ذلك، لأن HyperLogLog يقوم إلا على قاعدة حساب عنصر المدخلات، ولكن لا تقم بتخزين عنصر المدخلات نفسها، بحيث جمع HyperLogLog لا ترغب في العودة إلى العناصر والمدخلات منها.


ما هي القاعدة؟

على سبيل المثال، مجموعة البيانات {1، 3، 5، 7، 5، 7، 8}، ثم أصل من مجموعة من مجموعة البيانات هو {1، 3، 5، 7، 8} (عناصر عدم تكرار)، قاعدة 5. خطأ تقدير أصل هو ضمن نطاق مقبول، قاعدة حسابية سريعة.


أمثلة

يوضح المثال التالي HyperLogLog عملية العمل:

redis 127.0.0.1:6379> PFADD w3bigkey "redis"

1) (integer) 1

redis 127.0.0.1:6379> PFADD w3bigkey "mongodb"

1) (integer) 1

redis 127.0.0.1:6379> PFADD w3bigkey "mysql"

1) (integer) 1

redis 127.0.0.1:6379> PFCOUNT w3bigkey

(integer) 3

قيادة رديس HyperLogLog

يسرد الجدول التالي الأوامر الأساسية رديس HyperLogLog:

لا. القيادة ووصف
1 PFADD عنصرا أساسيا [عنصر ...]
ويضيف العنصر المحدد لHyperLogLog في.
2 مفتاح PFCOUNT [مفتاح ...]
عودة تعطى تقديرات أصل HyperLogLog.
3 PFMERGE destkey sourcekey [sourcekey ...]
متعددة HyperLogLog إلى HyperLogLog واحد