标签: python redis
我拥有user_id: rating结构的Redis数据库,我需要获得N个具有最高评分(值)的用户,例如:
user_id: rating
u_345: 198 u_144: 180 u_267: 179
我的想法是:列出所有键,然后对每个键获取其值(db.mget(db.keys())),然后按值排序并获得第一个N。还有更好的方法吗?
db.mget(db.keys())
我使用redis-py Python库。但是主要是要获得正确的算法(或现成的解决方案)。
答案 0 :(得分:2)
您似乎应该遵循将“排序集”用作二级索引的模式。
请参阅:https://redis.io/topics/indexes