2021. 5. 25. 10:31ㆍit
0. Sorted Sets 란
Sorted Set은 주로 sort가 필요한 곳에 사용이 된다.
주로 필자는 redis에서 데이터의 범위 조회에 사용을 한다. (부분적으로 사용 가능 )
관련 예제는 아래 샘플 코드에서 확인이 가능한다.
sorted set은 하나의 key에 여러가지 score와 value로 구성이 된다.
value는 score로 sort가 이루어 진다.
그리고 value값은 중복이 생기면 기존 값은 새로운 값으로 update 쳐 진다.
( 중요 이슈가 될 수 있다. )
음, 추가로 더 설명할게 있다면, value는 sort set에서 member 불린다.
아래 링크를 찾아보면 다 자세한 함수들이 나온다.
http://redisgate.kr/redis/command/zsets.php
그럼 소스 코드를 확인해보겠다.
1. redis connection
Redis connection input ( host, port, database )
import redis r = redis.Redis(host='localhost', port=6379, db=15) |
2. redis zadd 값 넣기
zadd input : ( key: { value, Score(int) } )
r.zadd("tagA", {47.3 : 202001010003, 182.124 : 202001010004, 234.5 : 202001010005} ) |
3. redis 조회하기
zrangebyscore input : ( key, FromScore(int), ToScore(int) )
r.zrangebyscore ("tagA", "0", "(202001010002") |
4. redis 역 순으로 조회하기
zrevrangebyscore input : ( key, FromScore(int), ToScore(int) )
r.zrevrangebyscore("tagA", "(202001010004", "-9999999") |
5. redis 조회 limit 걸기
zrevrangebyscore input : ( key, FromScore(int), ToScore(int), start, num )
r.zrevrangebyscore("tagA", "(202001010004", "-9999999", start=0, num=1 ) |
6. zrange count 확인 하는 방법
zcount input : (key, FromScore(int), ToScore(int) )
r.zcount("tagA", -math.inf, math.inf ) |
7. zrange 삭제 하는 방법
7-1. 삭제해야 하는 스코어 찾아내기
r.zrange("tagA", 0, 0, withscores=True) remove_data = r.zrange("tagA", 0, 0, withscores=True)[0][1] print( remove_data ) >> 202001010000.0 |
7-2. zrange 삭제 하는 방법
zremrangebyscore input : ( key, FromScore(int), ToScore(int) )
r.zremrangebyscore("tagA", remove_data, remove_data) |
'it' 카테고리의 다른 글
python datetime to unix time, string변환하기 (0) | 2021.07.17 |
---|---|
티스토리 지도 첨부하기 (0) | 2021.07.13 |
IIS와 Flask (Python) 연동 (0) | 2021.05.12 |
PrestoDB 설치(install) 가이드 - ( MongoDB 연동 ) (1) | 2021.04.27 |
Jupyter NoteBook 설정 및 Service(서비스) 등록 (0) | 2021.04.14 |