tencent cloud

腾讯云分布式缓存数据库(兼容 Redis)

bitmap 族

Download
聚焦模式
字号
最后更新时间: 2026-08-11 11:11:59

基本介绍

Bitmap 族命令用于对字符串值执行位级(bit)操作,将字符串视为二进制位数组,适用于用户签到、在线状态位图、布隆过滤器底层存储等需要紧凑编码与高效位运算的场景。其核心命令按功能可分为以下三类:
单 bit 读写与统计
SETBIT / GETBIT:对指定偏移量进行单 bit 的置位(设为0或1)或读取。
BITCOUNT:统计指定字节范围内值为1的 bit 数量。
BITPOS:查找指定字节范围内首个0或1的位置。
多位图位运算
BITOP:对多个 Bitmap 键执行 AND(与)、OR(或)、XOR(异或)、NOT(取反)位运算,结果存入目标键,适用于多维度用户画像的交并计算。
多 bit 整型编码操作
BITFIELD / BITFIELD_RO:以任意位宽度的整型视角对位数组进行读写与原子递增,支持 u<N>(无符号)和 i<N>(有符号)编码,适用于紧凑编码的多计数器场景。
更多信息请参见 Valkey 官方文档:Bitmap 命令组

命令支持概览

基础位操作命令(5个):bitcountbitopbitposgetbitsetbit,Redis 2.8标准架构及4.0、5.0、6.2、7.0版本、Valkey 8.0、9.0的标准架构与集群架构均支持。
位域操作命令(2个):
bitfield:Redis 4.0及以上版本、Valkey 8.0、9.0版本支持。Redis 2.8标准架构不支持。
bitfield_ro:仅 Redis 6.2、7.0版本及 Valkey 8.0、9.0版本支持。bitfield 的只读版本。
跨 Slot 限制bitop 操作多个源键并写入目标键,不支持跨 Slot;其余命令均操作单个键,无跨 Slot 限制。

命令兼容性矩阵

该族命令在各版本与架构下的支持情况如下表所示(✓ 表示支持,✗ 表示不支持,— 表示该命令不存在跨 Slot 访问场景)。
说明:
bitpos 在 Redis 7.0、Valkey 8.0、9.0 中新增 BYTEBIT 参数。
命令
Valkey 9.0标准架构
Valkey 9.0集群架构
Redis 7.0 / Valkey 8.0标准架构
Redis 7.0 / Valkey 8.0集群架构
Redis 6.2 标准架构
Redis 6.2集群架构
Redis 5.0标准架构
Redis 5.0集群架构
Redis 4.0标准架构
Redis 4.0 集群架构
Redis 2.8 标准架构
集群架构跨 Slot 支持
bitcount
bitop
bitpos
getbit
setbit
bitfield
bitfield_ro

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