Tous les produits
Search
Centre de documentation

Data Transmission Service:Migrer de MongoDB vers AnalyticDB for MySQL V3.0

Dernière mise à jour :Oct 09, 2026

Vous pouvez utiliser Data Transmission Service (DTS) pour migrer les données d'une instance de jeu de réplicas ApsaraDB for MongoDB vers un cluster AnalyticDB for MySQL 3,0.

Prérequis

  • Si la source est un cluster fragmenté ApsaraDB for MongoDB, demandez un endpoint pour chaque shard. Tous les shards doivent utiliser le même nom d'utilisateur et le même mot de passe. Pour plus d'informations, consultez Demander un endpoint de shard.

  • Vous disposez d'un cluster de destination AnalyticDB for MySQL 3,0 dont l'espace de stockage disponible est supérieur à l'espace utilisé par l'instance source ApsaraDB for MongoDB. Pour plus d'informations, consultez Créer un cluster.

    Remarque

    L'instance de destination doit disposer d'au moins 10 % d'espace de stockage supplémentaire par rapport à l'espace utilisé par l'instance source.

  • Dans le cluster de destination AnalyticDB for MySQL 3,0, vous devez avoir créé une base de données et une table avec une clé primaire. Pour plus d'informations, consultez CREATE DATABASE et CREATE TABLE.

    Important
    • Les types de données de la table de destination doivent être compatibles avec les données MongoDB sources. Par exemple, si le champ _id dans MongoDB est de type ObjectId, le type de données correspondant dans le cluster AnalyticDB for MySQL 3.0 doit être varchar.

    • Dans un cluster AnalyticDB for MySQL 3,0, ne nommez pas les colonnes de la table de destination _id ou _value.

  • Exécutez la commande SET ADB_CONFIG ALLOW_MULTI_QUERIES=true; dans le cluster de destination AnalyticDB for MySQL 3.0 pour activer Multi-Statement.

    Remarque

    Seuls les clusters dont la version mineure est 3.1.9.3 ou ultérieure prennent en charge Multi-Statement. Pour afficher et mettre à niveau la version mineure, consultez Mettre à niveau la version mineure.

Notes d'utilisation

Type

Description

Limites sur la base de données source

  • Exigence de bande passante : une bande passante sortante insuffisante sur le serveur de la base de données source ralentira la migration des données.

  • Lors du mappage des noms de collection ou d'autres modifications, une seule tâche de migration prend en charge jusqu'à 1 000 collections. Si vous dépassez cette limite, la tâche échouera lors de la soumission. Pour contourner ce problème, divisez les collections en lots plus petits et créez une tâche de migration distincte pour chacun.

  • Si la base de données source est une instance MongoDB avec une architecture à nœud unique, une instance Azure Cosmos DB for MongoDB ou un cluster élastique Amazon DocumentDB, seule la migration complète est prise en charge.

  • Pour effectuer une migration incrémentielle des données :

    La base de données source doit avoir l'oplog activé avec une rétention d'au moins sept jours. Alternativement, les change streams doivent être activés et DTS doit pouvoir s'abonner aux modifications de données de la base de données source au cours des sept derniers jours en utilisant les change streams. Si ces exigences ne sont pas satisfaites, la tâche de migration peut échouer car elle ne peut pas obtenir les modifications de données de la source. Dans les cas extrêmes, cela peut entraîner une incohérence ou une perte de données. Les problèmes découlant de cette situation ne sont pas couverts par l'accord de niveau de service (SLA) de DTS.

    Important
    • Nous vous recommandons d'utiliser l'oplog pour obtenir les modifications de données de la base de données source.

    • Seules les versions MongoDB 4.0 et ultérieures prennent en charge l'obtention des modifications de données via les change streams.

    • Si la base de données source est un cluster Amazon DocumentDB (non élastique), vous devez activer manuellement les change streams. Lors de la configuration de la tâche, définissez la Migration Method sur ChangeStream et l'Architecture sur Sharded Cluster.

  • Si la source est une instance MongoDB avec une architecture de cluster fragmenté, le champ _id dans les collections à migrer doit être unique. Sinon, une incohérence des données peut se produire.

  • Si l'instance source est une base de données MongoDB autogérée avec une architecture de cluster fragmenté :

    • La Access Method prend uniquement en charge l'Public IP Address, Express Connect, VPN Gateway, or Smart Access Gateway et Cloud Enterprise Network (CEN).

    • Si la base de données source est MongoDB 8.0 ou une version ultérieure et que la Migration Method est Oplog, vous devez vous assurer que le compte de shard utilisé par la tâche de migration dispose de l'autorisation directShardOperations. Vous pouvez accorder cette autorisation en exécutant la commande suivante : db.adminCommand({ grantRolesToUser: "username", roles: [{ role: "directShardOperations", db: "admin"}]})

      Remarque

      Remplacez username dans la commande par le compte de shard pour la tâche de migration.

    • Si la Migration Method est Oplog et que la tâche inclut une migration complète, accordez au compte mongos du cluster fragmenté MongoDB source l'autorisation d'exécuter la commande db.runCommand({"balancerStatus":1}). DTS utilise cette commande lors de la pré-vérification pour vérifier que l'équilibreur de charge de la base de données source est désactivé.

  • DTS ne prend pas en charge la connexion à une base de données MongoDB via un enregistrement SRV.

  • Si la source est une instance de cluster fragmenté MongoDB, le nombre de nœuds mongos ne peut pas dépasser 10. Vous devez également supprimer tous les documents orphelins du cluster. Sinon, la migration peut échouer ou provoquer une incohérence des données. Pour plus d'informations, consultez Documents orphelins et Comment nettoyer les documents orphelins dans un cluster fragmenté MongoDB.

  • Limitations opérationnelles sur la base de données source :

    • Pendant la phase de migration complète, n'effectuez pas de modifications de schéma sur les bases de données ou les collections, y compris les mises à jour des données de type tableau. Sinon, la tâche de migration peut échouer ou provoquer une incohérence des données.

    • Si vous effectuez uniquement une migration complète, n'écrivez pas de nouvelles données dans l'instance source. Sinon, une incohérence des données peut se produire.

    • Si la source est une instance de cluster fragmenté MongoDB, n'exécutez pas de commandes qui modifient la distribution des données des objets à migrer, telles que shardCollection, reshardCollection, unshardCollection, moveCollection et movePrimary, pendant l'exécution de l'instance de migration. Sinon, une incohérence des données peut se produire.

  • Si la source est une instance MongoDB avec une architecture de cluster fragmenté, l'activité de rééquilibrage de l'équilibreur de charge peut augmenter la latence de migration.

