MongoDB
데이터를 직렬화된 JSON 형식으로 저장하는 소스 사용 가능 도큐먼트 데이터베이스
외부 메모리에 데이터를 저장하지만 엔터프라이즈 에디션에는 인 메모리 스토리 엔진이 포함되어 있다.
기본 개념 및 설계
- 문서 기반(Document-Oriented)
- BSON(Binary JSON) 형식으로 데이터를 저장하는 문서 지향형 데이터베이스
- 데이터를 디스크에 저장하며, 복잡한 데이터 구조를 계층적으로 저장 가능
- DB, Collection, Document의 계층 구조
- 주로 비정형 또는 반정형 데이터를 다루는 웹 애플리케이션, 로그 데이터 저장 등에 사용
확장성
데이터 영구성
- 완전한 영구성
- 디스크에 데이터를 저장
- DB가 종료되더라도 데이터는 유지됨
성능
Redis
데이터를 키-값 쌍으로 저장하는 오픈소스 인메모리 데이터베이스
고성능을 위해 RAM에 데이터를 저장하지만 추가 기능으로 온디스크 영구 스토리지를 제공한다.
기본 개념 및 설계
- Key-Value 저장소
- 메모리 기반의 데이터 저장소. 매우 빠른 속도로 데이터를 읽고 쓰는데 특화
- 데이터를 메모리에 저장, 필요 . 시디스크로 스냅샷 가능
- 데이터 구조: string, list, set, sorted set, hash etc.
- 주로 캐싱, 세션 관리, 실시간 순위표 등에 사용
확장성
- 수직 확장(Scale-up)
- 메모리에 의존하기 때문에 RAM 크기가 중요하며, 서버 성능 업그레이드가 일반적
데이터 영구성
- 옵션 기반 영구성
- 스냅샷 또는 명령 로그를 통해 영구 데이터 저장
- 주로 캐싱 용도로 사용됨
성능
