Tous les produits
Search
Centre de documentation

Data Transmission Service:Expédition des données

Dernière mise à jour :Aug 21, 2026

La fonctionnalité d'expédition des données du service Data Transmission Service (DTS) vous permet d'utiliser un SDK pour expédier des données provenant de diverses sources vers DTS. DTS synchronise ensuite ces données vers une base de données de destination. Cette approche prend en charge une plus grande variété de sources de données.

Cas d'utilisation

La fonctionnalité d'expédition des données convient aux scénarios suivants :

  • La source est un type de base de données que DTS ne prend pas nativement en charge pour la synchronisation des données.

  • La source se compose de données de journalisation ou de types de données spéciaux.

  • Pour des raisons de sécurité, telles que la nécessité de garder confidentiels les identifiants de la base de données, il n'est pas possible de connecter directement la base de données source à DTS.

Prérequis

  • Créez une instance de destination pour recevoir les données. Actuellement, seule l'instance AnalyticDB for PostgreSQL est prise en charge. Pour obtenir des instructions, consultez la rubrique Créer une instance.

  • Dans l'instance AnalyticDB for PostgreSQL de destination, créez une base de données et un schéma pour recevoir les données. Dans cette rubrique, le schéma est nommé dts_deliver_test. Pour obtenir des instructions, consultez la rubrique Importer des données.

  • Si vous devez définir la Access Method de la base de données source sur Express Connect, VPN Gateway, or Smart Access Gateway, autorisez DTS à accéder à votre base de données via une passerelle VPN. Pour obtenir des instructions, consultez la rubrique Connecter un centre de données à DTS via VPN Gateway.

Remarques relatives à l'utilisation

  • Des compétences en programmation sont requises pour utiliser le SDK afin d'expédier les données source vers DTS.

  • Le nom du schéma dans votre instance AnalyticDB for PostgreSQL, le nom de la base de données saisi lors de l'étape Drop data object configuration et le paramètre dbName spécifié dans le SDK doivent être identiques. Sinon, la destination risque de ne pas recevoir les données.

  • Vous ne pouvez pas modifier le nombre de shards après la création de l'instance.

  • Après avoir créé une instance d'expédition de données, commencez immédiatement à expédier les données à l'aide du SDK. Sinon, l'instance échouera car elle ne pourra pas collecter les données incrémentielles.

  • En cas d'échec d'une tâche, l'équipe support de DTS tentera de la restaurer dans un délai de huit heures. Lors de la restauration, ils peuvent redémarrer la tâche ou ajuster ses paramètres.

    Remarque

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

Facturation

Pour plus d'informations, consultez la rubrique Présentation de la facturation.

