Docs Menu
Docs Home
/
데이터베이스 매뉴얼
/ / /

컬렉션 데이터 배포

컬렉션 샤딩하면 해당 문서가 MongoDB cluster 의 여러 샤드에 분산됩니다. MongoDB 지정된 샤드 키 사용하여 각 문서 속한 위치를 정확하게 결정합니다. 효과적인 샤드 키 선택하는 것은 매우 중요하므로 사용 가능한 모든 샤드에 걸쳐 데이터를 균등하게 분산하고 워크로드 밸런싱을 수행해야 합니다. 이 접근 방식은 컬렉션이 너무 커져 단일 샤드 효율적으로 처리하다 할 수 없을 때 필수적입니다. 샤딩된 되면 MongoDB 선택한 샤딩 전략에 따라 사용 가능한 모든 샤드에 컬렉션 을 자동으로 배포합니다.

특정 리소스 제한 또는 성능 임계값에 도달하면 컬렉션 샤딩 고려해야 합니다.

컬렉션의 작업 세트 RAM 에 맞는 경우 MongoDB 메모리에서 쿼리를 제공하므로 쿼리 응답 시간이 가장 빠릅니다. 작업 세트 사용 가능한 메모리를 초과하면 디스크 액세스 증가로 인해 쿼리 지연 시간이 길어집니다. 컬렉션 샤딩하면 각 샤드 자체 데이터 인덱스를 유지 관리하는 여러 샤드에 데이터를 분산하여 쿼리 성능이 향상됩니다.

컬렉션 에 3TB 이상의 데이터가 포함된 경우 성능을 최적화하기 위해 샤딩 을 고려해야 합니다.

MongoDB 에서 컬렉션 샤딩 때 다음 배포 옵션 중에서 선택할 수 있습니다.

옵션
설명

범위가 지정된 샤딩 하나 이상의 문서 필드를 사용하여 데이터 배치를 결정합니다. 유사한 샤드 키 값을 가진 데이터는 동일한 샤드 에 저장되어 범위 기반 쿼리를 최적화합니다. 이 액세스 방식은 액세스 패턴에 범위 작업이 포함된 경우 가장 잘 작동합니다.

해시 샤딩 지정된 필드 에서 해시 값을 계산하고 샤드 전체에 무작위로 데이터를 배포합니다. 쓰기 (write) 확장성 는 유용하지만, 논리적으로 인접한 데이터가 다른 샤드에 있을 수 있으므로 이 접근 방식은 범위 기반 쿼리의 성능에 영향 수 있습니다.

구역 샤딩 클러스터 전체가 아닌 샤드의 특정 하위 집합에 컬렉션을 분산합니다. 이 접근 방식은 컬렉션이 단일 샤드 용량 초과하지만 사용자와의 지리적 근접성, 특수 hardware 통한 고유한 액세스 패턴 최적화, 데이터 위치 제어하여 규정 컴플라이언스 등을 위해 전략적인 배치가 필요한 경우에 이상적입니다.

컬렉션 샤딩 때 다음을 수행해야 합니다.

돌아가기

샤딩되지 않은 컬렉션 관리

이 페이지의 내용