码迷,mamicode.com
首页 > 其他好文 > 详细

HyperLogLog 数据结构 统计数据

时间:2019-05-31 23:44:01      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:登陆   div   pre   back   解决   hyper   问题   nbsp   需要   

UV 不?样,它要去重,同?个?户?天之内的多次访问请求只能计数?次。这就要求每?个??请求都需要带上?户的 ID,?论是登陆?户还是未登陆?户都需要?个唯? ID 来标识。如?个爆款???千万的UV,你需要?个很?的 set 集合来统计,这就?常浪费空间。如果这样的??很多,那所需要的存储空间是惊?的

Redis 提供了 HyperLogLog 数据结构就是?来解决这种统计问题的。HyperLogLog 提供不精确的去重计数?案,虽然不精确但是也不是?常不精确,标准误差是0.81%,这样的精确度已经可以满?上?的 UV 统计需求了。
HyperLogLog 提供了两个指令 pfadd 和 pfcount,根据字?意义 很好理解,?个是增加计数,?个是获取计数。pfadd ?法和 set 集合的 sadd 是?样的,来?个?户 ID,就将?户 ID 塞进去就是pfcount 和 scard ?法是?样的,直接获取计数值。
27.0.0.1:6379> pfadd codehole user1
(integer) 1
127.0.0.1:6379> pfcount codehole
(integer) 1
127.0.0.1:6379> pfadd codehole user2
(integer) 1
127.0.0.1:6379> pfcount codehole
(integer) 2
127.0.0.1:6379> 

 

HyperLogLog 数据结构 统计数据

标签:登陆   div   pre   back   解决   hyper   问题   nbsp   需要   

原文地址:https://www.cnblogs.com/hanmengya/p/10957783.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!