Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Redis中查找具有最高值的前N个键_Python_Redis - Fatal编程技术网

Python 在Redis中查找具有最高值的前N个键

Python 在Redis中查找具有最高值的前N个键,python,redis,Python,Redis,我有一个Redis数据库,具有user\u id:ratingstructure,我需要获得N个具有最高评级(值)的用户,如: 我的想法是:获取所有键的列表,在按值排序后,为每个键获取其值(db.mget(db.keys())),然后获取第一个N。有更好的方法吗 我使用Python库。但最重要的是得到正确的算法(或现成的解决方案)。似乎应该遵循使用排序集作为辅助索引的模式 见: u_345: 198 u_144: 180 u_267: 179

我有一个Redis数据库,具有
user\u id:rating
structure,我需要获得N个具有最高评级(值)的用户,如:

我的想法是:获取所有键的列表,在按值排序后,为每个键获取其值(
db.mget(db.keys())
),然后获取第一个N。有更好的方法吗


我使用Python库。但最重要的是得到正确的算法(或现成的解决方案)。

似乎应该遵循使用排序集作为辅助索引的模式

见:

u_345: 198
u_144: 180
u_267: 179