Zelfstudie: MongoDB offline migreren Azure Cosmos DB API voor MongoDB
VAN TOEPASSING OP:
Azure Cosmos DB-API voor MongoDB
Belangrijk
Lees deze volledige handleiding voordat u de migratiestappen gaat uitvoeren.
Deze MongoDB-migratiehandleiding maakt deel uit van een reeks over MongoDB-migratie. De kritieke MongoDB-migratiestappen zijn vóór migratie, migratie en na de migratie, zoals hieronder wordt weergegeven.

Overzicht van offline gegevensmigratie van MongoDB naar Azure Cosmos DB met behulp van DMS
Gebruik Azure Database Migration Service om een offline, een een time-migratie uit te voeren van databases van een on-premises of cloud-exemplaar van MongoDB naar de Azure Cosmos DB API voor MongoDB.
In deze zelfstudie leert u het volgende:
- Maak een exemplaar van de Azure Database Migration Service.
- Maak een migratieproject met behulp van Azure Database Migration Service.
- De migratie uitvoeren.
- Houd de migratie in de gaten.
In deze zelfstudie migreert u een gegevensset in MongoDB die wordt gehost op een virtuele Azure-machine. Met behulp Azure Database Migration Service migreert u de gegevensset naar de Azure Cosmos DB API voor MongoDB. Zie MongoDB installeren en configureren op een virtuele Windows in Azure als u nog geen MongoDB-bron hebt ingesteld.
Vereisten
Voor het voltooien van deze zelfstudie hebt u het volgende nodig:
Voltooi de stappen vóór de migratie, zoals het schatten van de doorvoer en het kiezen van een partitiesleutel.
Maak een account voor de Azure Cosmos DB-API voor MongoDB.
Notitie
DMS wordt momenteel niet ondersteund als u migreert naar een API voor MongoDB-account dat is ingericht met de serverloze modus.
Maak een Microsoft Azure Virtual Network voor Azure Database Migration Service met behulp van Azure Resource Manager. Dit implementatiemodel biedt site-naar-site-connectiviteit met uw on-premises bronservers met behulp van Azure ExpressRoute of VPN. Zie de Azure Virtual Network-documentatievoor meer informatie over het maken van een virtueel netwerk, met name de quickstart-artikelen met stapsgewijs informatie.
Notitie
Als u bij de installatie van een virtueel netwerk gebruikmaakt van ExpressRoute met netwerkpeering voor Microsoft, voegt u de volgende service-eindpunten toe aan het subnet waarin de service wordt ingericht:
- Doeldatabase-eindpunt (bijvoorbeeld SQL eindpunt of Azure Cosmos DB eindpunt)
- Opslageindpunt
- Service Bus-eindpunt
Deze configuratie is noodzakelijk omdat Azure Database Migration Service geen internetverbinding biedt.
Zorg ervoor dat de regels van uw netwerkbeveiligingsgroep (NSG) voor uw virtuele netwerk de volgende communicatiepoorten niet blokkeren: 53, 443, 445, 9354 en 10000-20000. Raadpleeg Netwerkverkeer filteren met netwerkbeveiligingsgroepen voor meer informatie.
Stel uw Windows-firewall open voor toegang van Azure Database Migration Service tot de bronserver van MongoDB. Standaard verloopt deze via TCP-poort 27017.
Wanneer u een firewallapparaat gebruikt voor uw brondatabase, moet u mogelijk firewallregels toevoegen om toegang te krijgen tot Azure Database Migration Service brondatabase voor migratie.
De functie Voor opnieuw proberen aan serverzijde configureren
U kunt profiteren van de mogelijkheden voor resourcebeheer als u migreert van MongoDB naar Azure Cosmos DB. Met deze mogelijkheden kunt u volledig gebruikmaken van uw inrichtende aanvraageenheden (RU/s) van de doorvoer. Azure Cosmos DB kan een bepaalde aanvraag Database Migration Service tijdens de migratie beperken, als die aanvraag groter is dan de door containers inrichtende RU/s. Vervolgens moet deze aanvraag opnieuw worden ingediend.
Database Migration Service is in staat om nieuwe proberen uit te voeren. Het is belangrijk om te begrijpen dat de retourtijd die betrokken is bij de netwerkhop tussen Database Migration Service en Azure Cosmos DB van invloed is op de totale reactietijd van die aanvraag. Het verbeteren van de reactietijd voor beperkt aanvragen kan de totale tijd verkorten die nodig is voor migratie.
Met de functie Opnieuw proberen aan de serverzijde van Azure Cosmos DB kan de service vertragingsfoutcodes onderscheppen en het opnieuw proberen met een veel lagere retourtijd, waardoor de reactietijden van aanvragen aanzienlijk worden verbeterd.
Als u opnieuw wilt proberen aan de serverzijde, selecteert u in Azure Cosmos DB portal Functies > Serverzijde Opnieuw proberen.

