Docs Menu
Docs Home
/
MongoDB 매뉴얼
/ / /

addShardToZone

이 페이지의 내용

  • 정의
  • 호환성
  • 구문
  • 행동
  • 보안
  • 예시
addShardToZone

샤드 를 구역 과 연결합니다. MongoDB 는 이 샤드 를 지정된 구역 과 연결합니다. 구역 에 포함되는 청크는 구역 과 관련된 샤드에 할당됩니다.

mongosh에서는 이 명령을 sh.addShardToZone() 헬퍼 메서드를 통해서도 실행할 수 있습니다.

헬퍼 메서드는 mongosh 사용자에게 편리하지만 데이터베이스 명령과 동일한 수준의 정보를 반환하지 못할 수 있습니다. 편의가 필요하지 않거나 추가 리턴 필드가 필요한 경우 데이터베이스 명령을 사용합니다.

addShardToZone 인스턴스의 admin 데이터베이스에서만 를 mongos 실행할 수 있습니다.

이 명령은 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.

  • MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스

중요

이 명령은 서버리스 인스턴스에서는 지원되지 않습니다. 자세한 내용은 지원되지 않는 명령을 참조하세요.

명령은 다음과 같은 구문을 가집니다:

db.adminCommand(
{
addShardToZone: <string>,
zone: <string>
}
)

이 명령은 다음 필드를 사용합니다.

필드
유형
설명
문자열

구역과 연결할 샤드의 이름입니다.

문자열

mongosh 은(는) 헬퍼 메서드 sh.addShardToZone() 을(를) 제공합니다.

구역을 여러 샤드와 연결할 수 있으며, 하나의 샤드가 여러 구역과 연결할 수 있습니다.

샤드 cluster의 구역에 대한 자세한 내용은 구역 매뉴얼 페이지를 참조하세요.

MongoDB는 하나 이상의 샤드 키 값 범위와 연결되지 않은 구역을 효과적으로 무시합니다.

샤드 키 값 범위를 구역과 연결하려면 updateZoneKeyRange 데이터베이스 명령 또는 sh.updateZoneKeyRange() 셸 헬퍼를 사용합니다.

updateZoneKeyRange 데이터베이스 명령과 해당 헬퍼 sh.updateZoneKeyRange()sh.addTagRange()를 비샤드형 컬렉션 또는 존재하지 않는 컬렉션에서 실행할 수 있습니다.

샤드 컬렉션 작업은 비어 있거나 존재하지 않는 컬렉션을 샤딩하기 전에 구역 및 구역 범위를 정의하여 정의된 구역 범위에 대한 청크와 샤드 키 값의 전체 범위를 포함하는 추가 청크를 생성하고 그역 범위를 기반으로 초기 청크 분배를 수행합니다. 이러한 청크의 초기 생성 및 배포를 통해 샤딩을 더 빠르게 설정할 수 있습니다. 초기 분배 이후에는 밸런서가 앞으로의 청크 분배를 관리합니다.

예를 보려면 비어 있거나 존재하지 않는 컬렉션에 대한 구역 및 구역 범위 사전 정의를 참조하세요.

액세스 제어 를 적용하는 샤드 cluster의 경우 다음 중 하나의 권한을 가진 사용자로 인증해야 합니다.

  • update config 데이터베이스의 shards collection에 대한 , 또는,

  • enableSharding 클러스터 리소스의 .

clusterAdmin 또는 clusterManager 기본 제공 역할에는 addShardToZone 발급에 적합한 권한이 있습니다. 자세한 내용은 역할 기반 액세스 제어 에 대한 설명서 페이지를 참조하세요.

다음 예에서는 shard0000JFK 구역과 연결합니다.

db.adminCommand( { addShardToZone : "shard0000" , zone : "JFK" } )

샤드는 여러 구역과 연결할 수 있습니다. 다음 예에서는 LGAshard0000 에 연결합니다.

db.adminCommand( { addShardToZone : "shard0000" , zone : "LGA" } )

shard0000 LGA 구역 및 JFK 구역과 모두 연결됩니다. 균형 잡힌 cluster에서 MongoDB는 두 구역 중 하나에 포함되는 읽기 및 쓰기를 shard0000 으로 라우팅합니다.

돌아가기

addShard