简介:
Redis hash命令
序号 | 命令及描述 |
---|---|
1 | HDEL key field1 |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | [HMGET key field1 |
10 | [HMSET key field1 value1 |
11 | |
12 | |
13 | |
14 | HSCAN key cursor [MATCH pattern] [COUNT count] 迭代哈希表中的键值对。 |
应用场景:
Hash的应用场景:(存储一个用户信息对象数据)
常用于存储一个对象;
为什么不用String存储一个对象呢?
Hash 是最接近关系型数据结构的数据类型,可以将数据库一条记录或程序中一个对象转换成 hashMap 存放在redis中;
用户ID为查找的key,存储的value用户对象包含姓名,年龄,生日等信息,如果用普通的key / value结构来存储,主要有以下2中存储方式:
第一种方式将用户ID作为查找key,把其他信息封装成一个对象以序列化的方式存储,这种方式的缺点是,增加了序列化 / 反序列化的开销,并且在需要修改其中一项信息时,需要把整个对象取回,并且修改操作需要对并发进行保护,引入CAS等复杂问题;
第二种方式是这个用户信息对象有多少成员就存多少个key-value对,用户ID对应属性的名称作为唯一标识来取得属性的值,虽然省去了序列化开销和并发问题,但是用户ID为重复存储,如果存在大量这样的数据,内存浪费还是非常可怕的;
总结:
原文:https://www.cnblogs.com/lililixuefei/p/13204743.html