🆚
mongoDB vs Redis
April 12, 2024
mongoDB에 대해 알아보던 도중 같은 noSQL인 Redis와의 차이는 무엇일지 궁금해 찾아본 내용들을 정리해보고자 한다.
차이점을 표로 간단히 정리하자면 다음과 같다.
구분 | Redis | MongoDB |
---|---|---|
저장소 | 메모리 저장 | 디스크 저장 |
데이터 구조 | key-value - key: 문자열 - value: 문자열 및 List, Set, Bitmap, Hash와 같은 여러 데이터 구조 |
BSON(Binary JSON) - 문자열, 부울, 숫자, 배열, 객체, 날짜 등 다양한 데이터 유형 지원 |
확장성 | 수평적 확장 (샤딩) | 수평적 확장 (샤딩), 복제 세트를 이용한 고가용성 제공 |
지원 쿼리 | 기본적인 Key-Value 연산 및 데이터 구조별 복잡한 연산 지원 | 다양한 쿼리 연산, 인덱싱, 집계 파이프라인 지원 |
데이터 유지 | 주로 캐싱에 사용, 영속성을 위한 RDB/AOF 옵션 제공 | 데이터 영속화 |
성능 | 메모리 기반으로 고속의 데이터 처리 가능 | 메모리 매핑을 이용한 빠른 데이터 처리 가능 |
mongoDB는 메모리맵 형태의 파일 엔진 db이기 때문에 메모리에 의존적이라 메모리 크기가 성능을 좌우하며 메모리를 넘어서는 경우 성능이 급격히 저하된다.
참고 mongoDB 공식 문서 - mongoDB vs Redis