Redis数据类型之Hash

一 hash
1.新的存储需求:对一系列存储的数据进行编码,方便进行管理,典型应用存储对象信息。
2.需要的存储结构:一个存储空间保存多个键值对数据
3.hash类型,底层使用哈希表结构实现数据存储
Redis数据类型之Hash_第1张图片
4.hash类型数据的基本操作
添加或者修改数据

 hset key field value
 

Redis数据类型之Hash_第2张图片
获取数据

hget key field

Redis数据类型之Hash_第3张图片
获取所有数据

hgetall key 

Redis数据类型之Hash_第4张图片
删除数据

hdel key field1 [field2]

Redis数据类型之Hash_第5张图片
添加或者修改多个数据

hmset key field1 value1 field2 value2 ...

Redis数据类型之Hash_第6张图片获取多个数据

hmget key field1 field2 ..

在这里插入图片描述
获取hash表字段的数量

hlen key

Redis数据类型之Hash_第7张图片
获取哈希表中是否存在指定的字段

hexists key field

在这里插入图片描述
获取哈希表中所有字段名

hkeys key

Redis数据类型之Hash_第8张图片
获取哈希表中所有字段值
hvals hy
在这里插入图片描述
设置指定字段的数值数据增加或者指定范围的值

hincrby key field increment

Redis数据类型之Hash_第9张图片

hincrbyfloat key field increment

Redis数据类型之Hash_第10张图片

hash数据类型的注意事项
Redis数据类型之Hash_第11张图片
5.redis购物车设计
Redis数据类型之Hash_第12张图片
Redis数据类型之Hash_第13张图片
6、商品抢购、限购类、限量发放优惠券、激活相关业务等,可以使用Hash结构进行存储
解决方案:
* 以商家id作为key
* 将参与抢购商品的id作为field
* 将参与抢购商品的数量作为value
* 抢购时使用降级的方式控制商品数量 如 hincrby list num -1

7.string 与hash存储对象有何异同点
string 存储对象的,每次将对象转换为json,读取比较快,更新操作比较麻烦
hash存储对象,更新数据比较方便

你可能感兴趣的:(redis)