Redis 的五种数据类型与底层数据结构实现

Reids 是一种内存型 k-v 数据库,底层采用 C 语言实现。

 

提供了五种常用的数据类型:

1. 字符串 - 通过数值或 SDS 实现  

2. 列表 - 通过压缩列表或双端链表实现

3. 哈希 - 通过压缩列表或字典实现

3. 集合 - 通过整数集合或字典实现

4. 有序集合 - 通过压缩列表的有序集合或跳跃表+字典组合的数据结构实现

 

简单动态字符串

   数据结构采用 SDS (简单动态字符串)实现,采用空间预分配和惰性释放的原则,使其满足动态扩展的同时又具备很高的性能。

链表

  实现通过由 C 语言实现的基于双端链表的数据结构实现,存储链表头、链表尾和链表长度等。

字典

  

跳跃表

  

整数集合

 

压缩列表

 

posted @ 2019-06-10 00:17  mykiya  阅读(1106)  评论(1编辑  收藏  举报