Autres limites

  • Seule la migration au niveau de la collection est prise en charge.

  • La base de données de destination doit avoir une clé primaire personnalisée. Ou, à l'étape Configurations for Databases, Tables, and Columns, définissez la Primary Key Column. Sinon, la migration peut échouer.

  • La table cible dans le cluster AnalyticDB for MySQL 3,0 doit avoir une seule colonne de clé primaire. Une clé primaire composite n'est pas prise en charge. Lorsque vous configurez les champs de migration dans la section Selected Objects, vous devez définir la Parameter Value pour cette colonne de clé primaire sur bson_value("_id").

  • La table cible dans le cluster AnalyticDB for MySQL 3,0 ne peut pas avoir de champs nommés _id ou _value. Sinon, la migration échoue.

  • En raison des limites d'utilisation de AnalyticDB for MySQL 3,0, si l'utilisation de l'espace disque d'un nœud dans un cluster dépasse 80 %, la tâche DTS peut être interrompue et subir une latence. Estimez l'espace requis pour les objets en cours de migration afin de vous assurer que le cluster de destination dispose d'un stockage suffisant.

  • Si les types de données dans le cluster AnalyticDB for MySQL 3,0 sont incompatibles avec les données MongoDB, la tâche échoue.

  • Si le cluster de destination AnalyticDB for MySQL 3,0 est en cours de sauvegarde pendant l'exécution de la tâche DTS, la tâche échoue.

  • DTS ne prend pas en charge la migration des données depuis les bases de données admin, config ou local.

  • Les informations de transaction ne sont pas conservées. Les transactions dans la base de données source sont converties en enregistrements uniques dans la base de données de destination.

  • Avant de migrer les données, évaluez les performances des bases de données source et de destination. Nous vous recommandons également de migrer les données pendant les heures creuses. Sinon, DTS consomme des ressources de lecture et d'écriture sur les deux bases de données pendant la migration complète, ce qui peut augmenter la charge de la base de données.

  • Pendant la migration complète, DTS effectue des opérations INSERT concurrentes. Cela peut provoquer une fragmentation dans les collections de destination. Par conséquent, les collections dans la base de données de destination utiliseront plus d'espace de stockage que celles de l'instance source.

  • Vérifiez si la précision de migration que DTS utilise pour les types de données FLOAT ou DOUBLE répond à vos besoins métier. DTS lit les valeurs de ces types en utilisant ROUND(COLUMN,PRECISION). Si vous ne définissez pas explicitement la précision, DTS migre les valeurs FLOAT avec une précision de 38 chiffres et les valeurs DOUBLE avec une précision de 308 chiffres.

  • DTS tente de reprendre une tâche de migration ayant échoué dans un délai de sept jours. Avant de basculer votre activité vers l'instance de destination, vous devez terminer ou libérer la tâche, ou exécuter la commande revoke pour révoquer les autorisations d'écriture du compte utilisé par DTS pour accéder à l'instance de destination. Cela empêche les données source d'écraser les données de destination si la tâche reprend automatiquement.

  • DTS calcule la latence de migration incrémentielle en comparant l'horodatage du dernier enregistrement de données migré vers la base de données de destination avec l'horodatage actuel. Si la base de données source n'a pas été mise à jour pendant une période prolongée, la latence signalée peut être inexacte. Si la tâche affiche une latence excessive, vous pouvez effectuer une mise à jour sur la base de données source pour actualiser la lecture de la latence.

  • Les collections de séries temporelles, introduites dans MongoDB 5.0, ne sont pas prises en charge pour la migration.

  • Si une tâche échoue, le personnel support DTS tentera de la restaurer dans un délai de huit heures. Pendant la restauration, ils peuvent redémarrer la tâche ou ajuster ses paramètres.

    Remarque

    Seuls les paramètres de tâche DTS sont modifiés, pas les paramètres de la base de données. Les paramètres qui peuvent être ajustés incluent ceux répertoriés dans Modifier les paramètres de l'instance.

  • Lorsque la base de données de destination est AnalyticDB for MySQL, DTS prend uniquement en charge l'écriture des types de données pris en charge par la base de données, y compris les types de données de base et les types de données complexes tels que ARRAY, MAP et JSON. DTS ne prend pas en charge l'écriture d'autres types, tels que MULTIVALUE.

  • La synchronisation de données contenant un encodage non UTF-8 n'est pas prise en charge, ce qui peut entraîner une incohérence des données.

