- 2
- 0
- 约1.7万字
- 约 16页
- 2026-06-10 发布于北京
- 举报
Redis高级数据结构HyperLogLog
HyperLogLog(Hyper[ˈhaɪpə(r)])并不是一种新的数据结构(实际类型为字符串类
型),而是一种基数算法,通过HyperLogLog可以利用极小的内存空间完成独立总
数的统计,数据集可以是IP、Email、ID等。
如果你负责开发一个大型的,有一天产品经理要每个网页每天
的UV数据,然后让你来开发这个统计模块,你会如何实现?
如果统计PV那非常好办,给每个网页一个独立的Redis计数器就可以了,
这个计数器的key后缀加上当天的日期。这样来一个请求,incrby一次,最终
就可以统计出所有的PV数据。
但是UV不一样,它要去重,同一个用户一天之内的多次请求只能计
数一次。这就要求每一个网页请求都需要带上用户的ID,无论是登陆用户还是
未登陆用户都需要一个唯一ID来标识。
一个简单的方案,那就是为每一个页面一个独立的set集合
原创力文档

文档评论(0)