Redis 三种特殊数据类型之 Bitmaps

位存储

统计用户信息,活跃,不活跃!登录、未登录!打卡,365打卡!两个状态的,都可以使用 Bitmaps!
Bitmaps 位图,数据结构!都是操作二进制位来进行记录,就只有0和1两种状态!
365 天=365bit 1字节=8bit 46 个字节左右

测试

使用bitmap 来记录周一到周日的打卡

127.0.0.1:6379[1]> SETBIT sign 0 1
(integer) 0
127.0.0.1:6379[1]> SETBIT sign 1 0
(integer) 0
127.0.0.1:6379[1]> SETBIT sign 2 0
(integer) 0
127.0.0.1:6379[1]> SETBIT sign 3 1
(integer) 0
127.0.0.1:6379[1]> SETBIT sign 4 1
(integer) 0
127.0.0.1:6379[1]> SETBIT sign 5 0
(integer) 0
127.0.0.1:6379[1]> SETBIT sign 6 0
(integer) 0

查看某一天是否打卡

127.0.0.1:6379[1]> GETBIT sign 3
(integer) 1
127.0.0.1:6379[1]> GETBIT sign 0
(integer) 1
127.0.0.1:6379[1]> GETBIT sign 5
(integer) 0

统计打卡的天数

127.0.0.1:6379[1]> BITCOUNT sign    # 统计这周的打卡记录,就可以看到是否全勤!
(integer) 3
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!