Créer une instance d'expédition de données

  1. Accédez à la page des tâches de synchronisation des données.

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

    2. Dans la barre de navigation supérieure, cliquez sur Data + AI.

    3. Dans le volet de navigation de gauche, choisissez DTS (DTS) > Data Synchronization.

    Remarque
  2. Cliquez sur Create Task pour ouvrir 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 faciliter l'identification. Le nom n'a pas besoin d'être unique.

    Source Database

    Select Existing Connection

    Ne sélectionnez pas d'instance de base de données. Pour une tâche d'expédition de données, vous devez saisir manuellement les informations de la base de données ci-dessous.

    Database Type

    Sélectionnez Data Shipping.

    Access Method

    Sélectionnez une méthode d'accès en fonction de vos besoins. Dans cette rubrique, Public IP Address est sélectionné.

    Remarque

    Si vous sélectionnez Express Connect, VPN Gateway, or Smart Access Gateway, vous devez également sélectionner le VPC et le vSwitch auxquels appartient la passerelle VPN.

    Instance Region

    Sélectionnez la région où se trouve votre client.

    Remarque

    Si la région où se trouve votre base de données ne figure pas dans la liste, sélectionnez la région géographiquement la plus proche.

    Destination Database

    Select Existing Connection

    • Pour utiliser une instance de base de données ajoutée au système (nouvellement créée ou enregistrée), sélectionnez l'instance de base de données dans la liste déroulante. Les informations de la base de données sont configurées automatiquement.

      Remarque

      Dans la console DMS, cet élément de configuration est nommé Select a DMS database instance..

    • Si vous n'avez pas ajouté l'instance de base de données au système ou si vous n'avez pas besoin d'utiliser une instance déjà ajoutée, configurez manuellement les informations de la base de données suivantes.

    Database Type

    Sélectionnez AnalyticDB for PostgreSQL.

    Access Method

    Sélectionnez Alibaba Cloud Instance.

    Instance Region

    Sélectionnez la région où se trouve l'instance AnalyticDB for PostgreSQL de destination.

    Instance ID

    Sélectionnez l'ID de l'instance AnalyticDB for PostgreSQL de destination.

    Database Name

    Saisissez le nom de la base de données dans l'instance AnalyticDB for PostgreSQL de destination pour recevoir les données.

    Database Account

    Saisissez le compte de l'instance AnalyticDB for PostgreSQL de destination. Le compte doit disposer des autorisations de lecture et d'écriture. Pour créer un compte, consultez la rubrique Créer et gérer des utilisateurs.

    Database Password

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

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

    Remarque
    • Assurez-vous que les blocs CIDR d'adresses IP des serveurs DTS sont ajoutés aux paramètres de sécurité des bases de données source et de destination pour autoriser l'accès depuis les serveurs DTS. Cette opération peut être effectuée automatiquement ou manuellement. Pour plus d'informations, consultez la rubrique Ajouter les blocs CIDR d'adresses IP des serveurs DTS à une liste d'autorisation.

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

  5. Configurez les objets de la tâche.

    1. Sur la page Configure Objects , configurez les objets à synchroniser.

      Paramètre

      Description

      Processing Mode of Conflicting Tables

      • Precheck and Report Errors : vérifie si une table portant le même nom existe dans la base de données de destination. Si aucune table portant le même nom n'existe, la pré-vérification réussit. Si une table portant le même nom existe, la pré-vérification échoue et la tâche de synchronisation des données ne démarre pas.

        Remarque

        Si vous ne pouvez pas supprimer ou renommer la table portant le même nom dans la base de données de destination, vous pouvez la mapper vers un nom de table différent. Pour plus d'informations, consultez la rubrique Mapper les noms de tables et de colonnes.

      • Ignore Errors and Proceed : ignore la vérification des noms de tables en double dans la base de données de destination.

        Avertissement

        La sélection de l'option Ignore Errors and Proceed peut entraîner une incohérence des données et mettre votre activité à risque. Par exemple :

        • Si les schémas de table sont identiques et qu'un enregistrement de la base de données de destination possède la même valeur de clé primaire ou de clé unique qu'un enregistrement de la base de données source :

          • Lors de la synchronisation complète, DTS conserve l'enregistrement dans le cluster de destination. L'enregistrement correspondant de la base de données source n'est pas synchronisé.

          • Lors de la synchronisation incrémentielle, l'enregistrement de la base de données source écrase l'enregistrement de la base de données de destination.

        • Si les schémas de table sont différents, la synchronisation initiale des données peut échouer. Cela peut entraîner la synchronisation partielle des données de colonne ou un échec complet de la synchronisation. Procédez avec prudence.

      Capitalization of Object Names in Destination Instance

      Vous pouvez configurer la politique de sensibilité à la casse pour les noms d'objets de base de données, de tables et de colonnes synchronisés vers l'instance de destination. Par défaut, la DTS default policy est sélectionnée. Vous pouvez également choisir d'utiliser les politiques par défaut des bases de données source et de destination. Pour plus d'informations, consultez la rubrique Politique de sensibilité à la casse pour les noms d'objets de destination.

      Drop data object configuration

      1. Cliquez sur Add Library. Dans la boîte de dialogue New Database, saisissez le nom de la base de données source.

        Important
        • Le nom de la base de données source doit être identique au nom du schéma dans l'instance AnalyticDB for PostgreSQL. Cet exemple utilise dts_deliver_test.

        • Si une base de données figure déjà dans la liste et que vous devez en ajouter une autre, cliquez sur le bouton Add situé à côté de la base de données existante.

      2. Cliquez sur OK.

      3. Cliquez sur image.png à côté de la base de données que vous venez d'ajouter pour développer la liste des bases de données.

      4. Cliquez sur Add Table à côté de Table. Dans la boîte de dialogue Add Table, saisissez le nom de la table source.

        Important

        Le nom de la table source doit être identique au paramètre tableName configuré dans le SDK. Cet exemple utilise tab1,tab2,tab3. Pour plus d'informations, consultez la section Paramètres.

      5. Cliquez sur OK.

      6. (Facultatif) Configurez les mappages de noms de tables et de colonnes.

        1. Cliquez sur Edit à côté de la table que vous venez de créer.

        2. Configurez le mappage du nom de la table.

          Modifiez le Table Name.

        3. Configurez le mappage du nom de la colonne.

          Décochez la case Sync All Columns, puis modifiez le Column Name et le Map column name.

          Important
          • Les paramètres Column Name et Map column name correspondent aux paramètres du SDK. Column Name est le nom de la colonne source du SDK (plus précisément, le paramètre name de createField dans le fichier FakeSource.java), et Map column name est le nom de la colonne dans l'instance AnalyticDB for PostgreSQL de destination.

          • Cliquez sur l'icône image.png pour ajouter d'autres colonnes.

        4. Une fois la configuration terminée, cliquez sur OK.

          Remarque

          Vous pouvez répéter les opérations pour ajouter, modifier, modifier en lot ou supprimer des bases de données ou des tables selon vos besoins.

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

      Paramètre

      Description

      Dedicated Cluster for Task Scheduling

      Par défaut, DTS planifie la tâche sur un cluster partagé, que vous n'avez pas besoin de sélectionner. Vous pouvez acheter un cluster dédié d'une classe d'instance spécifiée pour exécuter des tâches DTS. Pour plus de détails, consultez la rubrique Qu'est-ce qu'un cluster dédié DTS ?

      Retry Time for Failed Connections

      Après le démarrage d'une tâche de synchronisation, 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 également spécifier une durée de nouvelle tentative personnalisée comprise entre 10 et 1 440 minutes. Nous vous recommandons de définir la durée à 30 minutes ou plus. Si DTS se reconnecte avec succès à la base de données dans le délai spécifié, la tâche de synchronisation reprend automatiquement. Sinon, la tâche échoue.

      Remarque
      • Si vous disposez de plusieurs instances DTS (par exemple, l'instance A et l'instance B) qui partagent la même source ou la même destination, et que vous définissez la durée de nouvelle tentative réseau à 30 minutes pour l'instance A et à 60 minutes pour l'instance B, la durée la plus courte de 30 minutes est utilisée pour les deux.

      • Étant donné que DTS facture le temps d'exécution de la tâche 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 métier 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

      Après le démarrage de la tâche de synchronisation, si d'autres problèmes non liés à la connectivité surviennent avec la base de données source ou de destination (tels que des exceptions d'exécution DDL ou DML), DTS signale une erreur et lance immédiatement des opérations de nouvelle tentative continues. La durée de nouvelle tentative par défaut est de 10 minutes. Vous pouvez également personnaliser la durée de nouvelle tentative dans la plage de 1 à 1 440 minutes. Nous vous recommandons de la définir à 10 minutes ou plus. Si les opérations pertinentes aboutissent dans la durée de nouvelle tentative définie, la tâche de synchronisation reprend automatiquement. Sinon, la tâche échoue.

      Important

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

      Enable Throttling for Incremental Data Synchronization

      Vous pouvez choisir de définir une limite de débit pour la tâche de synchronisation incrémentielle en définissant les paramètres RPS of Incremental Data Migration et BPS of Incremental Data Migration afin de réduire la charge sur la base de données de destination.

      Environment Tag

      Sélectionnez une balise d'environnement pour identifier l'instance en fonction de vos besoins.

      Configure ETL

      Choisissez d'activer ou non la fonctionnalité ETL (Extract, Transform, Load). Pour plus d'informations, consultez la rubrique 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 métier.

      • 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 API permettant de configurer cette instance, placez le curseur sur le bouton Next: Save Task Settings and Precheck et cliquez sur Preview OpenAPI parameters dans la bulle.

    • Une fois que vous avez consulté les paramètres API, cliquez sur Next: Save Task Settings and Precheck en bas de la page.

    Remarque
    • Avant le démarrage de la tâche de synchronisation, DTS exécute une pré-vérification. La tâche ne peut démarrer qu'après la réussite de tous les éléments de pré-vérification.

    • Si la pré-vérification échoue, cliquez sur View Details pour l'élément ayant échoué. Corrigez le problème comme indiqué, puis relancez la pré-vérification.

    • Si la pré-vérification renvoie un avertissement :

      • Si un élément de vérification échoue et ne peut pas être ignoré, cliquez sur View Details à côté de l'élément. Suivez les instructions pour corriger le problème, puis relancez la pré-vérification.

      • Pour les éléments de vérification pouvant être ignorés, vous pouvez cliquer successivement sur Confirm Alert Details , Ignore , OK et Precheck Again pour ignorer l'avertissement et relancer la pré-vérification. Si vous choisissez de masquer l'élément d'avertissement, cela peut entraîner des problèmes tels que l'incohérence des données et présenter des risques pour votre activité.

  7. Achetez l'instance.

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

    2. Sur la page Purchase , sélectionnez la méthode de facturation et la classe d'instance pour l'instance de synchronisation des données. Le tableau suivant décrit les paramètres.

      Catégorie

      Paramètre

      Description

      New Instance Class

      Méthode de facturation

      • Abonnement : vous êtes facturé lors de la création de l'instance. Cette méthode convient aux besoins à long terme et est plus rentable que le paiement à l'utilisation. Plus la période d'abonnement est longue, plus la remise est importante.

      • Paiement à l'utilisation : vous êtes facturé sur une base horaire. Cette méthode convient aux besoins à court terme. Vous pouvez libérer l'instance à tout moment pour réaliser des économies.

      Nombre de shards

      Le nombre de partitions pour le sujet de destination.

      Important

      Le nombre de shards ne peut pas être modifié après la création de l'instance. Sélectionnez la valeur avec prudence.

      Groupe de ressources

      Le groupe de ressources auquel appartient l'instance. La valeur par défaut est default resource group. Pour plus d'informations, consultez la rubrique Qu'est-ce que la gestion des ressources ?

      Classe d'instance

      DTS propose diverses classes d'instances avec différents niveaux de performance. La classe d'instance affecte la vitesse de synchronisation. Sélectionnez une classe d'instance en fonction de votre scénario métier. Pour plus d'informations, consultez la rubrique Spécifications des instances de synchronisation des données.

      Durée de l'abonnement

      Pour la méthode de facturation par abonnement, sélectionnez la durée de l'instance. Vous pouvez sélectionner un abonnement mensuel de 1 à 9 mois, ou un abonnement annuel de 1, 2, 3 ou 5 ans.

      Remarque

      Cette option est disponible uniquement lorsque la méthode de facturation est Subscription.

    3. Une fois la configuration terminée, lisez et acceptez les Data Transmission Service (Pay-as-you-go) Service Terms.

    4. Cliquez sur Buy and Start . Dans la boîte de dialogue OK , cliquez sur OK .

      Vous pouvez consulter la progression de la tâche sur la page Data Synchronization.

