压缩列表ziplist 是由一系列特殊编码的连续内存块组成的顺序型数据结构,即 将一系列数据与其编码信息存储在一块物理上连续的内存空间上,但是 逻辑上却是分作多个部分,其目的是在一定可控的时间复杂读条件下尽可能的减少不必要的内存开销,从而达到节省内存的效果
Redis 中 压缩列表 是 列表键和哈希键 的底层实现之一,当一个 列表键只包含少量列表项 并且每个列表项 要么是比较小的整数值或者比较短的字符串 的时候,那么就会使用 压缩列表进行表示,同理 哈希键的情况也是一样的
压缩列表 的实现原理主要体现在 编码
这个词上,所以我们后续更多以 编码 角度去解读…