zoukankan      html  css  js  c++  java
  • 高级数据类型-HyperLogLog

    统计独立UV

    • 原始方案:set

       存储每个用户的id(字符串)

    • 改进方案:Bitmaps

       存储每个用户状态(bit)

    • 全新的方案:Hyperloglog

    基数

    • 基数是数据集去重后元素个数
    • HyperLogLog 是用来做基数统计的,运用了LogLog的算法

    HyperLogLog类型的基本操作

     添加数据

    pfadd key element [element ...]

     统计数据

    pfcount key [key ...]

     合并数据

    pfmerge destkey sourcekey [sourcekey...]

    Tips 22:

    • redis 应用于独立信息统计

    相关说明

    • 用于进行基数统计,不是集合,不保存数据,只记录数量而不是具体数据 核心是基数估算算法,最终数值存在一定误差
    • 误差范围:基数估计的结果是一个带有 0.81% 标准错误的近似值
    • 耗空间极小,每个hyperloglog key占用了12K的内存用于标记基数
    • pfadd命令不是一次性分配12K内存使用,会随着基数的增加内存逐渐增大 
    • Pfmerge命令合并后占用的存储空间为12K,无论合并之前数据量多少
  • 相关阅读:
    linux shell执行远程计算机上的命令或者脚本(ssh)
    人到中年,愿我们的人生无悔
    资料
    新博客
    移植ok6410
    pm剩余要看的内容
    kernel boot
    regulator
    pm
    bochs安装一系列问题
  • 原文地址:https://www.cnblogs.com/zhangchaoya/p/15239512.html
Copyright © 2011-2022 走看看