728x90
반응형
Sorted Set
- 하나의 Key에 여러개의 Score와 Value로 구성된다
- Score를 기준으로 정렬이 가능하다
- value는 score로 sort되며 score가 같으면 value로 sort 된다.
- score가 같으면 value로 sort됩니다.
- Sorted Sets에서는 집합이라는 의미에서 value를 member라 부릅니다.
- Sorted Sets은 주로 정렬이 필요한 곳에 사용한다.
ZADD - 데이터 추가
zadd는 Sorted Sets에 데이터를 추가한다. ZADD KEY [score] [value] 순으로 입력
redis:6379> zadd test 10 a
(integer) 1
redis:6379> zadd test 20 b
(integer) 1
redis:6379> zadd test 15 c
(integer) 1
ZADD KEY [score] [value] [score] [value] 순으로 여러 입력이 가능하다.
redis:6379> zadd test 25 d 30 e
(integer) 2
value의 중복을 허용하지 않고, value가 같은 경우 score를 업데이트 처리한다.
redis:6379> zadd test3 1 a
(integer) 1
redis:6379> zrange test3 0 -1 withscores
1) "a"
2) "1"
redis:6379> zadd test3 2 a
(integer) 0
redis:6379> zrange test3 0 -1 withscores
1) "a"
2) "2"
ZRANGE - 데이터 확인
zrange는 sorted set의 value 를 반환한다. ZRANGE KEY [START_INDEX] [END_INDEX] 순으로 입력한다.
redis:6379> zrange test 0 -1
1) "a"
2) "c"
3) "b"
표출 순서는 value 기준으로 score 내림차순. ZRANGE KEY [START_INDEX] [END_INDEX] withscores 를 입력하면 score와 함께 출력한다.
redis:6379> zrange test 0 -1 withscores
1) "a"
2) "10"
3) "c"
4) "15"
5) "b"
6) "20"
score가 같으면 member 순으로 정렬된다.
redis:6379> zadd test2 10 c 10 b 10 a
(integer) 3
redis:6379> zrange test2 0 -1 withscores
1) "a"
2) "10"
3) "b"
4) "10"
5) "c"
6) "10"
ZRANK - Sorted Set 데이터 순위 확인
ZRANK는 VALUE의 순위를 반환한다.
redis:6379> zrange test 0 -1 withscores
1) "a"
2) "10"
3) "c"
4) "15"
5) "b"
6) "20"
7) "d"
8) "25"
9) "e"
10) "30"
ZRANK KEY VALUE 순으로 입력한다.
redis:6379> zrank test a
(integer) 0
redis:6379> zrank test c
(integer) 1
redis:6379> zrank test b
(integer) 2
redis:6379> zrank test d
(integer) 3
redis:6379> zrank test e
(integer) 4
ZREVRANK - Sorted Set의 데이터 순위 반환
ZREVRANK는 score가 큰 순으로 0부터 index를 매긴 결과를 리턴한다. ZREVRANK KEY VALUE 순으로 입력한다
redis:6379> zrevrank test a
(integer) 4
redis:6379> zrevrank test b
(integer) 2
redis:6379> zrevrank test a
(integer) 4
redis:6379> zrevrank test c
(integer) 3
redis:6379> zrevrank test b
(integer) 2
redis:6379> zrevrank test d
(integer) 1
redis:6379> zrevrank test e
(integer) 0
728x90
반응형
'Server > Redis' 카테고리의 다른 글
[Redis] Redis Lock과 Redis Connection Pool (0) | 2024.02.07 |
---|---|
Redis, Persistence - AOF (0) | 2022.12.11 |
Redis, Collections - Hashes (0) | 2022.11.27 |
Redis, Collection - Sets (0) | 2022.11.27 |
Redis, Collection - Lists (0) | 2022.11.27 |