Facturation

Type de migration

Frais de configuration de la tâche

Frais de transfert de données

migration complète des données

Gratuit.

Ce tutoriel est gratuit. Cependant, des frais de transfert de données s'appliquent si la Access Method pour la base de données de destination est l'Public IP Address.

migration incrémentielle des données

Des frais s'appliquent. Pour plus de détails, consultez l'aperçu de la facturation.

Types de migration

Type

Description

Migration complète des données

Migre toutes les données existantes de l'instance source ApsaraDB for MongoDB vers le cluster de destination AnalyticDB for MySQL 3,0.

Migration incrémentielle des données

Migre les mises à jour incrémentielles de l'instance source ApsaraDB for MongoDB vers le cluster de destination AnalyticDB for MySQL 3,0 après la fin de la migration complète des données.

Remarque
  • Prend uniquement en charge les opérations d'insertion, de mise à jour et de suppression sur les documents au sein d'une collection.

  • Pour les mises à jour incrémentielles de documents, seules les modifications effectuées à l'aide de la commande $set sont répliquées.

Autorisations des comptes de base de données

Base de données

Migration complète des données

Migration incrémentielle des données

Actions

Instance source ApsaraDB for MongoDB

Autorisation de lecture sur la base de données source.

Autorisation de lecture sur la base de données source, la base de données admin et la base de données local.

Gestion des comptes

Cluster de destination AnalyticDB for MySQL 3,0

Autorisations de lecture et d'écriture sur la base de données de destination.

Créer un compte de base de données

Remarque

Si vous utilisez ChangeStream comme méthode de migration incrémentielle, le compte de la base de données source nécessite des autorisations de lecture Change Streams à l'échelle de l'instance (telles que readAnyDatabase). Si la source est une instance ApsaraDB for MongoDB avec un compte personnalisé, vous devez également accorder au compte l'autorisation de lecture sur la base de données admin. Pour plus de détails, consultez Autorisations du compte root spécifié lors de la création de l'instance.

