Redis学习-09 hyperloglog基本操作
Posted Less is More(少即是多)
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis学习-09 hyperloglog基本操作相关的知识,希望对你有一定的参考价值。
hyperloglog主要用来做计数统计,采用了一种基数统计的算法来实现。其中不存在重复值。
例如网页的浏览量,微信文章的阅读量,同一个用户浏览同一个页面,只记录一次浏览次数即可。传统的做法是用一个set集合保存用户的id信息,这样带来的问题是随着访问次数的增多,这个set集合的内存会很大,影响运行效率。
而用redis的hyperloglog 可以存放 2^64 个不同的用户id数据,占用的内存大小是固定的,仅12K。很简单方便就实现了计数的功能。
官方说他会有0.81%的错误率,但可忽略不计
如果允许容错,那一定可以使用hyperloglog
如果不允许容错,则不能用这个,还是用set或者自己的数据类型
主要的命令有三个:
pfadd hll a b c a #增加hll 其中的成员为 a b c,成功则返回1
pcount hll #返回hll中的成员数量
pfmerge hll3 hll2 hll #合并hll 和hll2到 hll3
以上是关于Redis学习-09 hyperloglog基本操作的主要内容,如果未能解决你的问题,请参考以下文章
REDIS09_HyperLogLog的概述基本命令UVPVDAUMAU首页UV如何进行统计处理
REDIS09_HyperLogLog的概述基本命令UVPVDAUMAU首页UV如何进行统计处理
Redis学习笔记13Redis数据类型之HyperLogLogs类型