hash类型
- 新的存储需求:对一系列的数据进行编组,方便管理,典型应用存储对象信息
- 需要的存储结构: 一个存储空间保存多个键值对数据
-
hashL诶性:底层使用哈希表实现数据存储
image.png
hashL诶性数据的基本操作
- 添加修改数据
hset key field value - 获取数据
hget key field
hgetall key - 删除数据
del key field [field2] - 添加/修改多个数据
hmset key field1 value1 field2 value2 - 获取多个数据
hmget key field1 field2 field3 ... - 获取哈希表中字段的数量
hlen key - 获取哈希表中是否存在指定的字段
hexists key field
hash类型数据扩展操作
- 获取哈希表中所有字段名或字段值
hkeys key
hvals key - 设置指定字段的数值数据增加指定范围的值
hincrby key field increment
hincrbyfloat key field increment
hash类型数据操作注意
- hash类型下的value只能为字符串,不能为其他数据类型,不存早嵌套现象,若数据获取不到,则返回nil
- hgetall 操作可以获取全部数据,如果内部field过多,会造成效率低下
hash类型应用场景
- 业务场景一
image.png |
---|
仅分析购物车的redis存储模型
添加/浏览/更改数量/删除
- 解决方案
以客户id作为key,每位客户创建一个hash存储结构存储对应的购物车信息
将商品编号作为field,购买数量作为value进行存储
添加商品:追加全新的field与value
浏览:遍历hash
更改数量:自增/自减,设置value值
删除商品:删除field
清空:删除key
网友评论