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
基于Redis延迟队列的实现代码
May 13 Redis
详解Redis瘦身指南
May 26 Redis
详解Redis集群搭建的三种方式
May 31 Redis
详解Redis基本命令与使用场景
Jun 01 Redis
SpringBoot 集成Redis 过程
Jun 02 Redis
redis不能访问本机真实ip地址的解决方案
Jul 07 Redis
Jedis操作Redis实现模拟验证码发送功能
Sep 25 Redis
Redis 中使用 list,streams,pub/sub 几种方式实现消息队列的问题
Mar 16 Redis
sentinel支持的redis高可用集群配置详解
Apr 01 Redis
Redis实现短信验证码登录的示例代码
Jun 14 Redis
Redis实战之Lettuce的使用技巧详解
Dec 24 Redis
浅谈Redis的事件驱动模型
May 30 #Redis
Redis 异步机制
Redis 报错 error:NOAUTH Authentication required
解决 redis 无法远程连接
Redis 限流器
May 15 #Redis
Redis高并发缓存架构性能优化
详解Redis的三种常用的缓存读写策略步骤
You might like
一个简单的自动发送邮件系统(三)
2006/10/09 PHP
php 计算两个时间戳相隔的时间的函数(小时)
2009/12/18 PHP
Yii使用migrate命令执行sql语句的方法
2016/03/15 PHP
thinkPHP模板算术运算相关函数用法分析
2016/07/12 PHP
PHP中函数gzuncompress无法使用的解决方法
2017/03/02 PHP
Javascript计算两个marker之间的距离(Google Map V3)
2013/04/26 Javascript
JavaScript实现GriwView单列全选(自写代码)
2013/05/13 Javascript
JS实现一键回顶功能示例代码
2013/10/28 Javascript
jQuery 获取、设置HTML或TEXT内容的两种方法
2014/05/23 Javascript
JavaScript访问CSS属性的几种方式介绍
2014/07/21 Javascript
javascript实现计时器的简单方法
2016/02/21 Javascript
js中最容易被忽视的事件问题大总结
2016/05/15 Javascript
JQuery 的跨域方法推荐_可跨任何网站
2016/05/18 Javascript
无缝滚动的简单实现代码(推荐)
2016/06/07 Javascript
jQuery实现的纵向下拉菜单实例详解【附demo源码下载】
2016/07/09 Javascript
EditPlus中的正则表达式 实战(4)
2016/12/15 Javascript
js仿百度音乐全选操作
2017/01/13 Javascript
jQuery基于事件控制实现点击显示内容下拉效果
2017/03/07 Javascript
如何封装了一个vue移动端下拉加载下一页数据的组件
2019/01/06 Javascript
postman自定义函数实现 时间函数的思路详解
2019/04/17 Javascript
layui动态渲染生成左侧3级菜单的方法(根据后台返回数据)
2019/09/23 Javascript
使用Webpack提升Vue.js应用程序的4种方法(翻译)
2019/10/09 Javascript
归纳整理Python中的控制流语句的知识点
2015/04/14 Python
Python tkinter和exe打包的方法
2020/02/05 Python
Python中的sys.stdout.write实现打印刷新功能
2020/02/21 Python
Python urllib3软件包的使用说明
2020/11/18 Python
css3实现背景动态渐变效果
2019/12/10 HTML / CSS
自考生毕业自我鉴定
2013/10/10 职场文书
旅游专业职业生涯规划范文
2014/01/13 职场文书
公司晚会主持词
2014/03/22 职场文书
党员一句话承诺大全
2014/03/28 职场文书
个人委托书范本
2014/04/02 职场文书
护林防火标语
2014/06/27 职场文书
商场周年庆活动方案
2014/08/19 职场文书
文秘班元旦晚会活动策划方案
2014/08/28 职场文书
2015年市场部工作总结
2015/04/30 职场文书