redis数据类型及使用场景
Redis的数据类型
数据类型对应编码方式
数据类型 | 编码方式 |
---|---|
String | raw 、embstr 、int |
Hash | hashtable 、ziplist |
List | linkedlist 、ziplist 、quicklist |
Set | hashtable 、intset |
Zset | skiplist 、ziplist |
编码类型对应数据结构
编码方式 | 数据结构 |
---|---|
raw |
动态字符串编码 |
embstr |
优化内存分配饿字符串分配 |
int |
整数编码 |
hashtable |
散列表编码 |
ziplist |
压缩列表编码 |
linkedlist |
双向链表编码 |
quicklist |
快速列表编码 |
intset |
整数集合编码 |
skiplist |
跳跃表编码 |
使用场景
数据类型 | 使用场景 |
---|---|
String | 普通的k-v缓存,分布式锁 |
Hash | 字典结构,比如缓存一个创意的消耗信息,创意id对应曝光数、点击数等多个subkey |
List | 关注列表,简单的队列 |
Set | 去重器,集合运算 |
Zset | 排行榜,优先级队列 |