[Redis] 레디스 데이터 타입 - Sorted Set
2023. 1. 30. 16:43
728x90
반응형
Sorted Set
- 연관된 점수로 정렬된 고유한 문자열의 모음이다.
- Set과 동일하게 Key 하나에 중복되지 않는 여러 맴버를 저장하지만, 각각의 맴버는 Score 에 연결된다.
- 모든 데이터는 Score 값으로 정렬되며, Score가 같다면 문자열의 사전 순서로 정렬된다.
- 정렬이 필요한 곳에 사용되며, 주로 Rank를 생성할때 이용한다.
- Score는 double 이기 때문에 부동 소수점에 주의 해야 한다.
기본 명령어
--이미 value 가 있다면 score 값만 변경한다.
ZADD <key> <score> <value>
-- 해당 index 범위의 모든 value를 반환한다. 0, -1 일경우 전체
ZRANGE <key> <startindex> <endindex>
-- 해당 Score 범위의 모든 값을 반환, endsocre가 +inf 일 경우 끝까지
ZRANGEBYSCORE <key> <startscore> <endscore>
-- 오름차순 기준의 맴버 순위 제공 (index 0 부터)
ZRANK <key> <member>
-- 내림차순 기준의 맴버 순위 제공 (index 0 부터)
ZREVRANK <key> <member>
성능
대부분의 정렬된 집합 연산은 O(log(n))이며 여기서 n 은 구성원 수입니다.
ZRANGE큰 반환 값(예: 수만 이상)으로 명령을 실행할 때는 주의를 기울여야 합니다. 이 명령의 시간 복잡도는 O(log(n) + m)입니다. 여기서 m 은 반환된 결과의 수입니다.
참조
https://redis.io/docs/data-types/sorted-sets/
https://redis.io/commands/?group=sorted-set
END
728x90
'Redis' 카테고리의 다른 글
[Redis] Windows 에 Redis 설치하기 (0) | 2023.05.29 |
---|---|
[Redis] 레디스 데이터 타입 - Geospatial (0) | 2023.02.03 |
[Redis] 레디스 데이터 타입 - Hash (0) | 2023.01.25 |
[Redis] 레디스 데이터 타입 - Set (0) | 2023.01.23 |
[Redis] 레디스 데이터 타입 - List (0) | 2023.01.20 |