zset的是有序的,通过score(分数)来实现,分数是一个Double类型的值。每一个集合中的元素都会关联一个分数,通过这个分数来实现排序。zset的编码有两种结构,ziplist(压缩列表)和skiplist(跳表)。
什么时候使用ziplist?什么时候使用skiplist?
ziplist:保存的元素少于128个且每个元素效益64字节。
ps:这两个数值是可以通过redis.conf
的zset-max-ziplist-entries
和 zset-max-ziplist-value
选项 进行修改。
skiplist:不满足ziplist则使用skiplist
什么是ziplist?,什么是skiplist?
ziplist:由一系列特俗编码的连续内存块组成的顺序存储结构,类似与数组是在内存中连续存储的,但是又不同于数组,因为他的每个元素所占内存大小又是可以不同的。元素是存储的一个整数或者是一个字符串。
skiplist:就是在有序列表的基础上增加了多级索引,通过索引来实现快速查找。