redis HyperLogLog 命令

  1. 返回储存在给定键的 HyperLogLog 的近似基数
  2. 通过 HyperLogLog 数据结构, 用户可以使用少量固定大小的内存, 来储存集合中的唯一元素 (每个 HyperLogLog 只需使用 12k 字节内存,以及几个字节的内存来储存键本身)。
    
    redis> PFADD  databases  "Redis"  "MongoDB"  "MySQL"
    (integer) 1
    
    redis> PFCOUNT  databases
    (integer) 3
    
    redis> PFADD  databases  "Redis"    # Redis 已经存在,不必对估计数量进行更新
    (integer) 0
    
    redis> PFCOUNT  databases    # 元素估计数量没有变化
    (integer) 3
    
    redis> PFADD  databases  "PostgreSQL"    # 添加一个不存在的元素
    (integer) 1
    
    redis> PFCOUNT  databases    # 估计数量增一
    4

问题思考:
这个是如何实现的,不存储元素的话,如何知道这个元素已经存在了。