我想获得密钥匹配模式。
ex)测试:*
我考虑使用Keys命令。但它的时间复杂性太长了。
ex)键测试:* =>它发生在头顶上。
我的Redis版本是2.6.16
还有另一种方法吗?
答案 0 :(得分:6)
请升级到最新的Redis版本(2.8.13)并使用SCAN
命令代替,它允许您执行与KEYS相同但不阻止服务器的操作。另外,考虑不涉及密钥空间全扫描的替代设计也是一个好主意。例如,新的ZRANGEBYLEX命令能够对已排序的集执行字典范围查询。
答案 1 :(得分:1)
这取决于您尝试解决的问题。我做了类似的事情,我保留了一些我感兴趣的键,然后首先用smembers
读取SET,然后读取这些键的数据。至于事后的搜索键,你已经像redis一样快了。
当然,您可以像我描述的那样更新您的代码,通过keys Test:*
生成该列表,并将每个代码添加到现有的SET中。