【问题标题】:Get value set of a large map获取大地图的值集
【发布时间】:2016-01-28 15:37:58
【问题描述】:

我有一张大地图,它将 skuIds(字符串,例如:AB-1 到“hola”)映射到名称; skuId 是唯一的,但名称不是。

大约有 100 万个 skuId 映射到大约 1000 个唯一名称。现在我需要获取 skuId 集的任何子集的唯一名称列表。

我尝试了hashmap的hmget,但是检索数百万条记录并循环访问效率不高;然后我尝试使用排序集,(为同名保留相同的分数),但后来我需要排序集的分数集,这不是redis直接提供的。

我们可以通过使用 Lua 脚本来做到这一点(大约需要 10-15 秒),但我不确定在代码中使用 Lua 脚本的缺点。

【问题讨论】:

  • “但是我需要排序集的分数集,这不是redis直接提供的”是什么意思?

标签: redis


【解决方案1】:

为此使用HSCAN。另请查看this answer 关于HSCAN 的使用情况。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多