Redis 有序集合:压缩列表 vs. 跳跃表,一场速度与激情的较量!? 大家好!欢迎来到今天的“Redis 奇妙夜”!? 今晚我们要聊聊 Redis 中一个非常有趣的数据结构:有序集合(Sorted Set)。这玩意儿,就好比班里的学霸排行榜,既要按成绩排序,又要能快速找到指定名字的同学。 但是!学霸榜也有不同的实现方式,Redis 给了我们两个选择:压缩列表(ziplist)和跳跃表(skiplist)。 这两兄弟,一个身材娇小,追求极致的存储效率;另一个身手矫健,擅长高速的查找操作。 那么问题来了,到底什么时候该选谁呢? 别急,今天我们就来一场酣畅淋漓的 PK 赛,让它们一较高下!? 第一回合:身世揭秘,知己知彼才能百战不殆! 1. 压缩列表(ziplist):小身材,大能量!? 想象一下,你有一个小小的储物柜,里面要塞进各种尺寸的物品。 为了充分利用空间,你会怎么做? 当然是尽量把它们紧凑地排列在一起! 压缩列表就是这样的一个“储物柜”。 它是一种特殊的、为了节省内存而设计的连续内存块。 特点: 紧凑存储: 所有元素都存储在一块连续的内存中,没有额外的指针开销。 这就像把所有的 …
继续阅读“Redis 有序集合(Sorted Set)的压缩列表(`ziplist`)与跳跃表(`skiplist`)编码选择”