MEMORY USAGE

语法
MEMORY USAGE key [SAMPLES count]
可用版本
Redis 开源版 4.0.0
时间复杂度
O(N),其中 N 是采样数。
ACL 类别
@read, @slow,

MEMORY USAGE 命令报告键及其值存储在 RAM 中所需的字节数。

报告的用量是一个键及其值所需的数据和管理开销的总内存分配量。

对于嵌套数据类型,可以提供可选的 SAMPLES 选项,其中 count 是采样的嵌套值的数量。样本会被平均以估计总大小。默认情况下,此选项设置为 5。要采样所有嵌套值,请使用 SAMPLES 0

示例

在 Redis v7.2.0 64 位和 jemalloc 下,空字符串的测量结果如下:

> SET "" ""
OK
> MEMORY USAGE ""
(integer) 56

这些字节目前是纯开销,因为没有存储实际数据,它们用于维护服务器的内部数据结构(包括内部分配器碎片)。更长的键和值会显示渐近线性的用量。

> SET foo bar
OK
> MEMORY USAGE foo
(integer) 56
> SET foo2 mybar
OK
> MEMORY USAGE foo2
(integer) 64
> SET foo3 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
OK
> MEMORY USAGE foo3
(integer) 160

Redis Software 和 Redis Cloud 兼容性

Redis
企业版
Redis
云版
备注
✅ 标准版
✅ 主动-主动
✅ 标准版
✅ 主动-主动
Redis 7.0 之前的版本不支持 脚本

注意:键内存使用量在 Redis Software 或 Redis Cloud 主动-主动数据库上与非主动-主动数据库上的不同。这是因为内存使用量包含一定量的 CRDB 开销。

RESP2 回复

以下之一

RESP3 回复

以下之一


为此页评分
返回顶部 ↑