bitmaps基于位存储,消耗空间很少,是操作二进制位来进行记录,只有0 和1 两个状态。
实用场景:比如当统计具有某个状态的人数时,可以设置某个人的状态为0或1,然后统计1的数量即可。
类似的,在进行钉钉学习打卡的时候,会给每天标上已打卡和未打卡两种状态。
#setbit bitmaps集合名 标号 值(设置集合某个序号的0,1 状态) 127.0.0.1:6379[1]> setbit sign 0 1 (integer) 0 127.0.0.1:6379[1]> setbit sign 1 1 (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 0 (integer) 0 127.0.0.1:6379[1]> setbit sign 5 0 (integer) 0 127.0.0.1:6379[1]> setbit sign 6 1 (integer) 0 #getbit bitmaps集合名 序号(获取某个序号的状态) 127.0.0.1:6379[1]> getbit sign 3 (integer) 1 127.0.0.1:6379[1]> getbit sign 2 (integer) 0 127.0.0.1:6379[1]> getbit sign 1 (integer) 1 #bitcount bitmaps集合名 (统计集合中状态为1的总数) 127.0.0.1:6379[1]> bitcount sign (integer) 4



