DT_Stone 在 <Redis 高手心法> 读书笔记 | P8 -数据结构- BITMAP 中发帖
用于处理 bit 级别的数据. 适合二值状态统计场景
用户在线状态统计:
使用 bitmap 记录用户的在线状态.其中每位表示一个用户的在线状态(在线为 1,离线-0).这样可以高效的统计在线用户量等用户分布情况
用户签到记录
每位表示一个日期(签到-1,未签到-0) 统计用户活跃天数,活跃用户数等信息
页面点击量统计
点击-1 未点击-0 .
BITMAP
实际上面向 bit 的操作实在字符串类型上定义的. 将 BITMAP 存储在字符串中,每个字符都有 8bit 组成的数组.其中的每位只能是 0 或 1 .字符串的最大容量是 512MN.所以一个 BITMAP 最多 key 已配置 2^32 个不同位
key - userid
value - 0 / 1
为什么不适用字符串来存储统计用的登录状态?
A:
以字符串类型存储太消耗内存!
字符串底层是 SDS 结...