강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

메웅교농베님의 프로필 이미지
메웅교농베

작성한 질문수

가장 쉽고 깊게 알려주는 MongoDB 완벽 가이드 [ By. 비전공자 & Kakao 개발자 ]

섹션 8 퀴즈

섹션8. CAP 퀴즈 질문

해결된 질문

작성

·

11

0

CAP 이론 관점에서, 네트워크 분할 상황 시 MongoDB가 기본적으로 무엇을 우선할까요?

A. 세 가지 모두

B. 가용성과 분할 내성

C. 일관성과 분할 내성

D. 일관성과 가용성

--

정답과 설명 부탁드립니다.

생각했던 답이 오답이라고 나와서 질문 드립니다.

 

답변 1

0

Hong님의 프로필 이미지
Hong
지식공유자

안녕하세요 메웅교농베님 질문 주셔서 감사합니다.

먼저 질문에 대한 답의 기준은 CAP 이론이 무엇인지 알고 있다는 것을 가정해보도록 할게요. 질문에 대한 어떤 답을 하셨는지도 궁금하네요 ㅎㅎ

 

우선 MOngoDB는 레플리카를 기본적으로 구성합니다. 즉 네트워크 분할이 발생한다면 과반수 정책을 통해서 주요 노드 즉 Primary Node를 정하게 되는 것이죠.

그리고 선정되지 못한 노드들은 Write에 사용이되지 않고 트래픽을 분산하고자 하는 READ용 데이터 베이스로 구성이 될 겁니다. 아니면 복제와 고가용성을 위한 노드로써 유지가 되겠죠

그리고 이떄 읽기 요청은 설정에 따라서 세컨더리를 통해서 읽을 수도 있을겁니다.

 

그래서 이러한 관점에서 보았을 떄, 저는 일관성 보장을 위해서 일부 가용성을 희생하는 구조라는 생각이 드네요.

왜냐하면 우선적으로 일관성을 유지하기 떄문입니다. 과반수의 합의가 없다면 쓰기 작업을 진행하지 않기 떄문이고

네트워크 분할상황에서도 시스템이 동작한다는 내성을 가지고 있따고 생각해요.

또한 소수 그룹에 속한 노드 즉 Primary Node가 아닌 노드들은 쓰기가 불가능하기 떄문에 가용성을 일부 희생하지 않나라는 생각이 듭니다.

그래서 최종적으로 CP 성향을 가진 DB라고 생각합니다.

 

메웅교농베님의 프로필 이미지
메웅교농베

작성한 질문수

질문하기