目录

Redis-Hash类型

Redis–Hash类型


一、引言

本篇文章就Redis的value的类型,哈希类型做简单介绍。

二、介绍

由于Redis中本身的key-value就是哈希形式的,所以value又是哈希,就表示两个哈希进行嵌套。value中的映射关系统称为field-value而不是key-value。

三、操作

1.HSET,HGET,HEXISTS,HDEL

HSET KEY FIELD value[field value]

https://i-blog.csdnimg.cn/direct/b6ccbc786fc64fcaa077dac52282c33f.png

HGET KEY FIELD

https://i-blog.csdnimg.cn/direct/e0030b4a3d3c4b68bc9ba359a7c7e0ce.png

HEXISTS:判断是否存在,1代表存在,0代表不存在

https://i-blog.csdnimg.cn/direct/6a22950c77ba42e0800260f490c7b286.png

HDEL:删除hash中的指定字段

del删除的是key,hdel删除的是field

HDEL key field[field..]

https://i-blog.csdnimg.cn/direct/d544d7d2d7374036bba44635729118a5.png

2.HKEYS,HVALS

HKEYS:获取所有的value

HVALS:获取哈希中的所有value

https://i-blog.csdnimg.cn/direct/f8c503acbd034d0bb7d34b6b57d212e7.png

3.HGETALL,HMGET,HSAN

HGETALL将上面的HKEYS和HVALS结合起来

https://i-blog.csdnimg.cn/direct/6a1395205dd443d4b31653635f545548.png

HMGET:一次查多个field

https://i-blog.csdnimg.cn/direct/bd036cf510ed443ab9b1330e2ed26e52.png

HSAN:遍历redis的hash,但是它属于渐进式遍历

4.HLEN,HSETNX,HINCRBY,HINCRBYFLOAT

HLEN:获取个数

https://i-blog.csdnimg.cn/direct/070bb06a46ed40348cf580caa2e022fa.png

HSETNX:hsetnx key field value:不存在才进行设置

https://i-blog.csdnimg.cn/direct/f18b7d80224947e8adca9ed0d7cc4103.png

HINCRBY:对value进行加减操作

https://i-blog.csdnimg.cn/direct/f7bb701e738b48d2899842f61c7c39d8.png

四、编码方式

1.ziplist(压缩列表)

ziplist进行读写元素的速度是比较慢的,如果元素多了就使用哈希表,如果哈希表中元素少用ziplist,value的值比较短,用ziplist

2.hashtable(哈希表)

元素个数多使用hashtable,value的值比较长,使用hashtable

五、使用场景

1.作为缓存(结构化的数据)

需要存储一个用户的电话,姓名,邮箱,地址等等,这时候使用hash这样的结构来存储就方便许多了。(追求高内聚低耦合)

六、总结

本篇文章简单介绍了Redis中的value是哈希属性的特点,下一篇文章将介绍value的是list类型的特点,感谢观看!