컬렉션의 샤드 키를 수정하면 보다 세분화된 데이터 배포가 가능하고 카디널리티가 부족하여 기존 키가 점보 청크가 되는 상황을 해결할 수 있습니다.
경고
현재 샤드 키 필드의 범위 또는 해시 유형을 수정하지 마세요. 데이터 불일치를 유발합니다. 예를 들어 샤드 키를 { customer_id: 1 }에서 { customer_id: "hashed", order_id: 1 }로 수정하지 마세요.
참고
컬렉션의 샤드 키를 수정하려면 refineCollectionShardKey 명령어를 사용하세요. refineCollectionShardKey(은)는 기존 키에 접미사 필드를 하나 이상 추가하여 새 샤드 키를 생성합니다.
예를 들어, test 데이터베이스에 샤드 키 { customer_id: 1 }를 가진 기존 orders 컬렉션이 있을 수 있습니다. refineCollectionShardKey 명령을 사용하여 샤드 키를 새 샤드 키 { customer_id: 1, order_id: 1 }로 변경할 수 있습니다.
db.adminCommand( { refineCollectionShardKey: "test.orders", key: { customer_id: 1, order_id: 1 } } )