English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Redis는 순서집합과 마찬가지로 string 유형 요소의 집합이며 중복된 구성원을 허용하지 않습니다.
다른 점은 각 요소가 double 타입의 점수와 연결됩니다. Redis는 점수를 통해 집합의 구성원을 소수점에서 큰 순으로 정렬합니다.
정렬된 집합의 구성원은 유일하지만 점수(score)는 중복될 수 있습니다.
. 집합은 해시 테이블을 통해 구현되었기 때문에 추가, 제거, 검색의 복잡도는 O(1) 232 - 1 (4294967295, 각 집합은 저장할 수 있습니다40개 이상의 백억 개의 구성원이 있습니다).
redis 127.0.0.1:6379> ZADD w3codeboxkey 1 redis (integer) 1 redis 127.0.0.1:6379> ZADD w3codeboxkey 2 mongodb (integer) 1 redis 127.0.0.1:6379> ZADD w3codeboxkey 3 mysql (integer) 1 redis 127.0.0.1:6379> ZADD w3codeboxkey 3 mysql (integer) 0 redis 127.0.0.1:6379> ZADD w3codeboxkey 4 mysql (integer) 0 redis 127.0.0.1:6379> ZRANGE w3codeboxkey 0 10 WITHSCORES 1) "redis" 2) "1" 3) "mongodb" 4) "2" 5) "mysql" 6) "4"
위 예제에서는 명령을 통해 ZADD Redis 정렬된 집합에 세 가지 값이 추가되었으며 점수와 연결되었습니다.
아래 표는 Redis 정렬된 집합의 기본 명령을 나열합니다:
순번 | 명령 및 설명 |
---|---|
1 | ZADD key score1 member1 [score2 member2] 정렬된 집합에 하나 또는 여러 구성원을 추가하거나 기존 구성원의 점수를 업데이트합니다 |
2 | ZCARD key 정렬된 집합의 구성원 수를 가져옵니다 |
3 | ZCOUNT key min max 정렬된 집합에서 지정된 범위 점수의 구성원 수를 계산합니다 |
4 | ZINCRBY key increment member 정렬된 집합에서 지정된 구성원의 점수에 증가량 increment을 더합니다 |
5 | ZINTERSTORE destination numkeys key [key ...] 주어진 하나 또는 여러 정렬된 집합의 교집합을 계산하고 결과 집합을 새로운 정렬된 집합 destination에 저장합니다 |
6 | ZLEXCOUNT key min max 정렬된 집합에서 지정된 딕셔너리 범위 내 구성원 수를 계산합니다 |
7 | ZRANGE key start stop [WITHSCORES] 인덱스 범위를 통해 정렬된 집합에서 지정된 범위 내 구성원을 반환합니다 |
8 | ZRANGEBYLEX key min max [LIMIT offset count] 딕셔너리 범위를 통해 정렬된 집합 구성원을 반환합니다 |
9 | ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT] 점수를 통해 정렬된 집합에서 지정된 범위 내 구성원을 반환합니다 |
10 | ZRANK key member 정렬된 집합에서 지정된 구성원의 인덱스를 반환합니다 |
11 | ZREM 키 멤버 [멤버 ...] 정렬된 집합에서 하나 이상의 멤버를 제거합니다 |
12 | ZREMRANGEBYLEX 키 최소 최대 정렬된 집합에서 주어진 딕셔너리 범위의 모든 멤버를 제거합니다 |
13 | ZREMRANGEBYRANK 키 시작 종료 정렬된 집합에서 주어진 순위 범위의 모든 멤버를 제거합니다 |
14 | ZREMRANGEBYSCORE 키 최소 최대 정렬된 집합에서 주어진 점수 범위의 모든 멤버를 제거합니다 |
15 | ZREVRANGE 키 시작 종료 [WITHSCORES] 정렬된 집합에서 지정된 범위의 멤버를 반환하고, 인덱스를 통해 점수가 높은 순으로 정렬합니다 |
16 | ZREVRANGEBYSCORE 키 최대 최소 [WITHSCORES] 정렬된 집합에서 지정된 점수 범위의 멤버를 반환하고, 점수가 높은 순으로 정렬합니다 |
17 | ZREVRANK 키 멤버 정렬된 집합에서 지정된 멤버의 순위를 반환합니다. 정렬된 집합의 멤버는 점수 값으로 내림차순(큰 숫자에서 작은 숫자로)으로 정렬됩니다 |
18 | ZSCORE 키 멤버 정렬된 집합에서 멤버의 점수 값을 반환합니다 |
19 | ZUNIONSTORE 대상 키 개수 키 [키 ...] 주어진 하나 이상의 정렬된 집합의 합집합을 계산하고 새로운 키에 저장합니다 |
20 | ZSCAN 키 커서 [MATCH 패턴] [COUNT 개수] 정렬된 집합의 요소(요소 멤버와 요소 점수를 포함하여)를 반복적으로 순회합니다 |