Data structures Redis中的相交排序集
我在Redis中有一个排序集,包含如下值:Data structures Redis中的相交排序集,data-structures,redis,data-modeling,Data Structures,Redis,Data Modeling,我在Redis中有一个排序集,包含如下值: ZADD ranking1 0 Kyle Neath ZADD ranking1 1 Cameron McEfee ZADD ranking1 2 Ben Bliekamp ZADD ranking1 3 Justin Palmer ZADD ranking2 0 Cameron McEfee ZADD ranking2 1 Justin Palmer ZADD ranking2 2 Kyle Neath ZADD ranking2 3 Ben Bl
ZADD ranking1 0 Kyle Neath
ZADD ranking1 1 Cameron McEfee
ZADD ranking1 2 Ben Bliekamp
ZADD ranking1 3 Justin Palmer
ZADD ranking2 0 Cameron McEfee
ZADD ranking2 1 Justin Palmer
ZADD ranking2 2 Kyle Neath
ZADD ranking2 3 Ben Bliekamp
。。。等等
有没有办法获取某个人的分数并以列表形式返回?例如,调用
Kyle Neath
将返回[0,2]
。我是否应该以不同的方式对此进行建模以实现相同的目标?根据当前的数据布局,实现列表的唯一方法是每个排名使用一个zscore
除此之外,您还可以为每个人设置一个哈希值,其中包含他们在每个排名中的位置。内存使用率不会高得多,因为字符串可以重用,哈希值也非常便宜。
例如:
HMSET "Kyle Neath" ranking1 0 ranking2 2
HMSET "Cameron McEfee" ranking1 1 ranking2 0
HMSET "Ben Bliekamp" ranking1 2 ranking2 3
HMSET "Justin Palmer" ranking1 3 ranking2 1
去拿名单
HVALS "Kyle Neath"
但是,您必须确保应用程序代码中排序集和哈希值的一致性。IMHO这是正确的方法(每人有一个额外的哈希值)