Redis设计与实现
文章平均质量分 96
Iovems
这个作者很懒,什么都没留下…
展开
-
1.Redis内部数据结构-Sds
注意:该Redis系列为读《Redis设计与实现》一书和实践的学习过程的记录 Sds(Simple Dynamic String),即简单动态字符串,是Redis底层所使用的字符串表示, 几乎所有的 Redis 模块中都用了 sds;Sds的用途 Sds 在 Redis 中的主要作用有以下两个: 1.实现字符串对象(StringObject); ...原创 2018-06-07 19:04:21 · 3057 阅读 · 0 评论 -
4.Redis内部数据结构-跳跃表
跳跃表(skiplist)是一种随机化的数据, 由 William Pugh 在论文《Skip lists: a probabilistic alternative to balanced trees》中提出, 跳跃表以有序的方式在层次化的链表中保存元素, 效率和平衡树媲美 —— 查找、删除、添加等操作都可以在对数期望时间下完成, 并且比起平衡树来说, 跳跃表的实现要简单直观得多。以下是个典型的跳...原创 2018-06-07 20:59:31 · 2985 阅读 · 0 评论 -
2.Redis内部数据结构-双端链表
链表作为数组之外的一种常用序列抽象, 是大多数高级语言的基本数据类型; 但是C语言本身不提供链表类型, 大部分C程序都会自己去实现链表类型, Redis也不例外(实现了一个双端链表结构);双端链表的应用 双端链表作为一种通用的数据结构, 在Redis内部使用得非常多: 既是Redis列表结构的底层实现之一, 同时为大量Redis 模块所用, 用于构建Redis...原创 2018-06-07 19:38:38 · 2825 阅读 · 0 评论 -
3.Redis内部数据结构-字典
字典(dictionary), 又名映射(map)或关联数组(associative array), 是一种抽象数据结构, 由一集键值对(key-value pairs)组成, 各个键值对的键各不相同, 程序可以添加新的键值对到字典中, 或者基于键进行查找、更新或删除等操作;字典的应用字典在 Redis 中的应用广泛, 使用频率可以说和 SDS 以及双端链表不相上下, 基本上各个功能...原创 2018-06-07 19:57:31 · 2894 阅读 · 0 评论