Manuel de migration : MongoDB vers Amazon DocumentDB - Amazon DocumentDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Manuel de migration : MongoDB vers Amazon DocumentDB

Ce manuel de migration fournit des ressources et des étapes pour vous aider à migrer d'une base de données MongoDB vers Amazon DocumentDB.

Processus de migration

Vous trouverez ci-dessous les étapes de haut niveau généralement nécessaires à la migration de vos données d'une base de données MongoDB vers Amazon DocumentDB.

Étape 1 : Compatibilité et différences fonctionnelles

Amazon DocumentDB interagit avec les versions open source MongoDB 3.6, 4.0 et 5.0 d'Apache 2.0. APIs Par conséquent, vous pouvez utiliser les mêmes pilotes, applications et outils MongoDB avec Amazon DocumentDB avec peu ou pas de modifications.

La première étape consiste à vérifier la compatibilité entre les opérateurs et les index utilisés par votre application dans votre base de données MongoDB et leur disponibilité dans Amazon DocumentDB, ainsi qu'à comprendre les différences fonctionnelles entre eux.

Compatibilité avec les opérateurs

Utilisez l'outil de compatibilité Amazon DocumentDB* pour découvrir facilement si votre application utilise des opérateurs non pris en charge dans ses requêtes. Cet outil peut analyser les fichiers journaux de votre serveur de base de données MongoDB ou le code source de votre application pour fournir un rapport sur les opérateurs non pris en charge. Si vous constatez l'utilisation d'opérateurs non pris en charge, vous devez modifier votre application pour contourner les opérateurs non pris en charge.

Pour vérifier la compatibilité entre les opérateurs MongoDB utilisés dans votre configuration et les opérateurs Amazon DocumentDB pris en charge, exécutez ce qui suit :

git clone https://github.com/awslabs/amazon-documentdb-tools.git cd amazon-documentdb-tools/compat-tool/ python3 compat.py --version <Amazon DocumentDB version> --directory <mongodb logfiles/source code>

Pour de plus amples informations, veuillez consulter MongoDB APIs, opérations et types de données pris en charge dans Amazon DocumentDB.

* Non officiellement pris en charge par AWS.

Compatibilité des index

Vous pouvez utiliser l'outil d'indexation Amazon DocumentDB* pour savoir si vous utilisez des types d'index non pris en charge dans Amazon DocumentDB. Cet outil a besoin d'une connexion à votre base de données source pour lire les définitions d'index.

Pour cela, vous devez d'abord déposer les définitions d'index dans un répertoire à l'aide de l'--dump-indexesoption. Exécutez ensuite l'outil avec l'--show-issuesoption, en fournissant le répertoire pour localiser les index incompatibles.

Indexes d'exportation :

git clone https://github.com/awslabs/amazon-documentdb-tools.git sudo pip install -r amazon-documentdb-tools/index-tool/requirements.txt mkdir <directory to dump index definitions> python3 migrationtools/documentdb_index_tool.py --dump-indexes --dir <directory> --uri <source-mongodb-uri>

Vérifiez la présence d'index incompatibles :

python3 migrationtools/documentdb_index_tool.py --show-issues --dir <dumped-index-definitions-directory>

Si vous constatez l'utilisation de types d'index non pris en charge, vous devez modifier votre application ou votre modèle de données pour contourner ou continuer sans les index incompatibles.

Pour plus d'informations sur les types et propriétés d'index pris en charge dans Amazon DocumentDB, consultez Index et propriétés d'index la section Comment indexer sur Amazon DocumentDB.

* Non officiellement pris en charge par AWS.

Différences fonctionnelles

Passez Différences fonctionnelles avec MongoDB en revue pour vous familiariser avec les différences.

Étape 2 : Preuve de concept

Réalisez une preuve de concept en exécutant votre application ou votre suite de tests habituelle sur Amazon DocumentDB pour tester les fonctionnalités et les performances. Vous devrez peut-être renseigner votre cluster Amazon DocumentDB avec des données pour effectuer les tests. Par exemple, vous pouvez utiliser les mongorestore outils mongodump et pour copier des données depuis votre MongoDB source.

Tests fonctionnels

