MongoDB vs Redis

ding·2024년 12월 2일

MongoDB

데이터를 직렬화된 JSON 형식으로 저장하는 소스 사용 가능 도큐먼트 데이터베이스
외부 메모리에 데이터를 저장하지만 엔터프라이즈 에디션에는 인 메모리 스토리 엔진이 포함되어 있다.

기본 개념 및 설계

  • 문서 기반(Document-Oriented)
  • BSON(Binary JSON) 형식으로 데이터를 저장하는 문서 지향형 데이터베이스
  • 데이터를 디스크에 저장하며, 복잡한 데이터 구조를 계층적으로 저장 가능
  • DB, Collection, Document의 계층 구조
  • 주로 비정형 또는 반정형 데이터를 다루는 웹 애플리케이션, 로그 데이터 저장 등에 사용

확장성

  • 수평 확장(Scale-up)
    • 대규모 데이터 분산 처리에 적합

데이터 영구성

  • 완전한 영구성
    • 디스크에 데이터를 저장
    • DB가 종료되더라도 데이터는 유지됨

성능

  • 적당한 속도

Redis

데이터를 키-값 쌍으로 저장하는 오픈소스 인메모리 데이터베이스
고성능을 위해 RAM에 데이터를 저장하지만 추가 기능으로 온디스크 영구 스토리지를 제공한다.

기본 개념 및 설계

  • Key-Value 저장소
  • 메모리 기반의 데이터 저장소. 매우 빠른 속도로 데이터를 읽고 쓰는데 특화
  • 데이터를 메모리에 저장, 필요 . 시디스크로 스냅샷 가능
  • 데이터 구조: string, list, set, sorted set, hash etc.
  • 주로 캐싱, 세션 관리, 실시간 순위표 등에 사용

확장성

  • 수직 확장(Scale-up)
    • 메모리에 의존하기 때문에 RAM 크기가 중요하며, 서버 성능 업그레이드가 일반적

데이터 영구성

  • 옵션 기반 영구성
    • 스냅샷 또는 명령 로그를 통해 영구 데이터 저장
    • 주로 캐싱 용도로 사용됨

성능

  • 초고속

0개의 댓글