Expédier des données avec le SDK

  1. Configurez le SDK d'expédition de données DTS.

    1. Ouvrez un IDE tel qu'IntelliJ IDEA et créez un projet.

    2. Dans le nouveau projet, localisez le fichier Project Object Model (POM) : pom.xml .

    3. Ajoutez la dépendance suivante au fichier pom.xml :

      <dependency>
        <groupId>com.aliyun.dts.deliver</groupId>
        <artifactId>dts-deliver-client</artifactId>
        <version>1.0.0</version>
      </dependency>
      Remarque

      Vous pouvez trouver la dernière dépendance Maven sur la page dts-deliver-client .

    4. Téléchargez l'exemple de code et reportez-vous au fichier DtsDeliverTest.java dans le dossier dts-deliver-test pour expédier les données. Pour l'exemple de code, consultez la rubrique Utiliser l'exemple de code .

      Remarque

      Dans le fichier FakeSource.java, la méthode read est un exemple de source de données, et le paramètre name dans createField correspond au nom de la colonne source. Vous devez modifier le code en fonction de vos besoins.

      Dans la liste Data Synchronization Tasks , cliquez sur l'ID de l'instance d'expédition de données cible, puis dans le volet de navigation de gauche, cliquez sur Basic Information pour obtenir les paramètres utilisés dans l'exemple de code du SDK.

      Paramètre

      Description

      Comment l'obtenir

      ip:port

      Le point de terminaison du canal d'expédition des données.

      Dans la section Shipping Channel Information, cliquez sur Copy à côté de Public Endpoint ou de VPC Endpoint.

      Important

      Vous ne pouvez utiliser le VPC Endpoint que si le réseau du client se trouve dans le même Virtual Private Cloud (VPC) que l'instance actuelle.

      ak

      L'ID AccessKey et le secret AccessKey du compte propriétaire de l'instance d'expédition de données DTS.

      Pour plus d'informations, consultez les rubriques Créer une paire de clés AccessKey et Afficher les informations AccessKey d'un utilisateur RAM.

      secret

      dts_job_id

      Remarque

      La valeur à saisir pour DTS_JOB_ID.getKey().

      L'ID de la tâche de l'instance d'expédition de données DTS.

      Important

      N'utilisez pas l'ID de l'instance.

      Vous pouvez appeler l'opération API DescribeDtsJobs pour interroger l'ID.

      Remarque

      Dans le Shipped Topic, le dts_job_id est la chaîne située entre _vpc_ et _data_delivery_. Par exemple, si le Shipped Topic est cn_hangzhou_vpc_cxti86dc11z_data_delivery_version2, alors le dts_job_id est cxti86dc11z.

      Topic

      Le sujet de destination de l'expédition.

      Dans la section Shipping Channel Information, cliquez sur Copy à côté de Shipped Topic.

      partition

      Le nombre de partitions dans le sujet de destination.

      Dans la section Shipping Channel Information, affichez la valeur de Shards.

      region

      La région de l'instance d'expédition de données DTS.

      Dans la section Shipping Channel Information, affichez la valeur de Instance Region.

      dbName

      Le nom de la base de données source. Il doit être identique au nom du schéma dans l'instance AnalyticDB for PostgreSQL.

      Saisissez le nom en fonction de vos besoins. Cet exemple utilise dts_deliver_test.

      tableName

      Le nom de la table source. Il doit être identique au nom de la table saisi lors de l'étape Drop data object configuration.

      Saisissez les noms en fonction de vos besoins. Cet exemple utilise tab1, tab2 et tab3.

  2. Après avoir configuré les paramètres, notez l'heure actuelle et démarrez le SDK.

  3. Modifiez le décalage actuel de l'instance d'expédition de données. Pour plus d'informations, consultez la rubrique Modifier le point de contrôle d'une instance de synchronisation ou de migration des données .

    Remarque

    Par défaut, le Current Offset d'une instance d'expédition de données correspond à l'heure de démarrage du module Incremental Write . Vous devez modifier le décalage pour qu'il corresponde à l'heure de démarrage du SDK.

  4. Consultez les données dans la base de données de destination.