我的结构
cat:id:name -> name of category
cat:id:subcats -> set of subcategories
cat:list -> list of category ids
下面给出了一个cat id列表:
lrange cat:list 0, -1
我是否必须从上面的命令中迭代每个id以获取脚本中的name
字段?因为这似乎效率低下。如何从redis获取类别名称列表?
答案 0 :(得分:2)
有几种不同的方法。您可能希望列表中的值是分隔/编码的字符串,其中包含您需要快速访问的ID,名称和任何其他值。我建议JSON具有互操作性和高效的字符串长度,但还有其他格式更高效。
另一种选择是像你说的那样迭代。您可以通过在单个请求中获取所有密钥,然后使用MGET,流水线操作或MULTI / EXEC在单个高效的操作中获取所有名称来提高效率。