ZipList

作者: MisAutumn | 来源:发表于2020-07-14 15:07 被阅读0次

占用连续内存的双向链表。节省内存,只能顺序查找。
zlbytes 内存占用
zltail 到列表尾部的偏移:可直接找到尾结点
zllen 节点数
zlend 末端标记符
``


previous entry length 记录前一个字节长度,可以向前遍历。

  1. 前一节点的长度<254字节,则previous_entry_length长度为1字节
  2. 前一节点的长度>254字节,则previous_entry_length长度为5字节

转为skipset的条件,两者满足其一即可

  1. 超过128对数据
  2. 某一对键值长度超过64

参考

相关文章

  • Redis 设计与实现 8:五大数据类型之哈希

    哈希对象的编码有两种:ziplist、hashtable。 编码一:ziplist ziplist 已经是我们的老...

  • ZipList

    占用连续内存的双向链表。节省内存,只能顺序查找。zlbytes 内存占用zltail 到列表尾部的偏移:可直接找到...

  • Redis 设计与实现 7:五大数据类型之列表

    列表对象有 3 种编码:ziplist、linkedlist、quicklist。 ziplist 和 linke...

  • Redis有序集合

    Redis有序集合的编码可以是 ziplist 或者 skiplist ziplist和skiplist编码选择的...

  • redis ziplist

    ziplist在redis中的使用 redis数据结构hash, zset, list都会使用到ziplist...

  • Redis 列表对象

    列表对象的编码可以是 ziplist 或 linkedlist ziplist 编码的列表对象使用压缩列表作为底层...

  • redis深度历险--读书笔记

    list的底层数据结构是ziplist+quicklist,是将ziplist串起来的quicklist,双向链表...

  • Redis 哈希对象

    哈希对象的编码可以是 ziplist 或 hashtable ziplist 编码的哈希对象使用压缩列表作为底层实...

  • Redis 有序集合对象

    有序集合的编码可以是 ziplist 或者 skiplist ziplist 编码的有序集合对象使用压缩列表作为底...

  • redis-ziplist

    ziplist 使用场景 redis Hash与List 压缩列表的存储结构 ziplist的结构图:zibyte...

网友评论

      本文标题:ZipList

      本文链接:https://www.haomeiwen.com/subject/eykptktx.html