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 |