문서 메뉴

문서 홈애플리케이션 개발MongoDB 매뉴얼

숨겨진 복제본 세트 멤버를 참조하십시오.

이 페이지의 내용

  • 행동
  • 추가 읽기

숨겨진 멤버는 프라이머리 데이터 세트의 복사본을 유지 관리하지만 클라이언트 애플리케이션에는 표시되지 않습니다. 숨겨진 멤버는 복제본 세트의 다른 멤버와 사용 패턴이 다른 워크로드에 적합합니다. 숨겨진 멤버는 항상 우선 순위 0 멤버여야 하므로 프라이머리가 될 수 없습니다. db.hello() 메소드는 숨겨진 멤버를 표시하지 않습니다. 그러나 숨겨진 멤버는 선거에서투표할 수 있습니다.

다음 5명의 멤버로 구성된 복제본 세트에서는 4명의 세컨더리 멤버가 모두 프라이머리 데이터 세트의 복사본을 가지고 있지만 세컨더리 멤버 중 하나는 숨겨져 있습니다.

숨겨진 우선 순위 0 멤버가 있는 5명의 멤버로 구성된 복제본 세트의 다이어그램입니다.

클라이언트는 숨겨진 멤버에게 적절한 읽기 설정으로 읽기를 배분하지 않습니다. 결과적으로 이러한 멤버는 기본 복제 이외의 트래픽을 수신하지 않습니다. 보고, 백업 등의 전용 작업에는 숨겨진 멤버를 사용하세요.

중요

복제본 세트에 지연 멤버가 포함되어 있는 경우 지연 멤버가 숨겨져 있고 투표권이 없는지 확인합니다.

지연된 복제 세트 멤버를 숨기면 애플리케이션에서 해당 멤버에 직접 연결하지 않고도 지연된 데이터를 보고 쿼리할 수 없습니다. 지연된 복제 세트 멤버를 투표권이 없는 것으로 설정하면 쓰기 고려 "majority"이(가) 있는 쓰기 작업을 승인하는 데 포함되지 않는다는 것을 의미합니다.

지연된 멤버를 숨기지 않고 하나 이상의 노드를 사용할 수 없게 되면 복제본 세트는 지연된 멤버를 기다려야 하며 커밋 지점이 지연됩니다. 커밋 지점이 지연되면 성능 문제가 발생할 수 있습니다.

예를 들어 지연된 세컨더리가 10분 지연으로 투표하는 프라이머리-세컨더리-지연 복제본 세트 구성을 생각해 봅니다.

지연되지 않은 세컨더리를 사용할 수 없는 경우 프라이머리 지연의 저하된 구성이 "majority"을(를) 사용하여 쓰기 작업을 승인하려면 최소 10분 이상 기다려야 합니다. 대부분의 커밋 지점이 진행되는 데 시간이 더 오래 걸려 세컨더리를 사용하는 프라이머리 및 중재자(PSA) 복제본 세트에서 캐시 압력과 유사한 성능 문제가 발생합니다.

다수의 커밋 지점에 대한 자세한 내용은 인과적 일관성 및 읽기 및 쓰기 고려를 참조하세요. 성능 문제 해결에 대한 자세한 내용은 복제본 세트 유지 관리 튜토리얼을 참조하세요.

샤드 클러스터에서 mongos은(는) 숨겨진 멤버와 상호 작용하지 않습니다.

숨겨진 멤버는 복제본 세트 투표에 투표할 수 있습니다. 숨겨진 멤버의 투표를 중지하는 경우, 해당 세트의 활성 과반수를 확보하지 않으면 프라이머리 멤버가 물러나게 됩니다.

백업을 목적으로 하는 경우,

  • db.fsyncLock()은(는) cp, scp 또는 tar와(과) 같은 낮은 수준의 백업 유틸리티를 사용하여 데이터 파일을 안전하게 복사할 수 있도록 보장합니다. 복사된 파일을 사용하여 시작된 mongod에는 잠긴 mongod의 사용자 작성 데이터와 구별할 수 없는 사용자 작성 데이터가 포함되어 있습니다.

    잠긴 mongod의 데이터 파일은 저널링 동기화 또는 WiredTiger 스냅샷과 같은 작업으로 인해 변경될 수 있습니다. 논리 데이터에는 영향을 주지 않지만(예: 클라이언트가 액세스하는 데이터) 일부 백업 유틸리티는 이러한 변경을 감지하여 경고를 표시하거나 오류로 인해 실패할 수 있습니다. MongoDB 권장 백업 유틸리티 및 절차에 대한 자세한 내용은 MongoDB 백업 방법을 참조하세요.

숨겨진 복제본 세트 멤버는 w: <number>로 실행된 쓰기 작업을 승인할 수 있습니다. 그러나 w : "majority"로 실행된 쓰기 작업의 경우 숨겨진 멤버도 투표 멤버(예: members[n].votes0 초과인 경우)여야 "majority" 쓰기 작업을 승인할 수 있습니다. 투표권이 없는 복제본 세트 멤버(예 members[n].votes0인 경우)는 majority 쓰기 고려를 가진 쓰기 작업을 승인하는 데 기여할 수 없습니다.

MongoDB 데이터베이스 백업에 대한 자세한 내용은 MongoDB 백업 방법을 참조하세요. 숨겨진 멤버를 구성하려면 숨겨진 복제본 세트 멤버 구성을 참조하세요.

← 우선순위 0 복제본 세트 구성원

이 페이지의 내용