2022年8月15日 作者 zeroheart

redis scan命令

SCAN cursor [MATCH pattern] [COUNT count]
  • cursor – 游标。
  • pattern – 匹配的模式。
  • count – 指定从数据集里返回多少元素,默认值为 10 。

其他的

  • SSCAN 命令用于迭代集合键中的元素。
  • HSCAN 命令用于迭代哈希键中的键值对。
  • ZSCAN 命令用于迭代有序集合中的元素(包括元素成员和元素分值)。

每次拿到新的游标,同时遍历数据,如果游标返回0,代表结束了

例子:

List<String> list = new ArrayList<>();
String cursor = "0";
while(true)
{
    ScanResult<String> users = jedisCluster.sscan("users", cursor);
    List<String> result = users.getResult();
    list.addAll(result);
    cursor = users.getStringCursor();
    if(cursor == "0")
    {
        break;
    }
}