目录
引出Zset存储结构
先后往Zset集合中添加数据,底层的存储数据结构发生了变化,从压缩列表变成了跳表。为什么会出现这个情况呢?
首先先了解什么是压缩列表
压缩列表
1、定义
压缩列表(ziplist)是Redis为了节省内存而开发的一种特殊数据结构,它由一系列节点组成,每个节点可以保存一个字节数组或整数值。这种数据结构在内存中以连续的方式存储,可以用来存储列表和哈希表等数据类型的底层实现。当哈希表中的元素个数比较少并且每个元素的值占用空间比较小的时候,Redis就会使用压缩列表做为哈希的内部编码。
压缩列表有点类似于数组。数组的特性是查找根据下标很快就能定位数据,但是插入数据很慢,因为插入位置后面的数据都需要挪动位置。