引言
hyperLogLog是用来统计基数的利器。只需要16k或者12k的内存就可统计2^64次方的数据量
具体的介绍见见: http://www.redis.cn/commands/pfcount.html
本文只做命令的介绍。以及常见的使用场景,不做原理分析(不会)
一共只有三个命令
- PFADD
- PFCOUNT
- PFMERGE
挨个介绍
pfadd
把element元素存储到hyperLogLog结构中
pfadd key element[element …]
pfcount
获取hyperLogLog计算的基数
pfcount key
pfmerge
把多个hyperLogLog结构merge存储到destination的key中
pfmerge destination key [key …
案例
HyperLogLog的特点是只需要很小的内容却能计算大数据的基数。
根据基数统计的特点,HyperLogLog适合用来计算海量值的不重复出现次数和。
有以下场景适合使用此数据结构:
- 计算用户的UV(统计1天内访问某站点的用户数,相同用户不被重复计数)
- 统计注册 IP 数
- 统计每日访问 IP 数
- 统计页面实时 UV 数
- 统计在线用户数
- 统计用户每天搜索不同词条的个数