다음을 통해 공유


MongoDB에서 vCore 기반 Azure Cosmos DB for MongoDB로 데이터를 마이그레이션하는 옵션은 무엇인가요?

이 문서에서는 MongoDB 워크로드를 vCore 기반 Azure Cosmos DB for MongoDB 제품으로 리프트 앤 시프트하는 다양한 옵션을 설명합니다.

마이그레이션은 다음 두 가지 방법으로 수행할 수 있습니다.

  • 오프라인 마이그레이션: 원본에서 대상으로의 스냅샷 기반 대량 복사. 스냅샷이 대상에 복사되지 않은 후 원본에 추가/업데이트/삭제된 새 데이터입니다. 필요한 애플리케이션 가동 중지 시간은 대량 복사 작업이 완료되는 데 걸린 시간에 따라 달라집니다.

  • 온라인 마이그레이션: 오프라인 마이그레이션에서 수행된 대량 데이터 복사 작업 외에도 변경 스트림은 모든 추가/업데이트/삭제를 모니터링합니다. 대량 데이터 복사가 완료되면 변경 스트림의 데이터가 대상에 복사됩니다. 이 프로세스를 통해 마이그레이션 프로세스 중에 수행된 모든 업데이트도 대상으로 전송됩니다. 필요한 애플리케이션 가동 중지 시간은 최소입니다.

이전 준비 평가

Azure Data Studio에 대한 MongoDB 마이그레이션 확장을 사용하여 호환성 평가를 수행합니다. 이 단계의 목적은 현재 MongoDB 솔루션에 존재하는 비호환성 또는 경고를 식별하는 것입니다. 마이그레이션 프로세스를 진행하기 전에 평가 결과에서 발견된 문제를 해결해야 합니다.

실제 마이그레이션에 앞서 지원되는 기능 및 구문을 자세히 검토하고 개념 증명을 수행하는 것이 좋습니다.

마이그레이션

이 문서에서 설명하는 도구는 다음 원본에서 MongoDB 워크로드를 마이그레이션하는 데 도움이 됩니다.

  • MongoDB Virtual Machine
  • MongoDB 아틀라스
  • AWS DocumentDB

웹앱 유틸리티(온라인)

효율성, 안정성 및 사용 편의성을 위해 설계된 도구인 MongoMigrationwebBasedUtility 를 사용하여 Azure Cosmos DB for MongoDB(vCore 기반)로의 마이그레이션을 간소화합니다. 리포지토리는 워크로드를 마이그레이션하기 위한 자세한 단계별 지침을 제공합니다. 이 도구는 온라인 및 오프라인 데이터 마이그레이션을 위한 원활한 환경을 제공합니다. 이 프로세스는 사용자에게 친숙하며 원본 및 대상 세부 정보만 제공해야 합니다. 이를 통해 제어, 보안 및 확장성을 유지하면서 MongoDB 컬렉션을 손쉽게 마이그레이션하여 Azure Cosmos DB의 잠재력을 최대한 활용할 수 있습니다.

주요 기능은 다음과 같습니다.

  • 보안 강화를 위해 가상 네트워크 내에서 프라이빗 배포를 지원합니다.
  • 연결 손실 또는 일시적인 오류가 있는 경우 자동 다시 시작 기능
  • 사용자에게 친숙한 인터페이스
  • GitHub에서 C# 소스 코드에 액세스

이 도구는 유연한 배포 옵션을 지원하며 다른 Azure 리소스에 대한 종속성 없이 독립적으로 작동합니다. 또한 사용자 지정 가능한 Azure Web App 가격 책정 계획을 사용하여 확장 가능한 성능을 제공합니다.

Azure Data Studio(온라인)

Azure Data Studio용 MongoDB 마이그레이션 확장은 MongoDB 워크로드를 vCore 기반 Azure Cosmos DB for MongoDB로 마이그레이션하는 데 도움이 되도록 설계된 간단하고 비용 없는 도구입니다.

중요합니다

