redis 哈希(hash)数据类型详解和应用场景
redis是一个高速缓存的key-values数据库,它支持五种的数据类型,包括字符串类型(String)、列表(list)、集合(set)、有序集合(zset)、哈希(hash)。下面我们来详细分析redis hash数据类型详解和应用场景。
一、redis哈希(hash)数据类型
Redis hash数据结构 是一个键值对(key-value)集合,它是一个 string 类型的 field 和 value 的映射表,redis本身就是一个key-value型数据库,因此hash数据结构相当于在value中又套了一层key-value型数据。所以redis中hash数据结构特别适合存储关系型对象。比如用来存储学生基本信息,或者用户信息等。
二、redis hash 常用命令
1、Hmset 命令:用于同时将多个field-value (字段-值)对设置到哈希表中。假如hash表中已经存在field,则会对其进行覆盖。如果哈希表不存在,会创建一个空哈希表,并执行 HMSET 操作。命令如下:
Hmset stuhash stuid 20190101 name tom sex 1
2、Hmget 命令:用于返回hash表中field字段对应的值,如果field不存在,那么返回nil值。命令如下:
Hmget stuhash stuid Hmget stuhash stuid name
3、Hset 命令:对hash表中field对应的value进行赋值,如果哈希表不存在,一个新的哈希表被创建并进行 HSET 操作。命令如下:
Hset stuhash name tom1 Hmget stuhash name
4、Hvals 命令:用于返回哈希表所有field对应的值。命令如下:
Hvals stuhash
5、Hdel 命令:用于删除指定哈希表中的一个或多个field,不存在的field将被忽略。命令如下:
Hdel stuhash sex
6、Hgetall 命令用于返回哈希表中,所有的字段和值。命令如下:
Hgetall stuhash
三、redis哈希应用场景
1、由于hash数据类型的key-value的特性,用来存储关系型数据库中表记录,是redis中哈希类型最常用的场景。一条记录作为一个key-value,把每列属性值对应成field-value存储在哈希表当中,然后通过key值来区分表当中的主键。
2、经常被用来存储用户相关信息。优化用户信息的获取,不需要重复从数据库当中读取,提高系统性能。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论