Redis从集合中获取密钥,然后获取多个数据

我知道我可以为此编写一个lua脚本,但是我想知道是否可以使用多行或stream水线来完成。

我有一个包含哈希键的集合,我想在集合上执行HGETALL ,然后使用这些结果对每个键执行HGETALL并返回聚合。 我在节点中使用ioredis。

编辑:

包括一个基于Itamar评论使用ioredis的例子:

  redis.smembers('users', function(err, res) { var pipeline = redis.pipeline(); res.forEach(function(key) { pipeline.hgetall(key); }); pipeline.exec(function(err, res) { var results = res.map(function(item) { return item[1]; }); console.log(results) }); }); 

stream水线是一个很好的select – 在做SMEMBERS之后,pipe道所有的HGETALL。