前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Redis03】高级数据类型-BitMap

【Redis03】高级数据类型-BitMap

作者头像
JuneBao
发布2022-10-26 14:36:51
2050
发布2022-10-26 14:36:51
举报
文章被收录于专栏:JuneBao

Redis-Bitmap

BitMap,即位图,是一个byte数组,用二进制表示,只能存储0和1,BitMap并不是一个特殊的数据结构,它实质上还是普通的字符串。

1. 操作API

由于BitMap本质上还是String, 所以我们可以使用get/set直接获取整个位图的内容,也可以使用提供的专门的getbit/setbit来按位处理

命令

含义

getbit key offset

获取指定偏移量offset上的位

setbit key offset value

设置指定偏移量上的位,返回该位之前的值,value只能取0和1

bitcount key [start end]

获取指定范围中值为1的个数

BITOP AND destkey key[ key1...]

对一个或多个 key 求逻辑并,并将结果保存到destkey(AND也可以是OR(或), NOT(非), XOR(异或));如果处理的字符串长度不一致,短的那个字符串缺下的会以0填充

BITPOS key tartgetBit [start end]

返回指定范围内第一个值等于tartgetBit的值的偏移量,找不到返回-1,targetBit只能取0和1

2. 应用场景

2.1 统计日活跃用户

  • key: 日期
  • offset: 用户ID
  • value:是否活跃

2.2 签到记录

  • key:用户ID
  • offset: 日期
  • value:是否签到

2.3 统计在线人数

  • key: 可以是某个在线状态或日期
  • offset: 用户ID
  • value: 是否在线
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-2-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Redis-Bitmap
    • 1. 操作API
      • 2. 应用场景
        • 2.1 统计日活跃用户
        • 2.2 签到记录
        • 2.3 统计在线人数
    相关产品与服务
    云数据库 Redis
    腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档