Database
Redis DataType 간단 정리
집사킴
2023. 5. 13. 16:17
728x90
- String
- 숫자넣으면 incre decre 기능 사용 가능
- 활용사례 : 좋아요 수 증감처리
- mset mget으로 한번에 여러 키/벨류 삽입 조회 가능
- List
- 링크드리스트 자료구조
- 인덱스 조회 불가, 데이터 넣고빼기 용이
- 파이썬 deque와 비슷한 느낌?
- 링크드리스트 자료구조
- Set
- 활용사례 : 이벤트 쿠폰 발급하고 중복사용 막기. 사용한 유저id를 셋에 삽입
- Hash
- 벨류가 오브젝트 처럼 여러 필드를 갖고있음
- 기존 스트링에 json으로 보관하는 것 과의 차이점 : 특정 필드에 따로 접근 가능
- 각 필드에 접근하여 incre decre도 가능 : 특정 숫자 증가 가능 (string inc와의 차이점)
- SortedSet
- Set의 필드에 score값이 포함되어있음
- 활용사례 : 게임 랭킹 시스템
- Bitmap
- 비트벡터로 아루어짐
- 활용사례 : 특정 유저의 방문여부 값을 보관. 0/1로만 이루어진 데이터
- bitcount를 이용하면 방문자수도 구할 수 있음
- 0 이상의 정수로 이루어진 값만 카운팅에 사용할 수 있음
- HyperLogLog
- 유니크한 값의 개수를 효율적으로 얻을 수 있음
- 100퍼 정확한 값을 보장하진 않음
- 유니크 보장 값이 큰데도 set 대비 메모리를 적게 사용함 (12KB 고정)
- 저장한 데이터를 읽을 순 없음. 값을 넣고 그 값의 count를 얻는 목적
728x90