Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.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
Java 从redis获取n个密钥_Java_Caching_Redis - Fatal编程技术网

Java 从redis获取n个密钥

Java 从redis获取n个密钥,java,caching,redis,Java,Caching,Redis,有没有办法从redis取n个密钥 我在redis中有一个巨大的密钥列表,如何一次获取n个密钥,比如一次获取10k记录作为CSV文件 提前感谢。我能想到的最简单的方法是使用命令。它允许您通过返回可用于下一个查询的光标来迭代键 例如,scan 0 count 10000获取前10k个键,然后在下一次迭代的响应中使用光标scan count 10000 如果您需要对密钥进行排序,那么我不确定是否有简单的解决方案,但您可以尝试使用scan的match选项强制进行排序。例如,要获取以“a”开头的所有前10

有没有办法从redis取n个密钥

我在redis中有一个巨大的密钥列表,如何一次获取n个密钥,比如一次获取10k记录作为CSV文件


提前感谢。

我能想到的最简单的方法是使用命令。它允许您通过返回可用于下一个查询的光标来迭代键

例如,
scan 0 count 10000
获取前10k个键,然后在下一次迭代的响应中使用光标
scan count 10000


如果您需要对密钥进行排序,那么我不确定是否有简单的解决方案,但您可以尝试使用
scan
match
选项强制进行排序。例如,要获取以“a”开头的所有前10k密钥,请执行以下操作:
scan 0 count 10000 match a*

我完全依赖于使用的redis数据类型。对于所有类型,您都可以使用SCAN、hashset、HSCAN等等,正如这里提到的,您如何在运行时决定检索哪些键?@GuyKorland我需要按字母顺序排序。有什么办法可以做到吗?你可能想考虑用ReDeDebug索引数据,或者用RedisGearsdo来收集数据?你还需要这些密钥的值吗?