redis包括多种数据结构,包括:
-
字符串(String)
-
字符串是 Redis 的最基本的数据类型。
-
底层实现使用 SDS(Simple Dynamic String)。
-
-
列表(List)
-
列表是一个有序的序列,允许重复元素,可以通过索引位置进行操作。
-
可以实现队列(FIFO)、栈(LIFO)的行为,通过 LPUSH、RPUSH 添加元素,LRANGE 获取指定范围内的元素。
-
-
集合(Set)
-
集合中的元素无序且不重复,支持并集、交集、差集运算。
-
常见操作包括添加元素(SADD)、移除元素(SREM)、判断成员是否存在(SISMEMBER)以及集合间的运算。
-
-
哈希(Hash)
-
哈希是一个键值对集合,每个哈希键下可关联多个字段-值对。
-
提供了增删改查单个字段的能力,如 HSET、HGET、HDEL 等命令。
-
-
有序集合(Sorted Set,也称 Zset)
-
类似于集合,有序集合中的成员也是唯一的,但每个成员都有一个分数与之关联,用于排序,内部原理是Hash+跳表。
-
支持根据分数排序、范围查询(ZRANGE)、按分数排名(ZRANK/ZREVRANK)等功能。
-
-
位图(Bitmaps)
-
通过String 类型间接实现的数据类型,用于处理大范围的二进制位操作。
-
适合用来做统计计数、用户签到等场景。
-
-
HyperLogLogs
-
用于估计唯一元素的数量,提供近似的去重计数功能,占用空间小,适合大数据量下的基数统计。
-
-
Geo地理位置
-
用于各种地理位置相关的应用场景,如LBS服务、附近的人、地图搜索等
-
待更新