• redis HyperLogLog使用


    HyperLogLog主要用来做基数统计,即取count distinct。用HyperLogLog做基数统计有一个好处,那就是不会因为数据量大而占用很多内存,即使数据量再大,占用的内存也最多12kb。

    HyperLogLog只会根据输入的数据计算基数,并不会存储数据,所以不能获取输入的数据。HyperLogLog计算出的基数只是个近似值,在大数据量时,可能有一些误差,这是由算法决定的,不可调和。

    HyperLogLog key用type命令查看,会返回"string",用get命令查看,会返回一个以"HYLL"开头的字符串。

    HyperLogLog涉及的命令以pf开头,有三个,分别是pfadd、pfmerge、pfcount。

    1、pfadd:往一个HyperLogLog类型的key中插入数据

    语法:pfadd key element [element . . .]

    如pfadd rpc thrift grpc dubbo taf trpc

    2、pfmerge:合并一个或多个HyperLogLog类型的key的基数集到一个新的HyperLogLog类型的key中

    语法:pfmerge destkey sourcekey [sourcekey . . .]

    假如还有一个HyperLogLog类型的key,pfadd application_protocol ftp telnet http trpc

    pfmerge po rpc application_protocol

    3、pfcount:返回一个或多个HyperLogLog类型的key的近似基数

    语法:pfcount key [key . . .]

    如pfcount rpc,会返回5。

    pfcount application_protocol,会返回4。

    pfcount po,会返回8。

    pfcount rpc application_protocol,会返回8。

    pfcount rpc application_protocol po,会返回8。

    HyperLogLog类型的key可以持久化吗?实测,可以。

  • 相关阅读:
    Windows服务BAT命令-安装、卸载、启动、停止
    身份认证
    密钥管理概述
    快速上手几个Linux命令
    递归
    数字签名的实现方案
    数字签名
    密码学基础
    你可以把Linux内核当成一家软件外包公司的老板
    数学归纳法
  • 原文地址:https://www.cnblogs.com/koushr/p/5873397.html
Copyright © 2020-2023  润新知