샤딩된 컬렉션의 조각 모음 모니터링
샤딩된 컬렉션 의 조각 모음을 모니터 하려면 balancerCollectionStatus
명령을 사용합니다.
현재 조각 모음 상태와 처리할 남은 청크의 수를 확인할 수 있습니다. 조각 모음 진행률이 표시됩니다.
이 작업에 대하여
조각 모음은 다음 단계를 사용하여 컬렉션의 청크 수를 줄이고 성능을 향상시킵니다.
병합할 수 있는 동일한 샤드의 청크를 병합합니다.
더 작은 청크를 다른 샤드로 마이그레이션합니다. 작은 청크는
chunkSize
설정의 25% 미만의 데이터를 포함하는 청크입니다.병합할 수 있는 동일한 샤드에 나머지 청크를 병합합니다.
이 작업에서는 test
라는 데이터베이스에서 ordersShardedCollection
이라는 샤딩된 컬렉션 예제를 사용합니다.
이 절차에서 자체 샤딩된 컬렉션과 데이터베이스를 사용할 수 있습니다.
이 작업의 절차에서는 단계를 모니터링하고 조각 모음 진행률을 확인합니다.
시작하기 전에
샤드 컬렉션의 조각 모음을 시작합니다. 자세한 내용 은 샤드 컬렉션 조각 모음 시작하기를 참조하세요.
mongos
에 연결합니다.
절차
출력 문서 검사
이전 명령은 조각 모음 상태, 현재 단계, 남은 조각 모음 작업에 대한 정보가 포함된 문서를 반환합니다. 예를 들면 다음과 같습니다.
{ "balancerCompliant": false, "firstComplianceViolation": "defragmentingChunks", "details": { "currentPhase": "moveAndMergeChunks", "progress": { "remainingChunksToProcess": 1 } } }
다음 표에서는 문서 필드에 대해 설명합니다.
필드 | 유형 | 설명 |
---|---|---|
| 부울 |
|
| 문자열 | 네임스페이스의 청크를 이동하거나 병합해야 하는 이유를 나타냅니다. |
| 객체 | 현재 조각 모음 상태에 대한 추가 정보입니다. |
| 문자열 | 현재 조각 모음 단계:
|
| Integer | 현재 단계에서 처리할 나머지 청크의 수입니다. |
반환된 문서 필드에 대한 자세한 내용은 밸런서 컬렉션 상태 출력 문서를 참조하세요.
조각 모음이 완료되었는지 확인
조각 모음이 완료되면 명령은 다음 중 하나를 반환합니다.
balancerCompliant: true
컬렉션이 균형 잡힌 경우.balancerCompliant: false
균형이 맞지 않는 경우 collection의firstComplianceViolation
을defragmentingChunks
이외의 문자열로 설정합니다.
조각 모음 완료 후 균형 잡힌 컬렉션의 출력 예시:
{ chunkSize: 0.2, balancerCompliant: true, ok: 1, '$clusterTime': { clusterTime: Timestamp({ t: 1677543079, i: 1 }), signature: { hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0), keyId: Long("0") } }, operationTime: Timestamp({ t: 1677543079, i: 1 }) }
다음 단계
조각 모음이 아직 완료되지 않은 경우 중지할 수 있습니다. 자세한 내용 은 샤드 컬렉션 조각 모음 중지를 참조하세요.
자세히 알아보기
밸런서 컬렉션 상태 출력 문서를 보려면 밸런서컬렉션 상태 출력 문서를 참조하세요.
샤드 상태 인쇄, 참조
db.printShardingStatus()
샤드 상태 세부 정보 조회는 다음을 참조하세요.
sh.status()
샤드 상태 컬렉션 필드를 보려면 샤딩된 컬렉션을 참조하세요.
자세한 내용은 활성
mongos
인스턴스를 참조하세요.MongoDB Atlas를 사용하여 샤드를 모니터링하려면 샤드클러스터 검토를 참조하세요.