Redis有序集合与列表类型的区别

有序集合类型在某些方面和列表类型有些类似。
(1)两者都是有序的。
(2)两者均可以得到某一范围的元素。
可是两者有着很大的区别,这使得它们的应用场景也是不一样的。
(1)列表类型是经过链表实现的,获取靠近两端的数据速度极快,而当元素增多后,访问中间数据的速度会较慢,因此它更加适合实现如“新鲜事”或“日志”这样不多访问中间元素的应用。
(2)有序集合类型是使用散列表和跳跃表(Skip list)实现的,因此即便读取位于中间部分的数据速度也很快(时间复杂度是O(log(N)))。
(3)列表中不能简单地调整某个元素的位置,可是有序集合能够(经过更改这个元素的分数)。
(4)有序集合要比列表类型更耗费内存。有序集合类型算得上是 Redis的5种数据类型中最高级的类型了,在学习时能够与列表类
型和集合类型对照理解。学习

相关文章
相关标签/搜索