Redis 提供了 Bitmaps 这个“数据类型”可以实现对位的操作:
(1) Bitmaps 本身不是一种数据类型,实际上它就是字符串( key-value ),但是它可以对字符串的位进行操作。“
( 2 )Bitmaps 单独提供了一套命令 , 所以在 Redis 中使用 Bitmaps 和使用字符串的方法不太相同。 可以把 Bitmaps 想象成一个以位为单位的数组数组的每个单元只能存储0和1,数组的下标在 Bitmaps 中叫做偏移量。
常用命令如下:
1.设置Bitmaps中某个偏移量的值(0或1)
setbit key offset value
2.获取Bitmaps中某个偏移量的值
getbit key offset
3.统计字符串从start字节到end字节比特值为1的数量
bitcount key [start end]
4.对多个Bitmaps的and(交集)、or(并集)、not(非)、xor(异或)操作并将结果保存在destkey中
bitop and(or/not/xor) destkey [key1 key2 ...]