推荐答案
Redis 支持以下数据类型:
- String(字符串)
- List(列表)
- Set(集合)
- Hash(哈希)
- Zset(有序集合)
- Bitmaps(位图)
- HyperLogLogs(基数统计)
- Geospatial(地理空间)
- Streams(流)
本题详细解读
String(字符串)
- 描述:最基本的数据类型,可以存储字符串、整数或浮点数。
- 常用命令:
SET,GET,INCR,DECR等。 - 应用场景:缓存、计数器、分布式锁等。
List(列表)
- 描述:有序的字符串列表,可以在头部或尾部插入元素。
- 常用命令:
LPUSH,RPUSH,LPOP,RPOP,LRANGE等。 - 应用场景:消息队列、最新消息列表等。
Set(集合)
- 描述:无序且不重复的字符串集合。
- 常用命令:
SADD,SREM,SMEMBERS,SINTER等。 - 应用场景:标签系统、共同好友等。
Hash(哈希)
- 描述:键值对集合,适合存储对象。
- 常用命令:
HSET,HGET,HMSET,HMGET,HGETALL等。 - 应用场景:存储用户信息、商品信息等。
Zset(有序集合)
- 描述:有序且不重复的字符串集合,每个元素关联一个分数,用于排序。
- 常用命令:
ZADD,ZRANGE,ZREM,ZSCORE等。 - 应用场景:排行榜、优先级队列等。
Bitmaps(位图)
- 描述:通过位操作来存储和操作二进制数据。
- 常用命令:
SETBIT,GETBIT,BITCOUNT,BITOP等。 - 应用场景:用户签到、活跃用户统计等。
HyperLogLogs(基数统计)
- 描述:用于统计集合中不重复元素的数量,占用空间小。
- 常用命令:
PFADD,PFCOUNT,PFMERGE等。 - 应用场景:UV统计、独立IP统计等。
Geospatial(地理空间)
- 描述:存储地理位置信息,支持地理位置相关的计算。
- 常用命令:
GEOADD,GEOPOS,GEODIST,GEORADIUS等。 - 应用场景:附近的人、地点搜索等。
Streams(流)
- 描述:用于存储和处理消息流,支持消息的持久化和消费。
- 常用命令:
XADD,XREAD,XRANGE,XGROUP等。 - 应用场景:消息队列、日志收集等。