Skip to content

Redis

빠른 오픈 소스 인메모리 키-값 데이터 구조 스토어

보통 데이터베이스는 하드 디스크나 SSD를 주 저장소로 사용한다. Redis는 메모리(RAM)를 중심으로 동작해 매우 빠른 응답 속도를 제공한다.

캐시, 세션 저장소, 실시간 랭킹, pub/sub, 분산 락 같은 용도로 자주 활용된다.

RAM은 휘발성 아닌가요? 껐다키면 다 날아가는데..

이를 막기위한 백업 과정이 존재한다.

  • snapshot(RDB) : 특정 시점의 메모리 상태를 디스크에 저장
  • AOF(Append Only File) : 쓰기 명령을 로그처럼 계속 기록해 두었다가 재시작 시 재실행하여 복구

실무에서는 RDB와 AOF를 함께 사용해 성능과 복구 가능성을 균형 있게 맞추기도 한다.

데이터 구조는 key/value 기반이며, 단순 캐시를 넘어 다양한 자료구조를 제공하는 인메모리 데이터 저장소로 볼 수 있다.

대표 자료형
  1. String (text, binary data) - 512MB까지 저장이 가능함
  2. List (순서가 있는 문자열 목록)
  3. Set (중복 없는 문자열 집합)
  4. Sorted Set (score 기준으로 정렬되는 집합)
  5. Hash

추가로 Stream, Bitmap, HyperLogLog, Geospatial 등도 지원한다.