Redis中keys和hkeys的区别
来源:互联网 发布:维生素软件 编辑:程序博客网 时间:2024/06/07 02:11
Redis中keys和hkeys的区别
在redis中,keys和hkeys最根本的区别就是操作的对象不一样。
- keys操作的是redis库中的key值,用于检索redis中的key;
- hkeys操作的对象是hash对象的字段值。
keys
官方解释
KEYS pattern
查找符合给定模式的key。
可以使用正则表达式
KEYS *命中数据库中所有key。
KEYS h?llo命中hello, hallo and hxllo等。
KEYS h*llo命中hllo和heeeeello等。
KEYS h[ae]llo命中hello和hallo,但不命中hillo。
KEYS h[a-z]llo
KEYS hello[0-9]
特殊符号用”\”隔开
时间复杂度:
O(N),N为数据库中key的数量。
返回值:
符合给定模式的key列表。
利用keys的模糊匹配带来的性能问题
从上面开来,keys的模糊匹配功能很方便也很强大,但是在生产环境需要慎用!开发中使用keys的模糊匹配却发现redis的CPU使用率极高,所以一般不建议在redis上面使用keys这样的命令。
那怎么解决这种类似的keys模糊匹配问题呢?其中常见的方法就是设置一个set,将需要使用的keys存储在set中。
hkeys
官方解释
HKEYS key
返回哈希表key中的所有域。
时间复杂度
O(N),N为哈希表的大小。
返回值
一个包含哈希表中所有域的表。
当key不存在时,返回一个空表。
当key存在,但是类型不是hash类型的时候,则抛出异常
(error) WRONGTYPE Operation against a key holding the wrong kind of value
阅读全文
1 0
- Redis中keys和hkeys的区别
- SCAN和KEYS 区别
- Redis中keys命令带来的性能问题与解决方案
- Redis遍历所有key的两个命令 -- KEYS 和 SCAN
- Redis遍历所有key的两个命令 -- KEYS 和 SCAN
- Redis遍历所有key的两个命令 -- KEYS 和 SCAN
- redis的一些性能测试,主要是keys和smembers
- 展示redis所有的keys
- 动魄惊心的redis keys 事件
- redis keys的通用操作
- Redis Keys的通用操作
- Redis Keys的通用操作
- Redis-Keys的通用操作
- 详解forin,Object.keys和Object.getOwnPropertyNames的区别
- Redis学习(四)Redis的特性和Keys的通用操作
- 如何批量删除redis中keys
- Redis keys命令的处理机制
- Redis中keys命令的使用与带来的性能问题
- 魅族手机 INSTALL_FAILED_USER_RESTRICTED
- 关于百度地图获取测试版SHA1和发布版发布版SHA1的问题
- 混淆代码
- 阿里云文本关键词过滤检测
- JS中for循环输出同一变量值的问题
- Redis中keys和hkeys的区别
- Mysql查询数据第一讲之查询数据基本语法
- poj 2159 Ancient Cipher
- P2P 之UDP穿透NAT的原理与实现 whood
- 搜索引擎-solr
- 详解嵌套ListView、ScrollView布局显示不全的问题
- Get和Post的区别
- Cocos2d-x学习之---Andorid关于返回键退出的一些小总结
- 微信分享功能填坑过程