이 문서에서는 MongoDB 워크로드를 Azure DocumentDB 제품으로 리프트 앤 시프트하는 다양한 옵션을 설명합니다.
마이그레이션은 다음 두 가지 방법으로 수행할 수 있습니다.
오프라인 마이그레이션: 원본에서 대상으로의 스냅샷 기반 대량 복사. 스냅샷이 대상에 복사되지 않은 후 원본에 추가/업데이트/삭제된 새 데이터입니다. 필요한 애플리케이션 가동 중지 시간은 대량 복사 작업이 완료되는 데 걸린 시간에 따라 달라집니다.
온라인 마이그레이션: 오프라인 마이그레이션에서 수행된 대량 데이터 복사 작업 외에도 변경 스트림은 모든 추가/업데이트/삭제를 모니터링합니다. 대량 데이터 복사가 완료되면 변경 스트림의 데이터가 대상에 복사됩니다. 이 프로세스를 통해 마이그레이션 프로세스 중에 수행된 모든 업데이트도 대상으로 전송됩니다. 필요한 애플리케이션 가동 중지 시간은 최소입니다.
마이그레이션 전 평가
Azure DocumentDB 마이그레이션 확장을 사용하여 호환성 평가를 수행합니다. 이 단계의 목적은 현재 MongoDB 솔루션에 존재하는 비호환성 또는 경고를 식별하는 것입니다. 마이그레이션 프로세스를 진행하기 전에 평가 결과에서 발견된 문제를 해결해야 합니다.
팁 (조언)
지원되는 MQL(MongoDB 쿼리 언어) 기능 및 구문을 자세히 검토하고 실제 마이그레이션 전에 개념 증명을 수행하는 것이 좋습니다.
Migration
이 문서에서 설명하는 도구는 다음 원본에서 MongoDB 워크로드를 마이그레이션하는 데 도움이 됩니다.
- MongoDB Virtual Machine
- MongoDB 아틀라스
- AWS DocumentDB
Azure DocumentDB 마이그레이션 확장
단순성, 보안 및 가동 중지 시간 0을 위해 설계된 솔루션인 Azure DocumentDB 마이그레이션 확장(공개 미리 보기)을 사용하여 Visual Studio Code에서 마이그레이션 작업을 만들고 관리합니다.
이 도구는 서비스 중단 없이 워크로드를 마이그레이션하는 데 도움이 되는 명확한 단계별 지침을 제공합니다. 당신은 할 수 있어요:
- 마이그레이션을 위한 특정 데이터베이스 및 컬렉션 선택
- 친숙한 VS Code 인터페이스 내에서 모든 단계 수행
- 프로세스 전체 에서 보안 연결 확인
- 확장 사용에 대한 비용 0 을 이용하세요.
Azure DocumentDB 마이그레이션 확장을 사용하면 추가 인프라 또는 복잡성 없이 제어 및 보안을 유지하면서 마이그레이션 과정을 간소화할 수 있습니다.
웹앱 유틸리티(온라인)
효율성, 안정성 및 사용 편의성을 위해 설계된 도구인 MongoMigrationwebBasedUtility 를 사용하여 Azure DocumentDB로의 마이그레이션을 간소화합니다. 리포지토리는 워크로드를 마이그레이션하기 위한 자세한 단계별 지침을 제공합니다. 이 도구는 온라인 및 오프라인 데이터 마이그레이션을 위한 원활한 환경을 제공합니다. 이 프로세스는 사용자에게 친숙하며 원본 및 대상 세부 정보만 제공해야 합니다. 이를 통해 제어, 보안 및 확장성을 유지하면서 MongoDB 컬렉션을 손쉽게 마이그레이션하여 Azure DocumentDB의 잠재력을 최대한 활용할 수 있습니다.
주요 기능은 다음과 같습니다.
- 보안 강화를 위해 가상 네트워크 내에서 프라이빗 배포를 지원합니다.
- 연결 손실 또는 일시적인 오류가 있는 경우 자동 다시 시작 기능
- 사용자에게 친숙한 인터페이스
- GitHub에서 C# 소스 코드에 액세스
이 도구는 유연한 배포 옵션을 지원하며 다른 Azure 리소스에 대한 종속성 없이 독립적으로 작동합니다. 또한 사용자 지정 가능한 Azure Web App 가격 책정 계획을 사용하여 확장 가능한 성능을 제공합니다.
네이티브 MongoDB 도구(오프라인)
mongodump/mongorestore, mongoexport/mongoimport와 같은 네이티브 MongoDB 도구를 사용하여 데이터 세트를 Azure DocumentDB 제품으로 오프라인(라이브 변경 복제 없이)으로 마이그레이션할 수도 있습니다.
| Scenario | MongoDB 네이티브 도구 |
|---|---|
| 데이터베이스 데이터의 하위 집합 이동(JSON/CSV 기반) | mongoexport/mongoimport |
| 전체 데이터베이스 이동(BSON 기반) | mongodump/mongorestore |
-
mongoexport/mongoimport는 MongoDB 데이터베이스의 하위 집합을 마이그레이션하기 위한 최상의 마이그레이션 도구 쌍입니다.
- mongoexport는 기존 데이터를 사람이 읽을 수 있는 JSON 또는 CSV 파일로 내보냅니다. mongoexport는 내보낼 기존 데이터의 하위 집합을 지정하는 인수를 사용합니다.
- mongoimport 는 JSON 또는 CSV 파일을 열고 대상 데이터베이스 인스턴스에 콘텐츠를 삽입합니다(이 경우 Azure DocumentDB).
- JSON 및 CSV는 압축 형식이 아닙니다. mongoimport 가 Azure DocumentDB로 데이터를 보내면 과도한 네트워크 요금이 발생할 수 있습니다.
-
mongodump/mongorestore는 전체 MongoDB 데이터베이스를 마이그레이션하기 위한 최상의 마이그레이션 도구 쌍입니다. 압축 BSON 형식은 데이터가 Azure DocumentDB에 삽입될 때 네트워크 리소스를 보다 효율적으로 사용합니다.
- mongodump는 기존 데이터를 BSON 파일로 내보냅니다.
- mongorestore 는 BSON 파일 덤프를 Azure DocumentDB로 가져옵니다.
비고
MongoDB 기본 도구는 호스트 하드웨어가 허용하는 속도만큼만 데이터를 이동할 수 있습니다.
관련 콘텐츠
- 네이티브 MongoDB 도구를 사용하여 Azure DocumentDB로 데이터를 마이그레이션합니다.
- MongoMigrationwebBasedUtility를 사용하여 Azure DocumentDB로 데이터를 마이그레이션합니다.