• Redis-位图法实现简单统计


    比如一个网站有1亿个用户, 现在要统计一周内连续登录的用户


    方法:
    可以用一个字节8个位表示7个人, 首位不算固定为0, 若某人周一登录则置为1, 没登录则为0

    127.0.0.1:6379> set mon 01010100
    OK
    127.0.0.1:6379> set thu 01100101
    OK
    127.0.0.1:6379> 
    ......
    127.0.0.1:6379> set sun 00010111
    OK
    127.0.0.1:6379> 
    
    

    使用 bitop operation 进行and操作得到

    127.0.0.1:6379> bitop and mon mon thu sun
    (integer) 8
    127.0.0.1:6379> get mon
    "00000100"
    127.0.0.1:6379> 
    

    表明只有第五位用户连续一周登录


    位图法非常节省空间

  • 相关阅读:
    HTML初体验
    out传值
    函数
    冒泡排序
    数组
    异常语句
    类 string math
    for 穷举 迭代
    HTML JavaScript及运算符
    HTML 格式与布局
  • 原文地址:https://www.cnblogs.com/qlshine/p/5962188.html
Copyright © 2020-2023  润新知