数据库
PythonJava前端运维
Redis
Redis
  • Redis 简介
  • 安装和连接
  • Redis 键(key)
  • Redis 数据类型
    • 基本数据类型
      • String
      • Lists
      • Sets
      • zset
      • Hashs
    • 特殊类型
      • Bitmaps
      • HyperLogLog
      • Geospatial
    • Sorted sets
    • Streams
    • Geospatial
    • Bitfields
  • Redis 配置
  • Redis CLI
  • Redis 持久化
  • Redis 事务
  • Redis 管道
  • Redis 发布订阅
  • Redis 脚本
  • Redis 数据备份与恢复
  • Redis 缓存问题
  • Redis 运维监控
由 GitBook 提供支持
在本页

这有帮助吗?

  1. Redis 数据类型
  2. 特殊类型

HyperLogLog

统计某个网站的UV(Unique Visitor),统计某个文章的UV,用户搜索网站关键词的数量

Redis 在 2.8.9 版本中添加了 HyperLogLog 解构,用来做基数统计的算法,HyperLogLog 的优点是,在输入元素数量或者体积非常大时,计算基数所需的空间总是固定的,并且是很小的。

在Redis中,每个HyperLogLog 键只需要花费12KB内存,就可以计算接近2^64个不同元素的基数。这和计算基数时,元素越多耗费内存越多的集合形成鲜明对比。

HyperLogLog只会根据元素来计算基数,而不会存储输入元素本身,所以HyperLogLog不能像集合那样返回输入的各个元素。

// 添加
pfadd
// 返回
pfcount
// 合并
pfmerge
上一页Bitmaps下一页Geospatial

最后更新于8个月前

这有帮助吗?