OBJECT ENCODING

语法
OBJECT ENCODING key
可用时间
2.2.3
时间复杂度
O(1)
ACL 类别
@keyspace, @read, @slow,

返回存储在 <key> 中的 Redis 对象的内部编码。

Redis 对象可以以不同的方式编码。

  • 字符串可以编码为

    • raw,正常字符串编码。
    • int,表示 64 位有符号整数范围内的整数的字符串,以这种方式编码以节省空间。
    • embstr,嵌入字符串,它是一个对象,其中内部简单动态字符串 sds 是在与对象本身相同的块中分配的不可修改字符串。 embstr 可以是长度不超过 OBJ_ENCODING_EMBSTR_SIZE_LIMIT 或 44 字节的硬编码限制的字符串。
  • 列表可以编码为

    • linkedlist,简单的列表编码。不再使用,一种旧的列表编码。
    • ziplist,Redis <= 6.2,用于小型列表的空间效率编码。
    • listpack,Redis >= 7.0,用于小型列表的空间效率编码。
    • quicklist,编码为 ziplist 或 listpack 的链表。
  • 集合可以编码为

    • hashtable,正常的集合编码。
    • intset,一种特殊编码,用于仅由整数组成的小型集合。
    • listpack,Redis >= 7.2,用于小型集合的空间效率编码。
  • 哈希表可以编码为

    • zipmap,不再使用,一种旧的哈希表编码。
    • hashtable,正常的哈希表编码。
    • ziplist,Redis <= 6.2,用于小型哈希表的空间效率编码。
    • listpack,Redis >= 7.0,用于小型哈希表的空间效率编码。
  • 有序集合可以编码为

    • skiplist,正常的有序集合编码。
    • ziplist,Redis <= 6.2,用于小型有序集合的空间效率编码。
    • listpack,Redis >= 7.0,用于小型有序集合的空间效率编码。
  • 流可以编码为

    • stream,编码为 listpack 的基数树。

所有特殊编码类型在您执行使其无法保留节省空间编码的操作时,都会自动转换为一般类型。

RESP2 响应

以下之一

RESP3 响应

以下之一


RATE THIS PAGE
Back to top ↑