Hyperloglog 基数统计
Redis Hyperloglog 是基数(不重复的元素)统计的数据结构。以PF开头。
优点:占用的内存是固定,2^64 不同的元素的技术,只需要12KB内存。
可以计算网页的 UV (一个人访问一个网站多次,但是还是算作一个人)
传统的方式是用 set 保存用户的id,然后就可以统计 set 中的元素数量。这个方式如果保存大量的用户id,就会占用大量内存,查询效率也低。
# 1. PFadd key value :创建元素。
PFadd mykey a b c
# 2. PFcount key :统计元素的基数数量。
PFcount mykey
# 3. PFmerge key3 key1 key2 :将key1和key2的元素合并到key3元素中。
PFmerge mykey3 mykey1 mykey2
BitMap
Bitmap 位图,数据结构。 操作二进制位来进行记录,就只有0 和 1 两个状态。
可以用来记录打卡,查看当天是否打卡,统计打卡天数。
# 1.setbit key offset value
setbit sign 0 1 #周一打卡
setbit sign 1 0 #周二未打卡
# 2.getbit key offset
getbit sign 1 #查看周二是否打卡
# 3.bitcount key
bitcount sign #统计打卡了几次
原文:https://www.cnblogs.com/yinrz/p/13031154.html