Créez un cluster Amazon DocumentDB (voirCréation d'un cluster Amazon DocumentDB) et exécutez votre application ou votre suite de tests fonctionnels pour vérifier si tous les flux de travail des applications continuent de fonctionner correctement sur Amazon DocumentDB.

Tests de performance

Exécutez des tests de performances sur votre application ou suite de tests de performances exécutée sur Amazon DocumentDB avec une charge de travail similaire à votre charge de travail de production pour vérifier si la configuration répond à vos exigences de latence. Ajustez votre charge de travail en termes de performances ou adaptez votre cluster Amazon DocumentDB, le cas échéant. Pour plus d’informations, consultez Performances et utilisation des ressources et Dimensionnement des clusters Amazon DocumentDB.

Il est important de dimensionner votre cluster Amazon DocumentDB avec les types d'instances appropriés pour des performances optimales. Pour plus d'informations, consultez les meilleures pratiques pourDimensionnement des instances.

Vous pouvez utiliser le calculateur de dimensionnement Amazon DocumentDB* pour vous aider à estimer la taille de votre cluster Amazon DocumentDB.

* Non officiellement pris en charge par AWS.

Test de basculement

Vous souhaiterez peut-être observer comment votre application réagit au redémarrage d'un nœud principal Amazon DocumentDB, à un basculement du nœud principal ou à la suppression d'un nœud principal dans un cluster à nœuds multiples, ainsi que lorsque des nœuds répliques sont redémarrés ou supprimés. Cela vous aidera à confirmer que votre application est résiliente face à ces événements. Pour de plus amples informations, veuillez consulter Test du basculement.

Pour comprendre les exceptions qu'une application doit tolérer et comment les gérer efficacement, consultez Création d'applications résilientes avec Amazon DocumentDB.

Note

Rien ne remplace le test de votre charge de travail sur Amazon DocumentDB

Étape 3 : migrer les données

Après une validation de principe réussie, migrez vos données vers Amazon DocumentDB. La plupart de nos clients utilisent des approches de migration en ligne ou hors ligne pour migrer leurs données.

Migration en ligne

À l'aide de la méthode de migration en ligne, vous pouvez migrer des données de votre base de données source, allant de quelques gigaoctets à plusieurs téraoctets, vers Amazon DocumentDB avec un temps d'arrêt quasi nul. Pour plus d'informations, consultez AWS Database Migration Service (AWS DMS).

Si vous migrez depuis une base de données MongoDB, vous pouvez l' AWS DMS utiliser pour effectuer un chargement complet et répliquer les modifications en cours.

Pour un step-by-step processus, consultez la section Migration vers Amazon DocumentDB avec la méthode en ligne.

Des informations supplémentaires sont disponibles dans la AWS Database Migration Service section Utiliser Amazon DocumentDB comme cible du Guide de l'AWS Database Migration Service utilisateur.

Points à noter concernant AWS DMS :

  • Segmentation : lors de la migration de bases de données de plusieurs téraoctets à l'aide de AWS DMS, cela peut être lent avec les paramètres par défaut, car le chargement complet du DMS se fait par défaut sur un seul thread par collection, ce qui entraîne des temps de migration plus longs. Pour accélérer le chargement complet lors de migrations de bases de données volumineuses, vous pouvez utiliser la fonctionnalité de segmentation dans AWS DMS.

    Pour plus de détails sur l'utilisation de la segmentation avec AWS DMS, consultez la section Utilisation de la segmentation automatique avec AWS DMS.

  • Type d'instance DMS : pour accélérer la migration des données, vous devez choisir la bonne instance DMS.

Migration hors ligne

La migration hors ligne est l'approche la plus simple pour déplacer des bases de données vers Amazon DocumentDB. Cette approche est principalement utilisée pour POCs et pour les charges de travail susceptibles de subir des interruptions d'écriture pendant la migration.

Pour un step-by-step processus, consultez Migrer de MongoDB vers Amazon DocumentDB à l'aide de la méthode hors ligne.

Étape 4 : Validation des données

Une fois les données migrées avec succès, validez leur exactitude afin de gagner en confiance. Sur la console AWS DMS des tâches de migration, vous pouvez trouver les métriques relatives aux données migrées. Pour plus d'informations, consultez la section Vérifier les données migrées.

Vous pouvez également utiliser l' DataDiffer outil Amazon DocumentDB* pour valider la cohérence des données entre les collections source et cible.

* Non officiellement pris en charge par AWS.

Étape 5 : transfert de candidature

Cela implique de modifier la chaîne de connexion à la base de données de votre application pour utiliser votre cluster Amazon DocumentDB.

Pour plus d'informations sur la connexion à Amazon DocumentDB, consultez. Connexion à Amazon DocumentDB en tant que jeu de répliques

Migration en ligne

Une fois le chargement complet des données terminé, AWS DMS continue de répliquer les modifications en cours depuis votre source vers Amazon DocumentDB. Une fois les modifications prises en compte et les contrôles de validation des données terminés, vous pouvez effectuer un transfert vers Amazon DocumentDB.

Migration hors ligne

Une fois le chargement complet des données et les contrôles de validation des données terminés, vous pouvez effectuer le transfert vers Amazon DocumentDB.

Ressources supplémentaires

Voici quelques ressources supplémentaires susceptibles de faciliter votre migration :

* Non officiellement pris en charge par AWS.