- 用法
-
OBJECT ENCODING key
- 复杂度
- O(1)
- 起始版本
- 2.2.3
- ACL 类别
- @keyspace, @read, @slow
-
字符串可以编码为
raw
,普通字符串编码。int
,表示 64 位有符号整数范围内的字符串,以此方式编码以节省空间。embstr
,一种嵌入式字符串,其中内部的简单动态字符串sds
是一个不可修改的字符串,与对象本身在同一块内存中分配。embstr
可以是长度达到硬编码限制OBJ_ENCODING_EMBSTR_SIZE_LIMIT
或 44 字节的字符串。
-
列表可以编码为
linkedlist
,简单列表编码。不再使用,一种旧的列表编码。listpack
,一种用于小型列表的空间高效编码。quicklist
,编码为 ziplist 或 listpack 的链表。
-
集合可以编码为
hashtable
,普通集合编码。intset
,一种特殊编码,用于仅由整数组成的小型集合。listpack
,一种用于小型集合的空间高效编码。
-
哈希可以编码为
zipmap
,不再使用,一种旧的哈希编码。hashtable
,普通哈希编码。listpack
,一种用于小型哈希的空间高效编码。
-
有序集合可以编码为
skiplist
,普通有序集合编码。listpack
,一种用于小型有序集合的空间高效编码。
-
流可以编码为
stream
,编码为 listpack 的基数树。
-
Nil 回复:如果键不存在。
-
Bulk string 回复:对象的编码。
-
Null 回复:如果键不存在。
-
Bulk string 回复:对象的编码。
返回存储在 <key>
处的 Valkey 对象的内部编码。
Valkey 对象可以通过不同的方式进行编码
一旦执行了使 Valkey 无法保留节省空间编码的操作,所有特殊编码的类型都会自动转换为通用类型。
RESP2 回复
以下之一
RESP3 回复
以下之一