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 15 Redis
redis实现的四种常见限流策略
Jun 18 Redis
浅谈Redis位图(Bitmap)及Redis二进制中的问题
Jul 15 Redis
springboot使用Redis作缓存使用入门教程
Jul 25 Redis
Redis分布式锁Redlock的实现
Aug 07 Redis
Redisson实现Redis分布式锁的几种方式
Aug 07 Redis
基于Redis6.2.6版本部署Redis Cluster集群的问题
Apr 01 Redis
muduo TcpServer模块源码分析
Apr 26 Redis
Redis基本数据类型String常用操作命令
Jun 01 Redis
Redis实现订单过期删除的方法步骤
Jun 05 Redis
浅谈Redis变慢的原因及排查方法
Jun 21 Redis
redis protocol通信协议及使用详解
Jul 15 Redis
浅谈Redis的事件驱动模型
May 30 #Redis
Redis 异步机制
Redis 报错 error:NOAUTH Authentication required
解决 redis 无法远程连接
Redis 限流器
May 15 #Redis
Redis高并发缓存架构性能优化
详解Redis的三种常用的缓存读写策略步骤
You might like
解析php5配置使用pdo
2013/07/03 PHP
简单实现php上传文件功能
2017/09/21 PHP
Laravel 5+ .env环境配置文件详解
2020/04/06 PHP
JQuery打造PHP的AJAX表单提交实例
2009/11/03 Javascript
DIV菜单层实现代码
2010/11/19 Javascript
统计出现最多的字符次数的js代码
2010/12/03 Javascript
javascript调试过程中找不到哪里出错的可能原因
2013/12/16 Javascript
基于jquery实现导航菜单高亮显示(两种方法)
2015/08/23 Javascript
nodejs初步体验篇
2015/11/23 NodeJs
JavaScript+Java实现HTML页面转为PDF文件保存的方法
2016/05/30 Javascript
利用原生JS与jQuery实现数字线性变化的动画
2017/02/24 Javascript
jquery.guide.js新版上线操作向导镂空提示jQuery插件(推荐)
2017/05/20 jQuery
jQuery扇形定时器插件pietimer使用方法详解
2017/07/18 jQuery
JavaScript取得gridview中获取checkbox选中的值
2017/07/24 Javascript
JavaScript html5 canvas实现图片上画超链接
2017/10/20 Javascript
浅谈vue-router2路由参数注意的问题
2017/11/08 Javascript
手把手教你用Node.js爬虫爬取网站数据的方法
2018/07/05 Javascript
微信小程序动态添加view组件的实例代码
2019/05/23 Javascript
原生JS与CSS实现软件卸载对话框功能
2019/12/05 Javascript
Vue 3自定义指令开发的相关总结
2021/01/29 Vue.js
Python正则表达式常用函数总结
2017/06/24 Python
浅谈Django自定义模板标签template_tags的用处
2017/12/20 Python
Python模拟登录的多种方法(四种)
2018/06/01 Python
python操作excel的包(openpyxl、xlsxwriter)
2018/06/11 Python
Python绘制三角函数图(sin\cos\tan)并标注特定范围的例子
2019/12/04 Python
Numpy实现卷积神经网络(CNN)的示例
2020/10/09 Python
Python通过getattr函数获取对象的属性值
2020/10/16 Python
澳大利亚制造的蜡烛和扩散器:Glasshouse Fragrances
2018/05/20 全球购物
日本快乐生活方式购物网站:Shop Japan
2018/07/17 全球购物
50道外企软件测试面试题
2014/08/18 面试题
大学应届生求职简历的自我评价
2013/10/08 职场文书
中学生班主任评语
2014/01/30 职场文书
舞蹈专业求职信
2014/06/13 职场文书
水利专业大学生职业生涯规划书范文
2014/09/17 职场文书
电影小兵张嘎观后感
2015/06/03 职场文书
指导教师推荐意见
2015/06/05 职场文书