`

Redis HyperLogLog

阅读更多
Redis 在 2.8.9 版本添加了 HyperLogLog 结构。
    Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定 的、并且是很小的。
    在 Redis 里面,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个不同元素的基 数。这和计算基数时,元素越多耗费内存就越多的集合形成鲜明对比。
    但是,因为 HyperLogLog 只会根据输入元素来计算基数,而不会储存输入元素本身,所以 HyperLogLog 不能像集合那样,返回输入的各个元素。

什么是基数?
比如数据集 {1, 3, 5, 7, 5, 7, 8}, 那么这个数据集的基数集为 {1, 3, 5 ,7, 8}, 基数(不重复元素)为5。 基数估计就是在误差可接受的范围内,快速计算基数。


实例
redis 127.0.0.1:6379> PFADD w3ckey "redis"
1) (integer) 1

redis 127.0.0.1:6379> PFADD w3ckey "mongodb"
1) (integer) 1

redis 127.0.0.1:6379> PFADD w3ckey "mysql"
1) (integer) 1

redis 127.0.0.1:6379> PFCOUNT w3ckey
(integer) 3


Redis HyperLogLog 命令
下表列出了 redis HyperLogLog 的基本命令:
序号 命令及描述
1 PFADD key element [element ...]
添加指定元素到 HyperLogLog 中。
2 PFCOUNT key [key ...]
返回给定 HyperLogLog 的基数估算值。
3 PFMERGE destkey sourcekey [sourcekey ...]
将多个 HyperLogLog 合并为一个 HyperLogLog
分享到:
评论

相关推荐

    08-Redis HyperLogLog与事务和Redis 7.0那点事-ev.rar

    08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar08-Redis HyperLogLog与事务和Redis 7.0那点事_ev.rar...

    hyperloglog-redis:Redis支持的HyperLogLog算法的实现

    require 'hyperloglog-redis' counter = HyperLogLog::Counter.new(Redis.new) ['john', 'paul', 'george', 'ringo', 'john', 'paul'].each do |beatle| counter.add('beatles', beatle) end puts "There are ...

    wyHLL:基于3位HyperLogLog的梦想精确近似集基数估计器。 比Redis HyperLogLog更准确

    wyHLL:WangYi的3位HyperLogLog

    wyhll:基于2位HyperLogLog的梦想精确近似集基数估计器。 比Redis HyperLogLog更准确,更快

    wyhll:王翼的三位HyperLogLog

    redis 完整版教程(公司内部请某培训机构的教程)

    Redis HyperLogLog Redis 发布订阅 Redis 事物 Redis 脚本 Redis 链接 Redis 服务器 Redis 数据备份与恢复 Redis 安全 Redis 性能测试 Redis 客户端链接 Redis 管道技术 Redis 分区 Java使用Redis Php 使用Redis

    10 redis高级

    Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定 的、并且是很小的 只计算基数个数,但不存储元素本身 pfadd key element:...

    Redis 16.HyperLogLog.flv

    Redis 16.HyperLogLog.flv

    redis帮助文档之hyperloglog.md

    redis帮助文档之hyperloglog

    C#操作Redis明细内容 C#调用redis c#使用redis业务 C# Redis操作类 C#中Redis封装的类 C#

    谈下你对 Redis 的了解? 1)Redis是一种基于键值对的NoSQL数据库(非关系型数据库);是一个key-value存储系统 2)高性能、可靠性 Redis将数据存储在内存中,读写性能高;Redis提供了 RDB和AOF持久化,可将内存...

    redis获取命令字典的方法及全部的group命令.txt

    Redis命令十分丰富,包括的命令组有Cluster、Connection、Geo、Hashes、HyperLogLog、Keys、Lists、Pub/Sub、Scripting、Server、Sets、Sorted Sets、Strings、Transactions一共14个redis命令组两百多个redis命令。...

    redis-demo:高性能Redis教程代码

    高性能 Redis 系列教程实战入门基于 Redis 实现高级限流器及其在 Laravel 队列任务处理中的应用基于 Redis HyperLogLog 实现全站用户 UV 统计中间件基于 Redis 布隆过滤器实现数据去重及其在 Laravel 中的应用示例...

    redis 5.0 rc1 windows

    Redis Redis 5.0 rc1 已发布,Redis 5 ...增强 HyperLogLog 实现 更好的内存统计报告 许多带有子命令的命令现在都有一个 HELP 子命令 客户端经常连接和断开连接时性能更好 错误修复和改进 Jemalloc 升级到 5.1 版

    redisStudy.zip

    加分项:另外redis还对这几种数据结构做了扩展,如GEO对位置计算,hyperLogLog做统计,bitmaps:redis底层存储value值都是存储的二进制数据,redis提供bitmaps(位图)可以直接访问或修改底层存储的二进制数据 ...

    windows-redis_5.0.14.1

    windows-redis_5.0.14.1 windows环境下的redis5版本 新增加了一些特性 新增加的Stream(流)数据类型,这样redis就有了6大数据类型,另外五种是String(字符串),Hash...增强HyperLogLog实现 支持redis-geo类型 stream

    redis-desktop-manager-0.8.8.384.rar redis管理工具

    RDM 支持 Redis 的所有最新功能:ACL、Streams、Cluster、Sentinel、ReJSON 模块、HyperLogLog 等。内置 TLS、SSH 和 TLS-over-SSH 隧道,可轻松安全地访问任何 redis 服务器。RDM 可与 Amazon ElastiCache,...

    redis-5.0.0.zip

    7. Improvemenets in HyperLogLog implementations. 8. Better memory reporting capabilities. 9. Many commands with sub-commands now have an HELP subcommand. 10. Better performances when clients connect ...

    Redis开发实战视频.zip

    0210 HyperLogLog 0211 GEO数据类型 0301 Redis数据持久化 0302 RDB持久化机制 0303 RDB数据恢复案例 0304 AOF持久化机制. 0305 AOF数据恢复案例 0306 Redis线程模型 0307 Redis过期数据淘汰 0308 listpack 0309 ...

    redis-6.0.9-x64-for-windows-bin.zip

    数据模型是key-value,但支持多种不同类型的值:字符串、列表、集合、排序集、哈希、流、HyperLogLog、Bitmaps。Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps. Bug修复 CONFIG ...

    redis帮助文档.zip

    包含redis帮助文档之custer,redis帮助文档之connection,redis帮助文档之generic,redis帮助文档之geo,redis帮助文档之hash,redis帮助文档之hyperloglog,redis帮助文档之list,redis帮助文档之pubsub,redis帮助文档之...

    redis-5.0.8.7z

    Redis特别好用,BloomFilter、RedisSearch、Redis-ML、String、Hash、List、Set、SortedSet、HyperLogLog、GEO、pub/sub、持久化(RDB/AOF)、pipeline、同步、集群、事务(哨兵机制)、分片等。

Global site tag (gtag.js) - Google Analytics