MongoDB는 문서 지향 데이터 모델(Document DB)를 사용하는 데이터베이스이다.
이러한 유형의 모델을 사용하면 정형 및 비정형 데이터를 보다 쉽고 빠르게 통합할 수 있다는 장점이 있다.
RDBMS는 MySQL이 많이 쓰이듯, NoSQL 데이터베이스 중 대표겨이라고 말할 정도로 가장 많이 쓰임
NoSQL DB vs 관계형 DB 비교
NoSQL | RDBMS | |
---|---|---|
적합 업무 | - 오프라인에서 정형 및 비정형 데이터 분석 업무 |
서버 장애에도 서버가 유동적으로 분담하여 서비스를 계속 유지 시킬 수 있음
Primary와 Secondary로 구성된 ReplicaSet 구조로 고가용성을 지원함
MongoDB는 기본적으로 하나의 primary와 2개의 secondary로 ReplicaSet을 구성함
primary는 데이터 쓰기 요청을 처리 → secondary는 primary로 부터 변경된 데이터를 복제함
이렇게 데이터를 복제하고 유지함으로써, 하나의 서버에서 장애가 발생하더라도 데이터를 유지할 수 있다.
만일 primary 서버에 문제가 생기면, secondary가 primary로 전환되어 서버를 계속 유지시킴
그리고 다시 빈 secondary 서버를 MongoDB가 복구시켜줌으로서 서버를 유지시킬 수 있음