Redis 是一个基于内存的键值存储系统,支持多种丰富的数据类型。
以下是 Redis 支持的主要数据类型:
-
字符串(String):
- 存储单个值。
- 最基本的数据类型,可以包含任意类型的数据,如文本、数字等。
SET key value GET key
-
哈希表(Hash):
- 存储字段和与其关联的值的映射表。
- 适用于存储对象,每个字段表示对象的一个属性。
HSET key field value HGET key field
-
列表(List):
- 有序的字符串元素集合。
- 支持在两端进行插入和删除操作,可以实现队列和栈。
LPUSH key value LRANGE key start stop
-
集合(Set):
- 无序的字符串元素集合。
- 不允许重复元素,常用于存储唯一值。
SADD key member SMEMBERS key
-
有序集合(Sorted Set 或 Zset):
- 与集合类似,但每个元素都关联一个分数(score)。
- 通过分数进行排序,适用于需要按照顺序存储和检索的情况。
ZADD key score member ZRANGE key start stop WITHSCORES
-
位图(Bitmap):
- 用于位运算的特殊字符串。
- 可以进行位级别的操作,适用于存储和处理位信息。
SETBIT key offset value GETBIT key offset
-
超级日志(HyperLogLog):
- 用于估计集合的基数(不重复元素的数量)。
- 支持添加元素和计算基数,但不存储元素本身。
PFADD key element PFCOUNT key
-
流(Stream):
- 有序、可追加的消息队列。
- 适用于记录和处理事件流。
XADD key ID field value XREAD COUNT count STREAMS key ID
这些数据类型使得 Redis 能够满足各种不同的应用场景,从简单的缓存到复杂的数据处理和分析。选择合适的数据类型可以更好地利用 Redis 的功能和性能。