Redis (Remote Dictionary Server) 是一个开源的内存数据结构存储系统,可用作数据库、缓存和消息中间件。
二进制安全的字符串,最大支持512MB
基于双向链表实现的有序字符串列表
字符串字段和字符串值之间的映射表
无序的字符串集合,元素不重复
带有分数的有序字符串集合
typedef struct redisObject { unsigned type:4; // 数据类型 unsigned encoding:4;// 编码方式 void *ptr; // 数据指针 int refcount; // 引用计数 unsigned lru; // 最后访问时间 } robj;
数据类型 | 时间复杂度 | 空间复杂度 | 适用场景 |
---|---|---|---|
String | O(1) | O(n) | 简单KV存储 |
List | O(1)头尾操作 | O(n) | 队列 |
Hash | O(1) | O(n) | 对象存储 |
Set | O(1) | O(n) | 去重统计 |
Sorted Set | O(log n) | O(n) | 排行榜 |