Redis에서 정렬 된 집합을 사용합니다.파티션별로 정렬 된 세트를 읽는 방법은 무엇입니까?
정렬 된 집합의 데이터 값은 100 만 개가 넘습니다. 이 정렬 된 세트를 파티션별로 어떻게 읽을 수 있습니까? 처음에는 100,000 행과 다음을 의미합니까?
데이터를 취할 단 하나의 명령이 : smembers set
Redis에서 정렬 된 집합을 사용합니다.파티션별로 정렬 된 세트를 읽는 방법은 무엇입니까?
정렬 된 집합의 데이터 값은 100 만 개가 넘습니다. 이 정렬 된 세트를 파티션별로 어떻게 읽을 수 있습니까? 처음에는 100,000 행과 다음을 의미합니까?
데이터를 취할 단 하나의 명령이 : smembers set
당신은 다음 ZRANGE
에 대한 다음 100,001 200,000 당신의 소트 세트에 ZRANGE
명령을 사용하여 시작을 지정하고 10 만 개 항목을 얻을 중지 할 수 있습니다가.
ZRANGE documentation on Redis.io
당신은 데이터를 취할smembers set
를 사용하여 언급,하지만 그건 단지 비 분류 세트에 사용됩니다. 실제로 정렬되지 않은 세트를 사용하는 경우
SPOP
을 사용하고 100,000으로 계산을 정의해야합니다. 그러나 이렇게하면 모든 항목이 동시에 제거됩니다.
당신은 점진적으로 SSCAN
를 사용하여 정렬되지 않은 세트의 요소를 반복 할 수 있습니다. 커서 0
으로 시작하여 0
이 다시 반환 될 때까지 후속 호출에서 반환 된 커서를 사용하십시오. 이 예에서
pantalones:6379> SSCAN five-characters 0 COUNT 3
1) "7"
2) 1) "d"
2) "e"
3) "a"
4) "c"
pantalones:6379> SSCAN five-characters 7 COUNT 3
1) "0"
2) 1) "b"
는 SSCAN
최초의 호출로는 SSCAN
번째 전화에 제공된다 7
의 커서를 반환한다. 두 번째 호출은 0
커서를 반환하므로 반복이 완료되었음을 알 수 있습니다.
SSCAN documentation on Redis.io을 참조하십시오.
고맙습니다.하지만 정렬되지 않은 간단한'sets'로 어떻게 할 수 있습니까? – Griboedov