Latest web development tutorials

Redis HyperLogLog

Di Redis 2.8.9 rilis menambahkan struktur HyperLogLog.

dasar Redis HyperLogLog digunakan untuk membuat algoritma statistik HyperLogLog keuntungan adalah bahwa jumlah elemen pada input atau volume sangat sangat besar, ruang yang diperlukan untuk dasar perhitungan selalu tetap, dan sangat kecil.

Di Redis dalam setiap tombol HyperLogLog hanya membutuhkan waktu 12 KB memori, Anda dapat menghitung dasar terdekat 2 ^ 64 elemen yang berbeda. Ini adalah ketika basis perhitungan, lebih elemen memori-intensif koleksi kontras yang lebih mencolok.

Namun, karena HyperLogLog hanya berdasarkan pada dasar perhitungan elemen input, tetapi tidak menyimpan elemen input itu sendiri, sehingga koleksi HyperLogLog tidak ingin kembali ke elemen masukan masing-masing.


Apa dasar?

Misalnya, data set {1, 3, 5, 7, 5, 7, 8}, maka kardinalitas dari himpunan data set adalah {1, 3, 5, 7, 8} (elemen tidak mengulangi), basis 5. kesalahan estimasi Kardinalitas berada dalam rentang yang dapat diterima, dasar perhitungan cepat.


contoh

Contoh berikut menunjukkan proses kerja 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

perintah Redis HyperLogLog

Tabel berikut ini berisi perintah-perintah dasar Redis HyperLogLog:

Tidak. Perintah dan deskripsi
1 PFADD elemen kunci [elemen ...]
Menambahkan elemen tertentu untuk HyperLogLog di.
2 kunci PFCOUNT [key ...]
Pengembalian diberikan HyperLogLog perkiraan kardinalitas.
3 PFMERGE destkey sourcekey [sourcekey ...]
Beberapa HyperLogLog menjadi satu HyperLogLog