2025-11-02 23:07

Tags: 데이터베이스

레디스

  • 키-값 구조를 사용하는 고성능 인메모리 데이터 저장소로, 속도가 매우 빠르다.
    • CPU 캐시가 가장 빠르고, 그 다음이 RAM(메인 메모리), 그리고 SSD, HDD 순이다.
    • Redis는 데이터를 바로 이 RAM에 저장한다.
    • 디스크에 접근할 필요 없이 모든 작업을 메모리 상에서 처리하기 때문에 상상을 초월하는 속도를 보여준다.
  • 스트링, 리스트, 해시 등 다양한 자료구조를 지원하여 캐시, 세션 관리, 랭킹 시스템 등 다용도로 활용된다.
자료구조설명주요 명령어대표 사용 사례
Strings텍스트, 숫자, 바이너리 데이터 등 가장 기본적인 값 저장. 최대 512MB까지 가능.SET, GET, INCR, DECR, MSET웹 페이지 캐싱, API 응답 결과 저장, 좋아요/조회수 카운터
Hashes여러 필드-값 쌍으로 구성된 객체를 저장. RDBMS의 한 행(Row)과 유사.HSET, HGET, HGETALL, HINCRBY사용자 프로필, 상품 정보, 세션 데이터의 속성 관리
Lists문자열 요소를 순서대로 저장. 양쪽 끝에서 데이터를 추가/제거 가능.LPUSH, RPUSH, LPOP, RPOP, LRANGE최신 게시물 목록, 타임라인 피드, 간단한 메시지 큐
Sets순서가 없고 중복되지 않는 문자열 요소들의 집합.SADD, SREM, SMEMBERS, SISMEMBER태그, 친구/팔로워 관계, 특정 이벤트에 참여한 고유 사용자 집계
Sorted SetsSet에 Score라는 가중치가 추가되어, 요소를 Score 기준으로 자동 정렬.ZADD, ZREM, ZRANGE, ZRANK실시간 랭킹 보드, 자동 완성 기능, 우선순위 큐
Bitmaps비트(0 또는 1) 단위로 데이터를 조작하여 메모리를 극도로 효율적으로 사용.SETBIT, GETBIT, BITCOUNT사용자 접속/이탈 여부, 기능 활성화/비활성화 상태 추적
HyperLogLogs매우 적은 메모리로 대규모 집합의 고유한 원소 개수를 추정.PFADD, PFCOUNT, PFMERGE대규모 사이트의 일일 순 방문자 수(UV) 추정
StreamsKafka와 유사한 Append-only 로그 데이터 구조. 시간 순서대로 이벤트 저장.XADD, XREAD, XGROUP, XACK실시간 이벤트 스트리밍, 채팅 시스템, 센서 데이터 수집