Als de functie is uitgeschakeld, selecteert u Inschakelen.

Registreer de Microsoft.DataMigration-resourceprovider
Meld u aan bij Azure Portal. Zoek en selecteer Abonnementen.

Selecteer het abonnement waarin u het Azure Database Migration Service-exemplaar wilt maken en selecteer vervolgens Resourceproviders.

Zoek naar migratie en selecteer Registreren voor Microsoft.DataMigration.

Een instantie maken
Selecteer in de Azure-portal Een resource maken, zoek naar Azure Database Migration Service, en selecteer vervolgens Azure Database Migration Service uit de vervolgkeuzelijst.

Selecteer in het scherm Azure Database Migration Service****Maken.

Geef in Migratieservice maken een naam op voor de service, het abonnement en een nieuwe of bestaande resourcegroep.
Selecteer de locatie waarop u het exemplaar van Azure Database Migration Service wilt maken.
Selecteer een bestaand virtueel netwerk of maak een nieuw netwerk.
Het virtuele netwerk biedt Azure Database Migration Service toegang tot de broninstantie van MongoDB en het doelaccount van Azure Cosmos DB.
Zie Een virtueel netwerk maken met behulp van de Azure Portal voor meer informatie over het maken van een virtueel netwerk in Azure Portal.
Selecteer een prijscategorie.
Zie voor meer informatie over de kosten en prijscategorieën de Pagina met prijzen.

Selecteer Maken om de dienst te maken.
Een migratieproject maken
Nadat u de service hebt aan Azure Portal, opent u deze. Maak vervolgens een nieuw migratieproject.
Selecteer in de Azure-portal Alle diensten, zoek naar Azure Database Migration Service, en selecteer vervolgens Azure Database Migration Service.

Zoek in het scherm Azure Database Migration Service naar de naam van de Azure Database Migration Service-instantie die u hebt gemaakt en selecteer vervolgens de instantie.
Selecteer + Nieuw Project.
Geef in Nieuw migratieproject een naam op voor het project en selecteer mongoDB in het tekstvak Bronservertype. Selecteer in het tekstvak Type doelserver cosmosDB (MongoDB-API) en selecteer vervolgens offline gegevensmigratie bij Type activiteit kiezen.

Selecteer Maken en uitvoeren van de activiteit om het project te maken en de migratieactiviteit uit te voeren.
Geef brondetails op
Geef in het scherm Brondetails de verbindingsgegevens op voor de MongoDB-bronserver.
Belangrijk
Azure Database Migration Service biedt geen ondersteuning voor Azure Cosmos DB als bron.
Er zijn drie modi om verbinding te maken met een bron:
Standaardmodus, die een volledig gekwalificeerde domeinnaam of een IP-adres, poortnummer en verbindingsreferenties accepteert.
Verbindingsreeksmodus, die een MongoDB-connection string zoals beschreven in Verbindingsreeks-URI-indeling.
Gegevens uit Azure-opslag: deze accepteert een SAS-URL van de blob-container. Selecteer Blob bevat BSON-dumps als de blobcontainer BSON-dumps bevat die worden geproduceerd door het Bsondump-hulpprogrammavan MongoDB. Selecteer deze optie niet als de container JSON-bestanden bevat.
Als u deze optie selecteert, moet u ervoor zorgen dat het opslagaccount connection string in de volgende indeling wordt weergegeven:
https://blobnameurl/container?SASKEYU vindt deze SAS-container voor blobs connection string in Azure Storage Explorer. Als u de SAS voor de betreffende container maakt, krijgt u de URL in de aangevraagde indeling.
Houd op basis van het type dumpgegevens in Azure Storage rekening met het volgende:
Voor BSON-dumps moeten de gegevens in de blobcontainer de bsondump-indeling hebben. Plaats gegevensbestanden in mappen met de naam van de met databases in de indeling collection.bson. Noem alle metagegevensbestanden met behulp van de indeling collection.metadata.json.
Voor JSON-dumps moeten de bestanden in de blob-container worden geplaatst in mappen die zijn genoemd naar de omvattende databases. In elke databasemap moeten gegevensbestanden worden geplaatst in een submap met de naam data en een naam krijgen met behulp van de indeling collection.json. Plaats alle metagegevensbestanden in een submap met de naam metadata en noem ze in dezelfde indeling collection.json. De metagegevensbestanden moeten de indeling hebben die wordt geproduceerd door het MongoDB-hulpprogramma bsondump.
Belangrijk
U wordt niet aangeraden een zelfonder ondertekend certificaat te gebruiken op de MongoDB-server. Als u er een moet gebruiken, maakt u verbinding met de server via de connection string modus en zorgt u ervoor dat uw connection string aanhalingstekens ("") heeft.
&sslVerifyCertificate=falseU kunt het IP-adres ook gebruiken voor situaties waarin DNS-naamresolutie niet mogelijk is.

