redis中的数据类型和适用场景
Redis的数据类型可以分为两大类别:核心数据类型和高级数据类型。
一、 核心数据类型(最常用)
这是Redis最基础、最常用的五种数据类型。
1. String(字符串)
-
描述:最简单的键值对类型,一个Key对应一个Value。它是二进制安全的,意味着可以存储任何数据,比如数字、文本、序列化的对象甚至图片。
-
特点:
-
值最大可以是 512MB。
-
可以对字符串的一部分进行操作(如
APPEND
,GETRANGE
)。 -
如果是数字格式的字符串,可以直接进行原子性的增减操作(
INCR
,DECR
,INCRBY
),这在计数器场景中非常有用。
-
-
常用命令:
SET
,GET
,DEL
,INCR
,DECR
,APPEND
,STRLEN
-
应用场景:
-
缓存:存储会话信息、HTML片段、对象序列化后的字符串。
-
计数器:网站访问量、文章点赞数、库存数量。
-
分布式锁:利用
SET key value NX PX timeout
实现。
-
2. Hash(哈希)
-
描述:是一个键值对集合,类似于编程语言中的
Map
或dict
。一个Key对应一个field-value
的映射表。 -
特点:
-
适合存储对象(如用户信息:name, age, email等)。
-
可以直接对单个字段进行读写,而不用像String那样需要序列化/反序列化整个对象,效率更高。
-
每个 Hash 可以存储多达 2^32 - 1 个键值对。
-
-
常用命令:
HSET
,HGET
,HGETALL
,HDEL
,HKEYS
,HVALS
-
应用场景:
-
存储对象:用户信息、商品信息、配置信息等。
-