Procédure

  1. Accédez à la page de liste des tâches de migration pour la région de destination en utilisant l'une des méthodes suivantes.

    Depuis la console DTS

    1. Connectez-vous à la console Data Transmission Service (DTS).

    2. Dans le volet de navigation de gauche, cliquez sur Data Migration. Data Migration

    3. Dans le coin supérieur gauche de la page, sélectionnez la région où se trouve l'instance de migration.

    Depuis la console DMS

    Remarque

    Les opérations réelles peuvent varier selon le mode et la disposition de la console DMS. Pour plus d'informations, consultez Console en mode simple et Personnaliser la disposition et le style de la console DMS. Personnaliser la disposition et le style de la console DMS

    1. Connectez-vous à la console Data Management (DMS).

    2. Dans la barre de menu supérieure, choisissez Data + AI > Data Transmission (DTS) > Data Migration.

    3. À droite de Data Migration Tasks, Data Migration Tasks sélectionnez la région où se trouve l'instance de migration.

  2. Cliquez sur Create Task Create Task pour accéder à la page de configuration de la tâche.

  3. Configurez les bases de données source et de destination.

    Catégorie

    Paramètre

    Description

    S/O

    Task Name

    DTS génère automatiquement un nom de tâche. Nous vous recommandons de spécifier un nom descriptif pour une identification facile. Le nom n'a pas besoin d'être unique.

    Source Database

    Select Existing Connection

    • Pour utiliser une instance de base de données qui a été ajoutée au système (créée ou enregistrée), sélectionnez l'instance de base de données souhaitée dans la liste déroulante. Les informations de la base de données ci-dessous seront configurées automatiquement.

      Remarque

      Dans la console DMS, ce paramètre est nommé Select a DMS database instance..

    • Si vous n'avez pas enregistré l'instance de base de données auprès du système, ou si vous n'avez pas besoin d'utiliser une instance enregistrée, configurez manuellement les informations de la base de données ci-dessous.

    Database Type

    Sélectionnez MongoDB.

    Access Method

    Sélectionnez Alibaba Cloud Instance.

    Instance Region

    Sélectionnez la région de l'instance ApsaraDB for MongoDB source.

    Replicate Data Across Alibaba Cloud Accounts

    Dans cet exemple, une instance de base de données sous le compte Alibaba Cloud actuel est utilisée. Sélectionnez No.

    Architecture

    Cet exemple sélectionne Replica Set.

    Remarque

    Si votre instance ApsaraDB for MongoDB source utilise l'architecture Sharded Cluster, vous devez également spécifier Shard account et Shard password.

    Migration Method

    Sélectionnez une méthode pour la migration incrémentielle des données en fonction de vos besoins.

    • Oplog (recommandé) :

      Cette option est disponible si un oplog est activé pour la base de données source.

      Remarque

      Un oplog est activé par défaut pour les bases de données MongoDB autogérées et les instances ApsaraDB for MongoDB. Cette méthode offre une latence plus faible pour la migration incrémentielle des données grâce à une extraction plus rapide des journaux. Par conséquent, nous vous recommandons de sélectionner Oplog.

    • ChangeStream : cette option est disponible si Change Streams sont activés pour la base de données source.

      Remarque
      • Si la base de données source est une instance Amazon DocumentDB (cluster non élastique), vous ne pouvez sélectionner que ChangeStream.

      • Si vous définissez Architecture sur Sharded Cluster pour la base de données source, vous n'avez pas besoin de saisir un Shard account ni un Shard password.

    Instance ID

    Sélectionnez l'ID d'instance de l'instance ApsaraDB for MongoDB source.

    Authentication Database

    Saisissez le nom de la base de données d'authentification pour l'instance ApsaraDB for MongoDB source. La valeur par défaut est admin.

    Database Account

    Saisissez le compte de base de données de l'instance ApsaraDB for MongoDB source. Pour plus d'informations sur les autorisations requises, consultez Autorisations requises pour les comptes de base de données.

    Database Password

    Saisissez le mot de passe correspondant au compte de base de données.

    Encryption

    DTS prend en charge trois méthodes de connexion : Non-encrypted, SSL-encrypted et Mongo Atlas SSL. Les options pour Encryption varient en fonction de la Access Method et de l'Architecture sélectionnées. Les options affichées dans la console font foi.

    Remarque
    • Une base de données MongoDB dont l'Architecture est Sharded Cluster et dont la Migration Method est Oplog ne prend pas en charge le chiffrement SSL-encrypted.

    • Si la source est une base de données MongoDB autogérée (la Access Method n'est pas Alibaba Cloud Instance) avec une architecture Replica Set, et que vous sélectionnez SSL-encrypted, DTS vous permet également de télécharger un certificat CA pour vérifier la connexion.

    Destination Database

    Select Existing Connection

    • Pour utiliser une instance de base de données qui a été ajoutée au système (créée ou enregistrée), sélectionnez l'instance de base de données souhaitée dans la liste déroulante. Les informations de la base de données ci-dessous seront configurées automatiquement.

      Remarque

      Dans la console DMS, ce paramètre est nommé Select a DMS database instance..

    • Si vous n'avez pas enregistré l'instance de base de données auprès du système, ou si vous n'avez pas besoin d'utiliser une instance enregistrée, configurez manuellement les informations de la base de données ci-dessous.

    Database Type

    Sélectionnez AnalyticDB for MySQL 3.0.

    Access Method

    Sélectionnez Alibaba Cloud Instance.

    Instance Region

    Sélectionnez la région du cluster AnalyticDB for MySQL 3,0 de destination.

    Instance ID

    Sélectionnez l'ID du cluster AnalyticDB for MySQL 3,0 de destination.

    Database Account

    Saisissez le compte de base de données du cluster AnalyticDB for MySQL 3,0 de destination. Pour plus d'informations sur les autorisations requises, consultez Autorisations requises pour les comptes de base de données.

    Database Password

    Saisissez le mot de passe correspondant au compte de base de données.

  4. Une fois la configuration terminée, cliquez sur Test Connectivity and Proceed Test Connectivity and Proceed en bas de la page.

    Remarque
    • Assurez-vous que le segment d'adresses IP du service DTS est ajouté automatiquement ou manuellement aux paramètres de sécurité des bases de données source et de destination pour autoriser l'accès depuis les serveurs DTS. Pour plus d'informations, consultez Ajouter les adresses IP des serveurs DTS à une liste d'autorisation. Ajout des adresses IP des serveurs DTS à la liste d'autorisation

    • Si la base de données source ou de destination est une base de données autogérée (la Access Method Access Method n'est pas Alibaba Cloud Instance Alibaba Cloud Instance), vous devez également cliquer sur Test Connectivity Test Connectivity dans la boîte de dialogue CIDR Blocks of DTS Servers CIDR Blocks of DTS Servers qui s'affiche.

  5. Configurez les objets de la tâche.

    1. Sur la page Configure Objects, configurez les objets que vous souhaitez migrer.

      Parameter

      Description

      Migration Types

      • Si vous avez uniquement besoin d'effectuer une migration complète, sélectionnez Full Data Migration.

      • Pour effectuer une migration sans interruption de service, sélectionnez à la fois Full Data Migration et Incremental Data Migration.

      Remarque

      Si vous ne sélectionnez pas Incremental Data Migration, n'écrivez pas de nouvelles données dans l'instance source pendant la migration des données afin de garantir la cohérence de ces dernières.

      DDL and DML Operations to Be Synchronized

      Sélectionnez les opérations à migrer au niveau de l'instance lors de la migration incrémentielle.

      Remarque

      Pour sélectionner les opérations incrémentielles au niveau de la collection, cliquez avec le bouton droit sur l'objet de migration dans la section Selected Objects et sélectionnez les opérations dans la boîte de dialogue qui s'affiche.

      Merge Tables

      • Si vous sélectionnez Yes, DTS ajoute la colonne __dts_data_source à chaque table pour enregistrer les sources de données. Pour plus d'informations, consultez Activer la fusion de plusieurs tables.

      • Si vous sélectionnez No, il s'agit de l'option par défaut.

      Remarque

      La fonctionnalité de fusion de tables est configurée au niveau de la tâche, et non au niveau de la table. Pour fusionner certaines tables mais pas d'autres, vous devez créer deux tâches de migration de données distinctes.

      Avertissement

      N'effectuez pas d'opérations DDL pour modifier le schéma de la base de données ou des tables source. Sinon, une incohérence des données ou un échec de la tâche peut se produire.

      Processing Mode of Conflicting Tables

      • Precheck and Report Errors : vérifie si des collections portant le même nom existent dans la base de données de destination. Si aucune collection du même nom n'existe, la prévérification est réussie. Si des collections du même nom existent, une erreur est signalée lors de la prévérification et la tâche de migration de données ne démarre pas.

        Remarque

        Si une collection de la base de données de destination porte le même nom mais ne peut pas être facilement supprimée ou renommée, vous pouvez modifier le nom de la collection dans la base de données de destination. Pour plus d'informations, consultez Mappage des noms d'objets.

      • Ignore Errors and Proceed : ignore la vérification des collections portant le même nom.

        Avertissement

        La sélection de l'option Ignore Errors and Proceed peut entraîner une incohérence des données et des risques commerciaux. Par exemple :

        • Si un enregistrement de la base de données de destination possède la même valeur de clé primaire qu'un enregistrement de la base de données source, l'enregistrement de la base de données de destination est conservé. L'enregistrement de la base de données source n'est pas migré vers la base de données de destination.

        • L'initialisation des données peut échouer, seule une partie des données peut être migrée ou la migration peut échouer.

      Source Objects

      Dans la zone Source Objects, cliquez sur les objets à migrer, puis cliquez sur Right arrow pour les déplacer vers la zone Selected Objects.

      Remarque

      Les objets de migration peuvent être sélectionnés au niveau de la collection.

      Selected Objects

      1. Modifiez le mappage des noms de base de données.

        1. Dans la zone Selected Objects, cliquez avec le bouton droit sur la base de données contenant les collections à migrer.

        2. Remplacez la valeur de Schema Name par le nom de la base de données de destination dans le cluster AnalyticDB for MySQL 3,0. Dans la boîte de dialogue Edit Schema qui s'affiche, modifiez le Schema Name (par exemple, en dtsdb).

        3. Facultatif : Dans la section Select DDL and DML Operations to Be Synchronized, sélectionnez les opérations DML à migrer, telles que insert, update et delete.

        4. Cliquez sur OK.

      2. Modifiez le mappage des noms de table.

        1. Dans la zone Selected Objects, cliquez avec le bouton droit sur la collection à migrer.

          Le panneau Selected Objects affiche une arborescence des objets de la base de données (telle que dtsdb), y compris les types d'objets (tels que Table) et les objets spécifiques (tels que class).

        2. Remplacez la valeur de Table Name par le nom de la table de destination dans le cluster AnalyticDB for MySQL 3,0. Sur la page Edit Table qui s'affiche, vous pouvez modifier le Table Name (par exemple, class). Après avoir modifié le nom de la table ou de la colonne, les noms dans la base de données de destination sont mis à jour en conséquence.

        3. Facultatif : Définissez des conditions de filtrage pour la migration complète. Pour plus d'informations, consultez Définir des conditions de filtrage. Pour ApsaraDB for MongoDB, la syntaxe des conditions de filtrage diffère des clauses WHERE SQL standard. Par exemple, pour filtrer par ID utilisateur, saisissez : {"_id": {$gt:"user100844658590795**",$lte:"user101674868045948**"}}, où $gt signifie « supérieur à » et $lte signifie « inférieur ou égal à ».

        4. Facultatif : Dans la section Select DDL and DML Operations to Be Synchronized, sélectionnez les opérations DML à migrer, telles que insert, update et delete.

      3. Configurez les champs MongoDB à migrer.

        Par défaut, DTS mappe les données des collections à migrer et configure une expression dans la colonne Parameter Value. Vérifiez si l'expression répond à vos besoins et configurez des paramètres tels que Column Name, Type, Length et Precision.

        Important
        • La colonne de clé primaire de la table de destination doit recevoir la valeur bson_value("_id").

        • Lorsque vous configurez l'expression bson_value(), spécifiez la hiérarchie jusqu'au sous-champ de niveau le plus bas. Sinon, une perte de données ou un échec de la tâche peut se produire.

        1. Dans la colonne Parameter Value, affichez le nom du champ MongoDB dans l'expression bson_value().

          Le contenu entre guillemets ("") correspond au nom du champ MongoDB. Par exemple, si l'expression est bson_value("age"), cette ligne correspond au champ age dans MongoDB.

        2. Facultatif : Supprimez les champs que vous ne souhaitez pas migrer.

          Remarque

          Pour supprimer un champ que vous ne souhaitez pas migrer, cliquez sur l'icône image dans la ligne correspondante.

        3. Configurez les champs à migrer.

          Effectuez les opérations suivantes selon que l'expression bson_value() répond ou non à vos besoins.

          Expressions correspondantes

          1. Saisissez un Column Name.

            Remarque

            Saisissez le nom de la colonne dans la table de destination du cluster AnalyticDB for MySQL 3,0.

          2. Sélectionnez le Type de données pour la colonne.

            Important

            Assurez-vous que le type de données de la table de destination est compatible avec les données MongoDB source. Pour obtenir des informations sur les mappages de types de données, consultez Mappages de types de données.

          3. Facultatif : Configurez la Length et la Precision pour les données de la colonne.

          4. Répétez ces étapes pour mapper tous les champs pertinents.

          Expressions non correspondantes

          Remarque

          Un exemple est un champ doté d'une structure hiérarchique (imbriquée).

          1. Dans la colonne Operation, cliquez sur l'icône image dans la ligne du champ.

          2. Cliquez sur + Add Column.

          3. Configurez le Column Name, le Type, la Length et la Precision.

          4. Dans la zone de texte sous Parameter Value, saisissez une expression bson_value(). Pour plus d'informations, consultez Exemples de configuration d'affectation.

          5. Répétez ces étapes pour mapper tous les champs pertinents.

      4. Cliquez sur OK.

    2. Cliquez sur Next: Advanced Settings pour configurer les paramètres avancés.

      Parameter

      Description

      Dedicated Cluster for Task Scheduling

      Par défaut, DTS planifie les tâches sur un cluster partagé. Vous n'avez pas besoin d'en sélectionner un. Si vous souhaitez des tâches plus stables, vous pouvez acheter un cluster dédié pour exécuter les tâches de migration DTS.

      Retry Time for Failed Connections

      Une fois la tâche de migration démarrée, si la connexion à la base de données source ou de destination échoue, DTS signale une erreur et commence immédiatement à retenter la connexion. La durée de nouvelle tentative par défaut est de 720 minutes. Vous pouvez personnaliser la durée de nouvelle tentative avec une valeur comprise entre 10 et 1 440 minutes. Nous vous recommandons de définir la durée sur plus de 30 minutes. Si DTS se reconnecte aux bases de données source et de destination dans le délai spécifié, la tâche de migration reprend automatiquement. Sinon, la tâche échoue.

      Remarque
      • Pour plusieurs instances DTS partageant la même source ou la même destination, la durée de nouvelle tentative réseau est déterminée par le paramètre de la dernière tâche créée.

      • Étant donné que la tâche vous est facturée pendant la période de nouvelle tentative de connexion, nous vous recommandons de personnaliser la durée de nouvelle tentative en fonction de vos besoins professionnels, ou de libérer l'instance DTS dès que possible après la libération des instances de base de données source et de destination.

      Retry Time for Other Issues

      Une fois la tâche de migration démarrée, si un problème autre qu'un problème de connectivité, tel qu'une exception d'exécution DDL ou DML, se produit dans la base de données source ou de destination, DTS signale une erreur et commence immédiatement à retenter l'opération. La durée de nouvelle tentative par défaut est de 10 minutes. Vous pouvez personnaliser la durée de nouvelle tentative avec une valeur comprise entre 1 et 1 440 minutes. Nous vous recommandons de définir la durée sur plus de 10 minutes. Si les opérations associées aboutissent dans la durée de nouvelle tentative spécifiée, la tâche de migration reprend automatiquement. Sinon, la tâche échoue.

      Important

      La valeur de Retry Time for Other Issues doit être inférieure à la valeur de Retry Time for Failed Connections.

      Enable Throttling for Full Data Migration

      Lors de la migration complète, DTS consomme des ressources de lecture et d'écriture sur les bases de données source et de destination, ce qui peut augmenter la charge de la base de données. Si nécessaire, vous pouvez activer la limitation de débit pour la tâche de migration complète. Vous pouvez définir les paramètres Queries per second (QPS) to the source database, RPS of Full Data Migration et Data migration speed for full migration (MB/s) pour réduire la charge sur la base de données de destination.

      Remarque
      • Cet élément de configuration est disponible uniquement si vous sélectionnez Full Data Migration pour Migration Types.

      • Vous pouvez également ajuster la vitesse de migration complète une fois que l'instance de migration est en cours d'exécution.

      Only one data type for primary key _id in a table of the data to be synchronized

      Dans les données à migrer, le type de données de la clé primaire _id est-il uniforme au sein d'une seule collection ?

      Important
      • Sélectionnez une option en fonction de vos besoins. Sinon, une perte de données peut se produire.

      • Ce paramètre est disponible uniquement si vous sélectionnez Full Data Migration pour Migration Types.

      • Yes : le type de données est unique. Lors de la migration complète des données, DTS n'analyse pas les types de données des clés primaires dans les données source. Pour une seule collection, DTS migre uniquement les données correspondant à un type de données de clé primaire.

      • No : le type de données n'est pas unique. Lors de la migration complète des données, DTS analyse les types de données des clés primaires dans les données source et migre toutes les données.

      Enable Throttling for Incremental Data Migration

      Si nécessaire, vous pouvez également choisir de définir des limites de vitesse pour la tâche de migration incrémentielle. Vous pouvez définir les paramètres RPS of Incremental Data Migration et Data migration speed for incremental migration (MB/s) pour réduire la charge sur la base de données de destination.

      Remarque
      • Cet élément de configuration est disponible uniquement si vous sélectionnez Incremental Data Migration pour Migration Types.

      • Vous pouvez également ajuster la vitesse de migration incrémentielle une fois que l'instance de migration est en cours d'exécution.

      Environment Tag

      Vous pouvez sélectionner un tag d'environnement pour identifier l'instance. Cette opération est facultative.

      Configure ETL

      Choisissez d'activer ou non la fonctionnalité extract, transform, and load (ETL). Pour plus d'informations, consultez Qu'est-ce que l'ETL ? Valeurs valides :

      Monitoring and Alerting

      Sélectionnez si vous souhaitez définir des alertes et recevoir des notifications d'alerte en fonction de vos besoins professionnels.

      • No : ne définit pas d'alerte.

      • Yes : configurez les alertes en définissant un seuil d'alerte et des notifications d'alerte. Si une migration échoue ou si la latence dépasse le seuil, le système envoie une notification d'alerte.

  6. Enregistrez la tâche et exécutez une prévérification.

    • Pour afficher les paramètres de configuration de cette instance lors de l'appel de l'opération API, placez le pointeur sur le bouton Next: Save Task Settings and Precheck et cliquez sur Preview OpenAPI parameters dans la bulle qui s'affiche.

    • Si vous n'avez pas besoin d'afficher les paramètres API ou si vous avez terminé leur consultation, cliquez sur Next: Save Task Settings and Precheck en bas de la page.

    Remarque
    • Avant le démarrage de la tâche de migration, DTS effectue une prévérification. La tâche ne démarre qu'après avoir réussi la prévérification.

    • Si la prévérification échoue, cliquez sur View Details à côté de l'élément de vérification ayant échoué, corrigez le problème en suivant les instructions, puis exécutez à nouveau la prévérification.

    • Si un avertissement est signalé lors de la prévérification :

      • Pour les éléments de vérification qui ne peuvent pas être ignorés, cliquez sur View Details à côté de l'élément ayant échoué, corrigez le problème en suivant les instructions, puis exécutez à nouveau la prévérification.

      • Pour les éléments de vérification qui peuvent être ignorés, vous pouvez cliquer sur Confirm Alert Details, Ignore, OK et Precheck Again pour ignorer l'élément d'avertissement et exécuter à nouveau la prévérification. Si vous choisissez d'ignorer un avertissement, cela peut entraîner des problèmes tels qu'une incohérence des données et présenter des risques pour votre activité.

  7. Achetez l'instance.

    1. Lorsque le Success Rate atteint 100 %, cliquez sur Next: Purchase Instance.

    2. Sur la page Purchase.

    3. Cliquez sur New Instance Class. Dans la boîte de dialogue Resource Group Settings qui s'affiche, cliquez sur Instance Class.

      Vous pouvez consulter la progression de la tâche de migration sur la page de liste Data Transmission Service (Pay-as-you-go) Service Terms.

      Remarque
      • Si la tâche de migration n'inclut pas de migration incrémentielle, elle s'arrête automatiquement une fois la migration complète terminée. Une fois la tâche arrêtée, son Buy and Start passe à OK.

      • Si la tâche de migration inclut une migration incrémentielle, elle ne s'arrête pas automatiquement. La tâche de migration incrémentielle continue de s'exécuter. Pendant l'exécution de la tâche de migration incrémentielle, le OK de la tâche est Data Migration Tasks.

  8. Correspondance des types de données

    Type MongoDB

    **Type AnalyticDB for MySQL 3,0**

    ObjectId

    VARCHAR

    String

    VARCHAR

    Document

    VARCHAR

    DbPointer

    VARCHAR

    Array

    VARCHAR

    Date

    DATETIME

    Timestamp

    DATETIME

    Double

    DOUBLE

    Entier 32 bits (BsonInt32)

    INTEGER

    Entier 64 bits (BsonInt64)

    BIGINT

    Decimal128

    DECIMAL

    Boolean

    BOOLEAN

    Null

    VARCHAR

    Configuration du mappage

    Structure des données source MongoDB

    {
      "_id":"62cd344c85c1ea6a2a9f****",
      "person":{
        "name":"neo",
        "age":26,
        "sex":"male"
      }
    }

    Schéma de la table de destination AnalyticDB for MySQL

    Paramètre

    Type

    mongo_id

    varchar

    Remarque

    Cette colonne est la clé primaire.

    person_name

    varchar

    person_age

    decimal

    Nouvelles colonnes

    Important

    Vous devez spécifier le chemin hiérarchique complet dans l'expression bson_value() pour éviter toute perte de données ou tout échec de la tâche. Par exemple, si vous définissez l'expression sur bson_value("person"), DTS ne peut pas synchroniser les données incrémentielles des sous-champs de l'objet person (tels que name, age et sex) vers la destination.

    Paramètre

    Type

    Mappage

    mongo_id

    STRING

    bson_value("_id")

    person_name

    STRING

    bson_value("person","name")

    person_age

    DECIMAL

    bson_value("person","age")