OBJECT ENCODING key
type key
String表示最大512M为2^32-1
STRING:STS
LIST:quicklist(双端链表) 和 ziplist 作为List的底层实现。
HASH:Hash 数据结构底层实现为一个字典( dict ),也是RedisBb用来存储K-V的数据结构,当数据量比较小,或者单个元素比较小时,底层用ziplist存储,数据大小和元素数量阈值可以通过如下参数设置。
hash-max-ziplist-entries 512 // ziplist 元素个数超过512,将改为hashtable编码 hash-max-ziplist-value 64 // 单个元素大小超过64 byte时,将改为hashtable编码
SET:Set 数据结构底层实现为一个value 为 null 的字典( dict ),当数据可以用整形表示时,Set集合将被编码为intset数据结构。两个条件任意满足时 Set将用hashtable存储数据。1, 元素个数大于 set-max-intset-entries , 2 , 元素无法用整形表示
Sorted SET:ZSet 为有序的,自动去重的集合数据类型,ZSet 数据结构底层实现为字典(dict) + 跳表(skiplist),当数据比较少时,用ziplist编码结构存储。
zset-max-ziplist-entries 128 // 元素个数超过128,将用skiplist编码
zset-max-ziplist-value 64 // 单个元素大小超过64 byte, 将用skiplist编码