(MongoDB) Hidden Replica Set Members

* Hiddent 멤버는 primary`s데이터 셋을 복사해놓지만 클라이언트 애플리케이션에 보이지 않는다.

Hidden members는 항상 priority 0 멤버이며 primary가 될 수 없다.

* db.isMaster() 를 치더라도 히든 멤버는 노출되지 않는다. 그러나 투표에는 참여한다.

<Behavior>

Read Operation

클라이언트는 읽기를 적절한 히든 멤버들에게 분배시키지 못한다.
결과적으로 이러한 멤버들은 트래픽을 받지 않는다. 그러므로 Hidden members는 reporting이나 backups와 같은 헌신적인 일들을 하는데 주로 쓰인다.

Delayed member들은 히든이 된다.

샤드클러스터에서는 mongos는 히든 멤버들과 상호작용하지 않는다.


Voting

히든 멤버들은 replica set 투표에 참여한다.



  • MMAPv1 스토리지 엔진을 사용하는 경우, db.fsyncLock() 와 db.fsynUnlock()을 사용하여 히든멤버가 stop하는것을 막을 수 있다.
  • 버전 3.2에서는 db.fsyncLock() 는 데이터 파일들이 변화하는 것을 막을 수 있다.그러므로 일관성을 제공하고 백업의 목적을 달성 할 수 있다.
  • 이전 버전의 몽고디비에서는 db.fsyncLock()은 Wired Tiger에서의 로우 레벨의 백업을 보장하지 않았다.





댓글

이 블로그의 인기 게시물

(ElasticSearch) 결과에서 순서 정렬

(네트워크)폴링방식 vs 롱 폴링방식

(18장) WebSocekt과 STOMP를 사용하여 메시징하기