0
点赞
收藏
分享

微信扫一扫

Redis中BitMap的用法

什么是 BitMap

BitMap,即位图,其实也就是 byte 数组,用二进制表示,只有 0 和 1 两个数字。
如图所示:
Redis中BitMap的用法_位标识

重要 API

Redis中BitMap的用法_应用场景_02
演示:
Redis中BitMap的用法_位图_03

应用场景

统计每日用户的登录数。每一位标识一个用户ID,当某个用户访问我们的网页或执行了某个操作,就在bitmap中把标识此用户的位设置为1。

这里做了一个 使用 set 和 BitMap 存储的对比。
场景1:1 亿用户,5千万独立
Redis中BitMap的用法_位图_04
场景2:只有 10 万独立用户

Redis中BitMap的用法_位图_05
通过上面的对比,我们可以看到,如果独立用户数量很多,使用 BitMap 明显更有优势,能节省大量的内存。但如果独立用户数量较少,还是建议使用 set 存储,BitMap 会产生多余的存储开销。

使用经验

1、type = string,BitMap 是 sting 类型,最大 512 MB
2、注意 setbit 时的偏移量,可能有较大耗时
3、位图不是绝对好


举报

相关推荐

0 条评论