Mongodb 장단점
장점
비동기 드라이버를 사용할 수 있다.
- 현재 JDBC의 경우 동기 드라이버만 존재해 블러킹 포인트가 됨
RDB와 개념이 유사해, 쿼리 변환기가 있을 만큼 개념적으로 어색하지 않다.
- 사용법도 마찬가지로 이질감이 없다.
RDB에 비해 성능이 100배 이상 빠르다.
- 별도의 캐시 솔루션이 필요하지 않을 만큼 성능 문제에서 우월하다.
스키마 관리가 필요 없다.
이미 성숙기에 접어들어 운용, 개발, 유틸리티에 부족함이 없다.
-
Cassandra, Couchbase, Mongodb의 경우 대규모 트래픽, 데이터 저장, fail-over, fault-tolerance에 다양한 대안이 마련 되어있는 상황이다.
-
redis과 비교해봐도 충분히 안정권에 들어온 상태다.
샤드 추가가 간편하다.
- 다른 NOSQL처럼 리밸런싱은 불가능하지만, 그럼에도 적정 수치때 샤드를 추가해준다면 장점은 충분히 누릴 수 있다.
단점
복잡한 쿼리를 사용할 수 없다.
- join을 사용할 수 없다.
메모리 사용량이 큰 편이다.
- 메모리 부족 시 퍼포먼스가 급락한다.
데이터 일관성이 보장되지 않는다.
- 다만, ACID 도입 베타 릴리즈 진행 중이다.
출처 : https://elky84.github.io/2018/09/26/mongodb/