数据库
首页 > 数据库> > 来自阿里P8面试官的绝杀,Redis跳跃究竟怎么跳?看完这篇涨薪10K

来自阿里P8面试官的绝杀,Redis跳跃究竟怎么跳?看完这篇涨薪10K

作者:互联网

一、前言

Redis 提供了5种数据类型:String(字符串)、Hash(哈希)、List(列表)、Set(集合)、Zset(有序集合),理解每种数据类型的特点对于redis的开发和运维非常重要。

备注: 按照分析顺序,本节应该说道有序集合对象了,但是考虑到有序集合对象的底层实现中使用到了跳跃表结构,避免在分析有序集合时造成突兀,所以本节先来看看 redis 中跳跃表结构的具体实现。

二、结构解析

Redis 的跳跃表由 redis.h/zskiplistNode 和 redis.h/zskiplist 两个结构定义,其中 zskiplistNode 结构用于表示跳跃表节点,而 zskiplist 结构则用于保存跳跃表节点的相关信息,比如节点的数量,以及指向表头节点和表尾节点的指针等。

图 5-1 展示了一个跳跃表示例, 位于图片最左边的是 zskiplist 结构, 该结构包含以下属性:

header :指向跳跃表的表头节点。 t

标签:10K,面试官,Redis,redis,集合,绝杀,跳跃,节点,结构
来源: https://blog.csdn.net/m0_58478665/article/details/117202159