Redis特殊数据类型bitmap位图


Posted in Redis onJune 01, 2022

Redis数据类型bitmap位图

bitmap数据结构,是基于二进制位来进行操作记录的,只有0 和 1两个状态。
可以想象成一个数组,里面只有0或者1。

能干嘛呢?

现实中会有这些场景,比如统计用户信息,活跃用户和非活跃用户、登录的、未登录的用户,打卡的、未打卡的,像这种只有2个状态,并且数据量非常大的,就适合使用bitmap。

网上找了一个对比,可以帮助记忆下bitmap的优点。

Redis特殊数据类型bitmap位图

一、setbit

设置或者清空key的value(字符串)在offset处的bit值。

那个位置的bit要么被设置,要么被清空,这个由value(只能是0或者1)来决定。当key不存在的时候,就创建一个新的字符串value。

比如现在我设置一个用户的7天的打卡信息,1是打卡,0是未打卡。

setbit sign 0 1
setbit sign 1 1
setbit sign 3 1
setbit sign 4 0
setbit sign 5 1
setbit sign 6 0
setbit sign 2 1

Redis特殊数据类型bitmap位图

二、getbit

对 key 所储存的字符串值,获取指定偏移量上的位(bit)。

getbit sign 4

Redis特殊数据类型bitmap位图

三、bitcount

统计字符串被设置为1的bit数。

不存在的 key 被当成是空字符串来处理,因此对一个不存在的 key 进行 BITCOUNT 操作,结果为 0 。

bitcount sign

Redis特殊数据类型bitmap位图

以上就是Redis特殊数据类型bitmap位图的详细内容,更多关于Redis数据类型bitmap位图的资料请关注三水点靠木其它相关文章!


Tags in this post...

Redis 相关文章推荐
Redis实现订单自动过期功能的示例代码
May 08 Redis
分布式锁为什么要选择Zookeeper而不是Redis?看完这篇你就明白了
May 21 Redis
redis实现共同好友的思路详解
May 26 Redis
详解Redis集群搭建的三种方式
May 31 Redis
SpringBoot 集成Redis 过程
Jun 02 Redis
压缩Redis里的字符串大对象操作
Jun 23 Redis
redis客户端实现高可用读写分离的方式详解
Jul 04 Redis
浅谈Redis位图(Bitmap)及Redis二进制中的问题
Jul 15 Redis
使用redis生成唯一编号及原理示例详解
Sep 15 Redis
基于Redis结合SpringBoot的秒杀案例详解
Oct 05 Redis
redis缓存存储Session原理机制
Nov 20 Redis
Redis中有序集合的内部实现方式的详细介绍
Mar 16 Redis
浅谈Redis的事件驱动模型
May 30 #Redis
Redis 异步机制
Redis 报错 error:NOAUTH Authentication required
解决 redis 无法远程连接
Redis 限流器
May 15 #Redis
Redis高并发缓存架构性能优化
详解Redis的三种常用的缓存读写策略步骤
You might like
PHP 日常开发小技巧
2009/09/23 PHP
PHP配置把错误日志以邮件方式发送方法(Windows系统)
2015/06/23 PHP
win7安装php框架Yii的方法
2016/01/25 PHP
PHP SESSION机制的理解与实例
2019/03/22 PHP
ThinkPHP框架整合微信支付之刷卡模式图文详解
2019/04/10 PHP
一实用的实现table排序的Javascript类库
2007/09/12 Javascript
真正的JQuery.ajax传递中文参数的解决方法
2011/05/28 Javascript
JQueryEasyUI datagrid框架的基本使用
2013/04/08 Javascript
js处理json以及字符串的比较等常用操作
2013/09/08 Javascript
JavaScript实现的字符串replaceAll函数代码分享
2015/04/02 Javascript
jquery图片滚动放大代码分享(2)
2015/08/28 Javascript
直接拿来用的15个jQuery代码片段
2015/09/23 Javascript
Zero Clipboard实现浏览器复制到剪贴板的方法(多个复制按钮)
2016/03/24 Javascript
基本DOM节点操作
2017/01/17 Javascript
Easy UI动态树点击文字实现展开关闭功能
2017/09/30 Javascript
JS中offset和匀速动画详解
2018/02/06 Javascript
JavaScript对象拷贝与Object.assign用法实例分析
2018/06/20 Javascript
js实现京东秒杀倒计时功能
2019/01/21 Javascript
微信小程序实现下拉框功能
2019/07/16 Javascript
微信头像地址失效踩坑记附带解决方案
2019/09/23 Javascript
webpack常用配置总览(小结)
2019/11/18 Javascript
[02:02:38]VG vs Mineski Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
实用自动化运维Python脚本分享
2018/06/04 Python
在Python中使用MySQL--PyMySQL的基本使用方法
2019/11/19 Python
如何实现在jupyter notebook中播放视频(不停地展示图片)
2020/04/23 Python
英国第一蛋白粉品牌:Myprotein
2016/09/14 全球购物
布里斯班女装时尚品牌:Adrift
2017/12/28 全球购物
MAC彩妆澳洲官网:M·A·C AU
2021/01/17 全球购物
商场消防管理制度
2014/01/12 职场文书
《莫高窟》教学反思
2014/02/25 职场文书
金融专业毕业生自荐信
2014/06/26 职场文书
不遵守课堂纪律的检讨书
2014/09/24 职场文书
导游词之上海杜莎夫人蜡像馆
2019/11/22 职场文书
Python中常见的导入方式总结
2021/05/06 Python
使用pycharm运行flask应用程序的详细教程
2021/06/07 Python
利用Python第三方库实现预测NBA比赛结果
2021/06/21 Python