2020-06-13:Redis底层数据结构?

福哥答案2020-06-13:

福哥口诀法:简链字跳整 压快压

SDS simple synamic string:简单动态字符串。支持自动动态扩容的字节数组 。
list :链表 。双端链表。
dict :字典。使用双哈希表实现的, 支持平滑扩容的字典 。
zskiplist :跳跃表。附加了后向指针的跳跃表 。
intset : 整数集合。用于存储整数数值集合的自有结构 。
ziplist :压缩列表。一种实现上类似于TLV, 但比TLV复杂的, 用于存储任意数据的有序序列的数据结构 。
quicklist:快速列表。一种以ziplist作为结点的双链表结构, 实现的非常不错 。
zipmap : 压缩字典。一种用于在小规模场合使用的轻量级字典结构 。

String底层是SDS 内部编码 int,emstr,raw 。
hash是ziplist与hashtable 。
list采取的双端链表linklist,压缩列表ziplist。
set是hashtable和inset 。
zset是ziplist和skiplist。

福大大架构师每日一题 文章被收录于专栏

最新面试题,针对高级开发人员和架构师。内容是后端、大数据和人工智能。

全部评论

相关推荐

最近和朋友聊天,她说了句让我震惊的话:"我发现我连周末点外卖都开始'最优解'了,一定要赶在高峰期前下单,不然就觉得自己亏了。"这不就是典型的"班味入侵"吗?工作思维已经渗透到生活的方方面面。
小型域名服务器:啊?我一直都这样啊?我还以为是我爱贪小便宜呢?每次去实验室都得接一杯免费的开水回去,出门都得规划一下最短路径,在宿舍就吃南边的食堂,在实验室就吃北边的食堂,快递只有顺路的时候才取。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-05 10:13
已编辑
HHHHaos:让这些老登来现在秋招一下,简历都过不去
点赞 评论 收藏
分享
3 收藏 评论
分享
牛客网
牛客企业服务