redis是一个开源的,先进的key-value存储,属于非关系型缓存数据库,通常被称为数据结构服务器。Redis 中有三种特殊数据类型:Bitmaps、HyperLogLog、Geospatial,本篇文章为大家介绍一下Bitmaps类型使用方法。
bitmaps基于最小的单位bit进行存储,设置时候时间复杂度O(1)、读取时候时间复杂度O(n),占用空间小。bit映射被限制在512MB之内,所以最大是2^32位。
生活中有着两种状态的场景,比如用户每日是否登录,用户是否在线、是否有网购记录,员工是否打卡等具有两种状态的场景,我们可以使用bitmaps来进行记录、查询、统计等等功能。
BitMaps操作
获取指定key对应的偏移量上的bit值
getbit key offset
设置指定key对应偏移量上的bit值,value只能是1或0
setbit key offset value
对指定key按位进行交、并、非、异或操作,并把结果保存到destKey中
bitop and destKey key1 key2.... //交 bitop or destKey key1 key2.... //并 bitop not destKey key1 key2.... //非 bitop xor destKey key1 key2.... //异或 复制代码
统计指定key中1的数量
bitcount key start end
本文来源:www.lxlinux.net/8372.html,若引用不当,请联系修改。