从redis有效地查询几个哈希

时间:2014-09-20 09:52:38

标签: hash redis

我想在redis中有一些对象数据,我想在表格中显示所有对象。

在SQL中

我会得到所有对象的整行并在视图中显示它

在redis中,我不想单独查询每个哈希,因为这将是难以忍受的缓慢。

假设我知道我想要提取的哈希键和哈希名称,有没有办法有效地做到这一点?

2 个答案:

答案 0 :(得分:0)

我不确定为什么你认为查询每个哈希会慢得无法忍受。如果你遍历你的哈希键并为每个字段名称做一个HMGET你应该是好的,只要你管道化请求。

或者,您可以在一个Lua脚本中执行此操作,该脚本接受(某些)键名称为KEYS,字段为ARGV,以您需要的任何格式返回答案。

答案 1 :(得分:0)

  • 将所有哈希密钥存储在一个集合中,让我们将其称为' hashkeyset'
  • 使用'排序'命令检索所有哈希值sort hashkeyset get * - > field0 get * - > field1 ... get * - > fieldN
  • 你可以找到更多关于' sort'在此链接中http://redis.io/commands/sort