测试人员应该知道的Redis知识(七) Hash

一、概述

测试人员应该知道的Redis知识(七) Hash

 

Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。

 

Redis 中每个 hash 可以存储 2^32 - 1 键值对(4294967295, 每个Hash可存储40多亿个键值对)。

 

Hash是我们工作中使用非常频繁的类型,今天我们一起来看一下针对Hash类型,我们工作中常用的一些命令。

 

二、hset/hget/hmset/hmget/hgetall/hdel

hset : 将哈希表 key 中的字段 field 的值设为 value 。

hget : 获取存储在哈希表中指定字段的值。

hmset : 同时将多个 field-value (域-值)对设置到哈希表 key 中。

hmget : 获取所有给定字段的值。

hgetall : 获取在哈希表中指定 key 的所有字段和值。

hdel : 删除一个或多个哈希表字段,这里需要注意的是hdel不是删除key,而是删除key中的某个field,如果只带上key一个参数,则会报错。

测试人员应该知道的Redis知识(七) Hash

 

三、hlen

hlen : 获取哈希表中字段的数量。测试人员应该知道的Redis知识(七) Hash

 

四、hexists/hsetnx

 

hexists : 查看哈希表 key 中,指定的字段是否存在。

hsetnx : 只有在字段 field 不存在时,设置哈希表字段的值。

测试人员应该知道的Redis知识(七) Hash

 

五、hkeys/hvals

hkeys : 获取所有哈希表中的字段。

hvals : 获取哈希表中所有值。

 

测试人员应该知道的Redis知识(七) Hash

 

六、hincrby/hincrbyfloat

hincrby : 为哈希表 key 中的指定字段的整数值加上增量 increment。

hincrbyfloat : 为哈希表 key 中的指定字段的浮点数值加上增量 increment 。

测试人员应该知道的Redis知识(七) Hash

 

七、总结

Redis hash 看起来就像一个 “hash” 的样子,由键值对组成。Hash 便于表示 objects,因此,如果我们需要缓存一个java对象的话,使用hash类型是一种非常合适的选择。如果大家还有别的什么问题,可以在评论中留言。