Docs Menu
Docs Home
/
MongoDB Cluster-to-Cluster Sync
/ /

다대일 마이그레이션

이 페이지의 내용

  • 구문
  • 행동
  • 예시
  • 자세히 알아보기

중요

Cluster-to-Cluster Sync beta 프로그램

이 기능 은 mongosync beta 에서만 사용할 수 있습니다. 학습 내용은 Cluster-to-Cluster Sync beta 프로그램을 참조하세요.

mongosync beta 1.8 부터 다대일 마이그레이션을 수행할 수 있습니다. 다대일 마이그레이션을 사용하면 여러 소스 클러스터를 대상 클러스터 와 동시에 동기화 할 수 있습니다. 예를 예시, 여러 개의 작은 클러스터의 데이터를 중앙 클러스터 로 통합할 수 있습니다.

여러 소스 클러스터를 하나의 대상 클러스터 와 동기화 하려면 mongosync를 시작할 때 다음 명령을 실행 합니다.

./bin/mongosync \
--cluster0 <source-A-connection-string> \
--cluster1 <destination-connection-string> \
--migrationName <string>
./bin/mongosync \
--cluster0 <source-B-connection-string> \
--cluster1 <destination-connection-string> \
--migrationName <string>

소스 클러스터와 대상 클러스터 간의 동기화 작업을 시작하려면 클러스터 간 데이터 동기화를 참조하세요.

네임스페이스 는 database_name.collection_name 조합입니다. 충돌하지 않는 네임스페이스만 동기화 할 수 있습니다.

예를 예시 다음 시나리오를 가정해 보겠습니다.

  • 두 개의 소스 클러스터 S1 및 S2.

  • 대상 클러스터 D.

  • S1 및 S2 모두에 inventorysales 이라는 이름의 데이터베이스가 있습니다.

  • S1 및 S2 모두에서 products, orderLines, orderStatusorders 이라는 이름의 컬렉션입니다.

  • 이 두 가지 조합을 모두 동기화 할 수 있습니다.

    • inventory.products 및 S에 sales.orderStatus 을(를) D와 함께1 합니다.

    • inventory.orderLines 및 S에 sales.orders 을(를) D와 함께2 합니다.

  • 이 두 조합은 충돌하기 때문에 동기화 할 수 없습니다.

    • inventory.products 및 S1 의 inventory.orderLines 을 D와 함께 사용합니다. D가 처음에 비어 있으면 S1 를 D와 동기화 할 수 있습니다. inventory.productsinventory.orderLines 는 S1 에서 D로 복사됩니다.

    • inventory.products 및 S2 의 inventory.orderLines 을(를) D와 함께 사용합니다. 이전 점 의 시나리오에서 inventory.productsinventory.orderLines 가 이미 D 에 있는 네임스페이스와 충돌하기 때문에 S2 를 D와 동기화 할 수 없습니다.

migrationName 문자열은 최대 44자의 영숫자 및 밑줄 문자를 포함할 수 있습니다. 마이그레이션 메타데이터 데이터베이스 이름을 설정하기 위해 문자열 "mongosync_internal_"migrationName이 추가됩니다.

예를 들어 migrationName"cluster_27000_to_cluster_35000_sync"로 설정하면 결과로 생성되는 mongosync 메타데이터 데이터베이스 이름은 "mongosync_internal_cluster_27000_to_cluster_35000_sync"입니다.

다대일 마이그레이션은 Embedded Verifier 와 호환되지 않습니다. 검증자와 다대일 마이그레이션을 모두 활성화 한 경우 /start 명령은 오류를 반환합니다.

자세한 내용은 데이터 전송 확인을 참조하세요.

다음 예시 에서는 2700027001 포트 실행 소스 클러스터를 35000 포트 실행 대상 클러스터 와 연결합니다. 또한 --migrationName 옵션을 설정하여 작업을 설명하고 각 동기화 에 대한 마이그레이션 메타데이터 를 저장 합니다.

./bin/mongosync \
--cluster0 "mongodb://localhost:27000" \
--cluster1 "mongodb://localhost:35000" \
--migrationName "cluster_27000_to_cluster_35000_sync"
./bin/mongosync \
--cluster0 "mongodb://localhost:27001" \
--cluster1 "mongodb://localhost:35000" \
--migrationName "cluster_27001_to_cluster_35000_sync"

돌아가기

A->B-> C 마이그레이션