5.2 Hash数据类型
针对于要保存的是一个结构化数据,Redis提供了Hash的数据类型结构。
也就是在Redis的Key-Value中的Value是一个Map。
5.2.1 Hash数据类型的指令
命令 | 示例 | 使用频率 | 说明 |
---|---|---|---|
hget | hget user:1:info age | ***** | 获取hash中key=age的值 |
hset | hset user:1:info age 23 | ***** | 设置hash中age=23 |
hmset hmget | hmset user:2:info age 30 name kaka hmget user:2:info age name hgetall user:2:info | ***** | 设置hash多个值 获取hash多个值 获取hash所有值 |
hdel | hdel user:1:info age | *** | 删除user:1的age |
hexists | hexists user:1:info name | * | 检查是否存在 |
hlen | hlen user:1:info | * | 获取指定长度(属性个数) |
注:
Redis的hash key的命名规则:对象类型:id:属性。
例如在如下命令中:
hset user:1:info name marshal
hset user:1:info age 23
user —— 对象类型
1 —— id
info —— 属性
也就是说“user:1:info”整体作为了一个key值。
5.2.2 对象存储方案
左边是json序列化后的对象字符串,右边是一个标准的hash的结构。