Selecteer Opslaan.
Doeldetails opgeven
Geef in het scherm Details migratiedoel de verbindingsgegevens voor het doelaccount Azure Cosmos DB op. Dit account is de vooraf inrichtende API Azure Cosmos DB MongoDB-account waarmee u uw MongoDB-gegevens migreert.

Selecteer Opslaan.
Toewijzen aan doeldatabases
Wijs in het scherm Toewijzen aan doeldatabases de bron- en doeldatabase voor de migratie toe.
Als de doeldatabase de naam van de dezelfde database als de bron-database bevat, wordt in Azure Database Migration Service de doeldatabase standaard geselecteerd.
Als Maken wordt weergegeven naast de databasenaam, geeft dit aan dat Azure Database Migration Service de doeldatabase niet heeft gevonden en maakt de service de database voor u.
Op dit moment in de migratie kunt u doorvoer inrichten. In Azure Cosmos DB kunt u doorvoer inrichten op databaseniveau of afzonderlijk voor elke verzameling. De doorvoer wordt gemeten in aanvraageenheden. Meer informatie over de prijzen van Azure Cosmos DB.

Selecteer Opslaan.
Vouw in het scherm Verzamelingsinstelling de lijst met verzamelingen uit en bekijk welke verzamelingen worden gemigreerd.
Azure Database Migration Service selecteert automatisch alle verzamelingen die aanwezig zijn in het MongoDB-bron-exemplaar dat niet bestaat op het doelaccount Azure Cosmos DB doelaccount. Als u verzamelingen die al gegevens bevatten, opnieuw wilt migreren, moet u expliciet de verzamelingen in dit deelvenster selecteren.
U kunt opgeven hoeveel RU's u voor de verzamelingen wilt gebruiken. Er worden slimme standaardwaarden voorgesteld op basis van de gezamenlijke grootte.
Notitie
Voer de databasemigratie en -verzameling parallel uit. Indien nodig kunt u meerdere exemplaren van een Azure Database Migration Service de run versnellen.
U kunt ook een shardsleutel opgeven om te profiteren van partitionering in Azure Cosmos DB voor optimale schaalbaarheid. Bekijk de best practices voor het selecteren van een shard-/partitiesleutel.

Selecteer Opslaan.
Geef in het tekstvak Naam activiteit van het scherm Migratieoverzicht een naam op voor de migratieactiviteit.

De migratie uitvoeren
Selecteer Migratie uitvoeren. Het venster van de migratieactiviteit wordt weergegeven en de status van de activiteit is Niet gestart.

Bewaak de migratie
Selecteer vernieuwen in het scherm van de migratieactiviteit om de weergave bij te werken totdat de status van de migratie wordt weergegeven als Voltooid.
Notitie
U kunt de activiteit selecteren voor meer informatie over metrische migratiegegevens op database- en verzamelingsniveau.

Gegevens verifiëren in Azure Cosmos DB
Nadat de migratie is voltooid, kunt u uw Azure Cosmos DB controleren om te controleren of alle verzamelingen zijn gemigreerd.

Optimalisatie na migratie
Nadat u de gegevens die zijn opgeslagen in de MongoDB-database hebt gemigreerd naar de Azure Cosmos DB-API voor MongoDB, kunt u verbinding maken met Azure Cosmos DB en de gegevens beheren. U kunt ook andere optimalisatiestappen na de migratie uitvoeren. Dit kan bestaan uit het optimaliseren van het indexeringsbeleid, het bijwerken van het standaardconsistentieniveau of het configureren van globale distributie voor Azure Cosmos DB account. Zie Optimalisatie na migratie voor meer informatie.
Aanvullende bronnen
- Wilt u capaciteitsplanning voor een migratie naar Azure Cosmos DB?
- Als u alleen het aantal vcores en servers in uw bestaande databasecluster weet, leest u over het schatten van aanvraageenheden met vCores of vCCPUs
- Als u typische aanvraagsnelheden voor uw huidige databaseworkload kent, leest u over het schatten van aanvraageenheden met behulp Azure Cosmos DB capacity planner
Volgende stappen
Bekijk de migratiehandleiding voor aanvullende scenario's in de Azure Database Migration Guide.