Combinez la migration complète et incrémentielle des données pour transférer les données de votre replica set MongoDB géré en interne vers ApsaraDB for MongoDB sans interruption de service.
Vous pouvez également utiliser les outils MongoDB pour migrer une base de données gérée en interne vers une instance replica set. La rubrique Migration et synchronisation des données couvre d'autres scénarios.
Prérequis
Les versions source et destination de MongoDB doivent être compatibles. Consultez la page Présentation des solutions de migration.
L'instance ApsaraDB for MongoDB de destination doit disposer d'au moins 10 % d'espace de stockage supplémentaire par rapport à la base de données source.
Notes d'utilisation
La migration complète des données consomme des ressources sur les bases de données source et destination, ce qui augmente la charge du serveur et peut provoquer des interruptions de service. Si votre base de données gère un trafic élevé ou s'exécute sur un matériel limité, effectuez la migration pendant les heures creuses.
-
Lorsque DTS effectue une migration complète des données, il consomme les ressources des bases de données source et destination, ce qui peut entraîner une augmentation de la charge du serveur de base de données. Si la charge de travail de la base de données est importante ou si les spécifications du serveur sont faibles, la pression sur la base de données peut augmenter et le service peut devenir indisponible. Évaluez soigneusement l'impact avant la migration et effectuez la migration des données pendant les heures creuses.
Évaluez soigneusement l'impact avant la migration et effectuez la migration des données pendant les heures creuses.
Consultez les pages Versions et moteurs de stockage pour connaître les configurations MongoDB prises en charge. Vérifiez la compatibilité avant de migrer entre différentes versions ou moteurs de stockage.
-
Les bases de données admin et local ne peuvent pas être utilisées comme bases de données source ou destination.
Les bases de données admin et local ne peuvent pas être utilisées comme bases de données source ou destination.
DTS écrit les données dans la destination de manière concurrente, ce qui peut entraîner une utilisation de l'espace de stockage 5 % à 10 % supérieure à celle de la source.
Assurez-vous qu'aucun document de la destination ne partage une clé primaire (
_idpar défaut) avec les documents de la source. Des clés dupliquées peuvent entraîner l'écrasement des données. Supprimez les doublons dans la destination avant la migration si cela n'affecte pas votre activité.
Facturation
Type de migration | Frais de configuration de lien | Frais de trafic Internet |
Migration complète des données | Gratuit. | Facturé uniquement lorsque les données sont migrées hors d'Alibaba Cloud via Internet. Pour plus d'informations, consultez la page Présentation de la facturation. |
Migration incrémentielle des données | Facturé. Pour plus d'informations, consultez la page Présentation de la facturation. |
Types de migration
-
Migration complète des données : migre toutes les données existantes des objets sélectionnés de la base de données MongoDB source vers la base de données MongoDB de destination.
RemarqueCela inclut les bases de données, les collections et les index.
Prend en charge la migration des bases de données, des collections et des index.
Prend en charge la migration des bases de données, des collections et des index.
-
Migration incrémentielle des données : une fois la migration complète des données terminée, DTS synchronise les modifications de données de la base de données MongoDB source vers la destination.
RemarqueSynchronise les opérations
CREATEetDELETEpour les bases de données, les collections et les index.Synchronise les opérations
INSERT,UPDATEetDELETEpour les documents.
Synchronise les opérations sur les bases de données, les collections et les index.
Synchronise les opérations
INSERT,UPDATEetDELETEpour les documents.
Autorisations des comptes de base de données
|
Source des données de migration |
Migration complète des données |
Migration incrémentielle des données |
|
Base de données MongoDB gérée en interne |
Autorisation de lecture sur la base de données à migrer |
Autorisation de lecture sur la base de données à migrer, la base de données admin et la base de données local |
|
Base de données ApsaraDB for MongoDB |
Autorisation readWrite sur la base de données de destination |
Autorisation readWrite sur la base de données de destination |
Pour créer des comptes et accorder des autorisations :
ApsaraDB for MongoDB : Gérer les utilisateurs de base de données MongoDB dans DMS
MongoDB géré en interne : db.createUser() (documentation officielle MongoDB)
Configurer et exécuter une tâche de migration
Étape 1 : Accéder à la page Migration des données
Via la console DTS :
Connectez-vous à la console DTS.
Dans le volet de navigation de gauche, cliquez sur Data Migration.
Dans le coin supérieur gauche, sélectionnez la région où réside l'instance de migration.
Via la console DMS :
Les étapes réelles peuvent varier en fonction du mode et de la disposition de la console DMS. Consultez les pages Mode simple et Personnaliser la disposition et le style de la console DMS .
Connectez-vous à la console DMS.
Dans la barre de navigation supérieure, placez le pointeur sur Data + AI > DTS (DTS) > Data Migration.
Dans la liste déroulante à droite de Data Migration Tasks, sélectionnez la région où réside l'instance de migration.
Étape 2 : Créer la tâche et configurer les bases de données source et de destination
Cliquez sur Create Task.
Configurez les bases de données source et de destination à l'aide des paramètres des tableaux suivants.
Après avoir configuré les bases de données source et de destination, examinez les Limits affichées en haut de la page. Ignorer cette étape peut entraîner l'échec de la tâche ou une incohérence des données.
Paramètres de la base de données source
|
Parameter |
Description |
|
Task Name |
Nom de la tâche. DTS génère automatiquement un nom. Spécifiez un nom descriptif pour identifier facilement la tâche. Les noms de tâches n'ont pas besoin d'être uniques. |
|
Select Existing Connection |
Si la base de données source est enregistrée auprès de DTS, sélectionnez-la dans la liste déroulante. DTS remplit automatiquement les autres paramètres. Sinon, configurez manuellement les paramètres ci-dessous. |
|
Database Type |
Sélectionnez MongoDB. |
|
Access Method |
Sélectionnez le type de connexion en fonction de l'emplacement de la base de données source. Cette rubrique utilise Public IP Address à titre d'exemple. Si vous sélectionnez un autre type de connexion, effectuez les préparatifs requis. |
|
Instance Region |
Sélectionnez la région où réside la base de données source. Si la région ne figure pas dans la liste, sélectionnez la région géographiquement la plus proche. |
|
Architecture |
Sélectionnez Replica Set. |
|
Migration Method |
Sélectionnez la méthode de migration des données incrémentielles : Oplog (recommandé) ou ChangeStream. Oplog est disponible lorsque la fonctionnalité oplog est activée sur la source. ChangeStream est disponible lorsque les change streams sont activés. Si la source est un cluster Amazon DocumentDB non élastique, vous devez sélectionner ChangeStream et définir le paramètre Architecture sur Sharded Cluster. Si vous sélectionnez Sharded Cluster pour le paramètre Architecture, vous n'avez pas besoin de configurer les paramètres Shard account et Shard password. |
|
Endpoint Type |
Sélectionnez Standalone ou Multi-node. Disponible lorsque Access Method est Express Connect, VPN Gateway, or Smart Access Gateway, Public IP Address ou Cloud Enterprise Network (CEN). |
|
Domain Name or IP |
Nom de domaine ou adresse IP de la base de données source. Disponible lorsque Endpoint Type est Standalone. |
|
Port Number |
Port de service de la base de données source. Disponible lorsque Endpoint Type est Standalone. |
|
Endpoint |
Endpoint de la base de données source au format |
|
Authentication Database |
Base de données à laquelle appartient le compte source. Par défaut : |
|
Database Account |
Compte utilisé pour se connecter à la base de données source. Pour les autorisations requises, consultez la page Autorisations requises. Si Access Method est Self-managed Database on ECS ou Database Gateway, saisissez le compte du nœud shard. |
|
Database Password |
Mot de passe du compte de base de données. |
|
Encryption |
Méthode de chiffrement de la connexion : Non-encrypted, SSL-encrypted ou Mongo Atlas SSL. Les options disponibles dépendent de Access Method et de Architecture. SSL-encrypted n'est pas disponible lorsque Architecture est Sharded Cluster et Migration Method est Oplog. Si Architecture est Replica Set, que Access Method n'est pas Alibaba Cloud Instance et que Encryption est SSL-encrypted, téléchargez un certificat CA pour vérifier la connexion. |
Paramètres de la base de données de destination
|
Parameter |
Description |
|
Select Existing Connection |
Si l'instance de destination est enregistrée auprès de DTS, sélectionnez-la dans la liste déroulante. Sinon, configurez manuellement les paramètres ci-dessous. |
|
Database Type |
Sélectionnez MongoDB. |
|
Access Method |
Sélectionnez Alibaba Cloud Instance. |
|
Instance Region |
Sélectionnez la région où réside l'instance ApsaraDB for MongoDB de destination. |
|
Replicate Data Across Alibaba Cloud Accounts |
Sélectionnez No pour utiliser une instance dans le compte actuel. |
|
Architecture |
Sélectionnez l'architecture de l'instance de destination. |
|
Instance ID |
Sélectionnez l'ID de l'instance de destination. |
|
Authentication Database |
Base de données à laquelle appartient le compte de destination. Par défaut : |
|
Database Name |
Nom de la base de données dans l'instance de destination où les objets migrés seront stockés. |
|
Database Account |
Compte utilisé pour se connecter à l'instance de destination. Pour les autorisations requises, consultez la page Autorisations requises. |
|
Database Password |
Mot de passe du compte de base de données. |
|
Encryption |
Méthode de chiffrement de la connexion. SSL-encrypted n'est pas disponible lorsque la destination utilise une architecture de cluster sharded. |
Étape 3 : Tester la connectivité
Cliquez sur Test Connectivity and Proceed, puis cliquez sur Test Connectivity dans la boîte de dialogue CIDR Blocks of DTS Servers.
Assurez-vous que les blocs CIDR des serveurs DTS sont ajoutés aux listes d'autorisation des bases de données source et de destination. Consultez la page Ajouter les adresses IP des serveurs DTS à une liste d'autorisation .
Étape 4 : Configurer les objets de migration
Sur la page Configure Objects, configurez les objets de migration à l'aide des paramètres suivants.
|
Parameter |
Description |
|
Migration Types |
Sélectionnez les types de migration : Schema Migration, Full Data Migration et, éventuellement, Incremental Data Migration. Pour une migration sans temps d'arrêt, sélectionnez les trois options. Si vous ignorez Schema Migration, créez les bases de données et les collections cibles dans la destination avant de commencer. Si vous ignorez Incremental Data Migration, n'écrivez pas dans la source pendant la migration. |
|
Processing Mode of Conflicting Tables |
Precheck and Report Errors : échoue à la pré-vérification si la destination contient des collections portant les mêmes noms que la source. Utilisez le mappage des noms d'objets pour renommer les collections migrées si les collections existantes ne peuvent pas être supprimées. Ignore Errors and Proceed : ignore la pré-vérification. DTS ne migre pas les enregistrements ayant les mêmes clés primaires que les enregistrements de destination existants. La cohérence des données n'est pas garantie. |
|
Capitalization of object names in destination instance |
Politique de mise en majuscules/minuscules pour les noms de bases de données et de collections dans la destination. Par défaut : DTS default policy. Consultez la page Politique de mise en majuscules/minuscules pour les noms d'objets dans la base de données de destination. |
|
Source Objects |
Sélectionnez les bases de données ou les collections à migrer. Cliquez sur l'icône |
|
Selected Objects |
Cliquez avec le bouton droit sur un objet pour le renommer dans la destination (mappage des noms d'objets), définir le mode de migration incrémentielle ou spécifier des conditions WHERE pour le filtrage des données de migration complète. Pour supprimer un objet, cliquez dessus, puis cliquez sur l'icône |
Étape 5 : Configurer les paramètres avancés
Cliquez sur Next: Advanced Settings et configurez les paramètres suivants.
|
Parameter |
Description |
|
Dedicated Cluster for Task Scheduling |
Par défaut, DTS planifie les tâches sur un cluster partagé. Achetez un cluster dédié pour isoler les ressources. Consultez la page Qu'est-ce qu'un cluster dédié DTS ? |
|
Retry Time for Failed Connections |
Durée de nouvelle tentative en cas d'échec de connexion. Valeurs valides : 10–1 440 minutes. Par défaut : 720 minutes. Définissez cette valeur à au moins 30 minutes. Si différentes tâches partagent la même base de données source ou de destination, la dernière valeur définie est prioritaire. |
|
Retry Time for Other Issues |
Durée de nouvelle tentative en cas d'échec des opérations DDL ou DML. Valeurs valides : 1–1 440 minutes. Par défaut : 10 minutes. Définissez cette valeur à au moins 10 minutes. Cette valeur doit être inférieure à Retry Time for Failed Connections. |
|
Enable Throttling for Full Data Migration |
Limite la charge de lecture/écriture sur la source et la destination pendant la migration complète. Configurez les QPS vers la base de données source, les RPS de la migration complète des données et la vitesse de migration des données. Disponible uniquement lorsque Full Data Migration est sélectionné. |
|
Only one data type for primary key `_id` in a table of the data to be synchronized |
Yes : DTS migre un seul type de données de |
|
Enable Throttling for Incremental Data Migration |
Limite la charge pendant la migration incrémentielle. Configurez les RPS de la migration incrémentielle des données et la vitesse de migration des données. Disponible uniquement lorsque Incremental Data Migration est sélectionné. |
|
Environment Tag |
Tag facultatif pour identifier l'instance. |
|
Configure ETL |
Activez la fonctionnalité extract, transform, and load (ETL) pour transformer les données pendant la migration. Consultez la page Configurer ETL dans une tâche de migration ou de synchronisation des données. |
|
Monitoring and Alerting |
Configurez des alertes en cas d'échec de la tâche ou de latence élevée de migration. Si activé, définissez le seuil d'alerte et les contacts de notification. Consultez la page Configurer la surveillance et les alertes. |
Étape 6 : Configurer la vérification des données (facultatif)
Cliquez sur Next Data Verification pour configurer une tâche de vérification des données. Consultez la page Configurer une tâche de vérification des données.
Étape 7 : Exécuter la pré-vérification
Cliquez sur Next: Save Task Settings and Precheck.
Pour afficher un aperçu des paramètres API pour cette configuration de tâche, placez le pointeur sur Next: Save Task Settings and Precheck et cliquez sur Preview OpenAPI parameters .
DTS exécute une pré-vérification avant de démarrer la migration. La tâche ne démarre qu'après réussite de la pré-vérification.
Si un élément de vérification échoue, cliquez sur View Details, résolvez le problème, puis cliquez sur Precheck Again.
Si une alerte est déclenchée pour un élément de vérification pouvant être ignoré, cliquez sur Confirm Alert Details > Ignore > OK > Precheck Again. Ignorer les alertes peut entraîner une incohérence des données.
Étape 8 : Acheter et démarrer l'instance
Attendez que le Success Rate atteigne 100 %, puis cliquez sur Next: Purchase Instance.
Sur la page Purchase Instance, configurez les paramètres suivants.
|
Parameter |
Description |
|
Resource Group |
Groupe de ressources pour l'instance de migration. Par défaut : groupe de ressources par défaut. Consultez la page Qu'est-ce que la gestion des ressources ? |
|
Instance Class |
La classe d'instance détermine la vitesse de migration. Sélectionnez-la en fonction du volume de données et des exigences de timing. Consultez la page Classes d'instance des instances de migration de données. |
Lisez et cochez la case pour accepter les Data Transmission Service (Pay-as-you-go) Service Terms.
Cliquez sur Buy and Start, puis cliquez sur OK dans la boîte de dialogue de confirmation.
Étapes suivantes
Connexion à une instance de jeu de réplicas ApsaraDB for MongoDB