Latest web development tutorials

Redis HyperLogLog

ใน Redis 2.8.9 ปล่อยเพิ่มโครงสร้าง HyperLogLog

ฐาน Redis HyperLogLog จะใช้เพื่อให้ขั้นตอนวิธีการทางสถิติ HyperLogLog ประโยชน์ก็คือจำนวนขององค์ประกอบในการป้อนข้อมูลหรือไดรฟ์เป็นอย่างมากที่มีขนาดใหญ่มากพื้นที่ที่จำเป็นสำหรับพื้นฐานของการคำนวณจะคงที่อยู่เสมอและมีขนาดเล็กมาก

ใน Redis ภายในแต่ละคีย์ HyperLogLog ใช้เวลาเพียง 12 กิโลไบต์หน่วยความจำคุณสามารถคำนวณฐานที่อยู่ใกล้ 2 ^ 64 องค์ประกอบที่แตกต่างกัน นี่คือเมื่อฐานการคำนวณองค์ประกอบหน่วยความจำมากขึ้นของคอลเลกชันของทางตรงกันข้ามมากขึ้น

อย่างไรก็ตามเนื่องจาก HyperLogLog อยู่เฉพาะบนฐานการคำนวณองค์ประกอบเข้า แต่ไม่ได้เก็บองค์ประกอบเข้าตัวเองเพื่อให้คอลเลกชัน HyperLogLog ไม่ชอบที่จะกลับไปที่องค์ประกอบการป้อนข้อมูลที่เกี่ยวข้อง


ฐานคืออะไร?

ตัวอย่างเช่นชุดข้อมูล {1, 3, 5, 7, 5, 7, 8} แล้ว cardinality ชุดของชุดข้อมูลเป็น {1, 3, 5, 7, 8} ฐาน (ไม่ซ้ำองค์ประกอบ) 5 ข้อผิดพลาด cardinality ประมาณค่าอยู่ในช่วงที่ยอมรับฐานการคำนวณอย่างรวดเร็ว


ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงให้เห็นถึง 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

คำสั่ง Redis HyperLogLog

ตารางต่อไปนี้แสดงรายการคำสั่งพื้นฐาน Redis HyperLogLog:

เลขที่ คำสั่งและคำอธิบาย
1 PFADD องค์ประกอบสำคัญ [องค์ประกอบ ... ]
เพิ่มองค์ประกอบที่ระบุในการ HyperLogLog ใน
2 PFCOUNT สำคัญ [สำคัญ ... ]
ผลตอบแทนที่ได้รับ HyperLogLog ประมาณการ cardinality
3 PFMERGE destkey sourcekey [sourcekey ... ]
หลาย HyperLogLog เป็นหนึ่ง HyperLogLog