이 도구는 다음 시나리오를 지원하지 않습니다.

  • 프라이빗 엔드포인트가 활성화된 원본 또는 대상 계정의 마이그레이션.
  • 원본 또는 대상 계정의 방화벽이 광범위한 IP 범위를 허용할 수 없는 마이그레이션. 이 도구를 사용하려면 글로벌 Azure 데이터 센터에서 원본 및 대상 계정으로의 연결을 허용해야 합니다. 자세한 내용은 전역 Azure IP 주소 범위를 참조하세요.

이 도구에는 다음 두 단계가 있습니다.

  • 마이그레이션 전 평가 - 현재 MongoDB 데이터 자산을 평가하여 비호환성이 있는지 확인합니다.
  • 마이그레이션 - Azure에서 관리하는 서비스를 사용한 마이그레이션 작업입니다.

그래픽 사용자 인터페이스를 사용하면 전체 사전 마이그레이션 평가 및 마이그레이션 프로세스를 처음부터 끝까지 감독할 수 있으며, 사전 마이그레이션 평가만 수행하도록 선택할 수도 있습니다. 마이그레이션은 Azure Data Studio에서 시작되지만 실제로는 Azure 관리 리소스의 클라우드에서 실행됩니다.

네이티브 MongoDB 도구(오프라인)

mongodump/mongorestore, mongoexport/mongoimport와 같은 네이티브 MongoDB 도구를 사용하여 라이브 변경 내용을 복제하지 않고 오프라인으로 데이터 세트를 vCore 기반 Azure Cosmos DB for MongoDB 제품으로 마이그레이션할 수도 있습니다.

시나리오 MongoDB 네이티브 도구
데이터베이스 데이터의 하위 집합 이동(JSON/CSV 기반) mongoexport/mongoimport
전체 데이터베이스 이동(BSON 기반) mongodump/mongorestore
  • mongoexport/mongoimport는 MongoDB 데이터베이스의 하위 집합을 마이그레이션하기 위한 최상의 마이그레이션 도구 쌍입니다.
    • mongoexport는 기존 데이터를 사람이 읽을 수 있는 JSON 또는 CSV 파일로 내보냅니다. mongoexport는 내보낼 기존 데이터의 하위 집합을 지정하는 인수를 사용합니다.
    • mongoimport는 JSON 또는 CSV 파일을 열고 콘텐츠를 대상 데이터베이스 인스턴스(이 경우 vCore 기반 Azure Cosmos DB for MongoDB)에 삽입합니다.
    • JSON 및 CSV는 압축 형식이 아니므로 mongoimport가 vCore 기반 Azure Cosmos DB for MongoDB로 데이터를 보내면 초과 네트워크 요금이 발생할 수 있습니다.
  • mongodump/mongorestore는 전체 MongoDB 데이터베이스를 마이그레이션하기 위한 최상의 마이그레이션 도구 쌍입니다. 압축 BSON 형식은 데이터가 vCore 기반 Azure Cosmos DB for MongoDB에 삽입될 때 네트워크 리소스를 보다 효율적으로 사용합니다.
    • mongodump는 기존 데이터를 BSON 파일로 내보냅니다.
    • mongorestore는 BSON 파일 덤프를 vCore 기반 Azure Cosmos DB for MongoDB로 가져옵니다.

참고 항목

MongoDB 기본 도구는 호스트 하드웨어가 허용하는 속도만큼만 데이터를 이동할 수 있습니다.

Azure Databricks를 사용하여 데이터 마이그레이션(온라인)

특정 특수한 경우 마이그레이션 중에 더 큰 제어 및 더 높은 처리량이 필요할 수 있습니다. 마이그레이션에 Azure Databricks를 사용하면 마이그레이션 속도를 완전히 제어할 수 있습니다. 이 메서드는 크기가 테라바이트인 큰 데이터 세트를 처리할 수도 있습니다. Spark 마이그레이션 유틸리티는 Databricks 내에서 작업으로 작동합니다.

Azure Cosmos DB for MongoDB Spark 마이그레이션에 등록하여 Spark 마이그레이션 도구 GitHub 리포지토리에 액세스합니다. 리포지토리는 다양한 Mongo 원본에서 vCore 기반 Azure Cosmos DB for MongoDB로 워크로드를 마이그레이션하기 위한 자세한 단계별 지침을 제공합니다.