DTS synchronise les données de Db2 for LUW vers AnalyticDB for PostgreSQL.
Prérequis
Vous avez créé une instance AnalyticDB for PostgreSQL de destination. Pour obtenir des instructions, consultez la rubrique Créer une instance.
Pour une synchronisation complète des données, la base de données de destination doit disposer d'un espace de stockage supérieur au volume de données de la base de données source.
Limites
Lors de la synchronisation du schéma, DTS synchronise les clés étrangères de la base de données source vers la base de données de destination.
Pendant la synchronisation complète et incrémentielle des données, DTS désactive temporairement les vérifications de contraintes et les opérations en cascade des clés étrangères au niveau de la session. Des incohérences de données peuvent survenir si des opérations de mise à jour ou de suppression en cascade sont effectuées sur la base de données source pendant l'exécution de la tâche.
Type de limite | Description |
Limites sur la base de données source |
|
Autres limites |
|
Cas particuliers | La base de données source Db2 for LUW est une base de données autogérée. Lorsque vous synchronisez des données depuis la base de données Db2 for LUW, tenez compte des points suivants :
|
Facturation
|
Type de synchronisation |
Tarification |
|
Synchronisation du schéma et synchronisation complète des données |
Gratuit. |
|
Synchronisation incrémentielle des données |
Facturé. Pour plus d'informations, consultez la rubrique Présentation de la facturation. |
Topologies de synchronisation
Un-à-un
Un-à-plusieurs
En cascade
Plusieurs-à-un
Pour en savoir plus sur ces topologies de synchronisation et savoir quand les utiliser, consultez la rubrique Présentation des topologies de synchronisation.
Opérations SQL prises en charge
|
Type d'opération |
Instruction SQL |
|
DML |
INSERT, UPDATE, DELETE Remarque
Le système convertit automatiquement les instructions UPDATE en instructions REPLACE INTO lors de l'écriture des données dans une instance AnalyticDB for PostgreSQL de destination. Si une instruction UPDATE modifie une clé primaire, le système la convertit plutôt en une instruction DELETE et une instruction INSERT. |
Prérequis
-
Créer des comptes et accorder des autorisations
Base de données
Autorisations
Actions
Db2 for LUW
Autorisation DBADM
AnalyticDB for PostgreSQL
Autorisations de lecture et d'écriture sur la base de données cible contenant les objets à synchroniser
Créer et gérer des utilisateurs
RemarqueVous pouvez également utiliser un compte disposant de l'autorisation RDS_SUPERUSER. Pour obtenir des instructions sur la création du compte, consultez la rubrique gestion des autorisations utilisateur.
Activez la fonctionnalité d'archivage des journaux pour la base de données Db2 for LUW. Pour plus d'informations, consultez les pages logarchmeth1 - Paramètre de configuration de la méthode principale d'archivage des journaux et logarchmeth2 - Paramètre de configuration de la méthode secondaire d'archivage des journaux.
Procédure
-
Accédez à la page des tâches de synchronisation des données.
Connectez-vous à la console Data Management (DMS).
Dans la barre de navigation supérieure, cliquez sur Data + AI.
Dans le volet de navigation de gauche, choisissez .
RemarqueLes opérations peuvent varier en fonction du mode et de la disposition de la console DMS. Pour plus d'informations, consultez les rubriques Console en mode simple et Personnaliser la disposition et le style de la console DMS.
Cliquez sur Create Task pour ouvrir la page de configuration de la tâche.
-
Facultatif : Dans le coin supérieur droit de la page, cliquez sur New Configuration Page.
RemarqueSi le bouton dans le coin supérieur droit est Back to Previous Version, vous pouvez ignorer cette étape.
Les pages de configuration ancienne et nouvelle présentent des paramètres différents. Nous vous recommandons d'utiliser la nouvelle page de configuration.
-
Configurez les bases de données source et de destination.
Catégorie
Paramètre
Description
N/A
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 a DMS database instance.
Sélectionnez une instance existante selon vos besoins.
-
Si vous utilisez une instance existante, les informations de la base de données sont renseignées automatiquement. Vous n'avez pas besoin de les saisir à nouveau.
-
Si vous n'utilisez pas d'instance existante, configurez les informations de base de données suivantes.
Remarque-
Dans la console DMS, cliquez sur Add DMS Database Instance pour ajouter une instance de base de données. Pour plus d'informations, consultez les rubriques Ajouter une instance de base de données cloud et Ajouter une instance de base de données depuis un autre cloud ou une base de données auto-gérée.
-
Dans la console DTS, vous pouvez ajouter une base de données à DTS sur la page Database Connections ou sur la nouvelle page de configuration. Pour plus d'informations, consultez la rubrique Gestion des connexions de données.
Database Type
Sélectionnez DB2 for LUW.
Connection Type
Sélectionnez une méthode d'accès en fonction de l'emplacement de déploiement de votre base de données source. Cette rubrique utilise Self-managed Database on ECS à titre d'exemple.
RemarqueSi l'instance source est une base de données auto-hébergée, vous devez également effectuer des travaux préparatoires. Pour plus d'informations, consultez la rubrique Aperçu des préparatifs.
Instance Region
Sélectionnez la région où réside la base de données DB2 LUW.
Replicate Data Across Alibaba Cloud Accounts
Cet exemple utilise une instance de base de données appartenant au compte Alibaba Cloud actuel. Sélectionnez No.
ECS Instance ID
Saisissez l'ID de l'instance ECS qui héberge la base de données DB2 LUW.
Port
Saisissez le port de service de la base de données DB2 LUW. Le port par défaut est 50000.
Database Name
Saisissez le nom de la base de données dans l'instance DB2 LUW source qui contient les objets à synchroniser.
Database Account
Saisissez le compte de base de données de la base de données DB2 LUW. Pour obtenir des informations sur les autorisations requises, consultez la rubrique Créer un compte et accorder des autorisations.
Database Password
Saisissez le mot de passe correspondant au compte de base de données.
Destination Database
Select a DMS database instance.
Sélectionnez une instance existante selon vos besoins.
-
Si vous utilisez une instance existante, les informations de la base de données sont renseignées automatiquement. Vous n'avez pas besoin de les saisir à nouveau.
-
Si vous n'utilisez pas d'instance existante, configurez les informations de base de données suivantes.
Remarque-
Dans la console DMS, cliquez sur Add DMS Database Instance pour ajouter une instance de base de données. Pour plus d'informations, consultez les rubriques Ajouter une instance de base de données cloud et Ajouter une instance de base de données depuis un autre cloud ou une base de données auto-gérée.
-
Dans la console DTS, vous pouvez ajouter une base de données à DTS sur la page Database Connections ou sur la nouvelle page de configuration. Pour plus d'informations, consultez la rubrique Gestion des connexions de données.
Database Type
Sélectionnez AnalyticDB for PostgreSQL.
Connection Type
Sélectionnez Alibaba Cloud Instance.
Instance Region
Sélectionnez la région où réside 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 où les objets synchronisés seront stockés.
Database Account
Saisissez le compte de l'instance AnalyticDB for PostgreSQL de destination. Pour obtenir des informations sur les autorisations requises, consultez la rubrique Créer un compte et accorder des autorisations.
Database Password
Saisissez le mot de passe correspondant au compte de base de données.
-
-
Dans la partie inférieure de la page, cliquez sur Test Connectivity and Proceed.
Si la base de données source ou de destination est une instance de base de données Alibaba Cloud, telle qu'une instance ApsaraDB RDS for MySQL ou ApsaraDB for MongoDB, DTS ajoute automatiquement les plages CIDR des serveurs DTS à la liste d'autorisation de l'instance. Si la base de données source ou de destination est une base de données auto-gérée hébergée sur une instance Elastic Compute Service (ECS), DTS ajoute automatiquement les plages CIDR des serveurs DTS aux règles du groupe de sécurité de l'instance ECS, et vous devez vous assurer que l'instance ECS peut accéder à la base de données. Si la base de données source ou de destination est une base de données auto-gérée déployée dans un centre de données ou fournie par un fournisseur de services cloud tiers, vous devez ajouter manuellement les plages CIDR des serveurs DTS à la liste d'autorisation de la base de données pour permettre à DTS d'y accéder. Pour plus d'informations, consultez la rubrique Ajouter les adresses IP des serveurs DTS à la liste d'autorisation.
AvertissementSi les plages CIDR des serveurs DTS sont ajoutées automatiquement ou manuellement à la liste d'autorisation de la base de données ou de l'instance, ou aux règles du groupe de sécurité ECS, des risques de sécurité peuvent survenir. Par conséquent, avant d'utiliser DTS pour synchroniser des données, vous devez comprendre et accepter les risques potentiels et prendre des mesures préventives, notamment mais sans s'y limiter : renforcer la sécurité de votre nom d'utilisateur et de votre mot de passe, limiter les ports exposés, authentifier les appels API, vérifier régulièrement la liste d'autorisation ou les règles du groupe de sécurité ECS et interdire les plages CIDR non autorisées, ou connecter la base de données à DTS via Express Connect, VPN Gateway ou Smart Access Gateway.
-
Configurez les objets de la tâche.
-
Sur la page Configure Objects, configurez les objets à synchroniser.
Parameter
Description
Synchronization Types
Les types de synchronisation. Par défaut, l'option Incremental Data Synchronization est sélectionnée. Vous devez également sélectionner les options Schema Synchronization et Full Data Synchronization. Une fois la vérification préalable terminée, DTS synchronise les données historiques des objets sélectionnés depuis la base de données source vers le cluster de destination. Ces données historiques constituent la base de la synchronisation incrémentielle ultérieure.
DDL and DML Operations to Be Synchronized
Sélectionnez les opérations DDL ou DML à synchroniser au niveau de l'instance. Pour plus d'informations sur les opérations prises en charge, consultez la section Opérations SQL prises en charge.
RemarquePour sélectionner les opérations SQL à synchroniser pour une base de données ou une table, cliquez avec le bouton droit sur l'objet de synchronisation dans la zone Selected Objects. Dans la boîte de dialogue qui s'affiche, sélectionnez les opérations SQL.
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 du même nom n'existe, la vérification préalable réussit. Si une table du même nom existe, la vérification préalable échoue et la tâche de synchronisation des données ne démarre pas.
RemarqueSi 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 doublons de noms de tables dans la base de données de destination.
AvertissementLa 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.
-
Storage Engine Type
Sélectionnez le type de moteur de stockage pour les tables de destination. La valeur par défaut est Beam.
RemarqueCe paramètre est disponible uniquement lorsque la version du noyau de l'instance AnalyticDB for PostgreSQL de destination est la v7.0.6.6 ou une version ultérieure, et que l'option Synchronization Types est sélectionnée pour l'option Schema Synchronization.
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.
Source Objects
Dans la zone Source Objects, cliquez sur un objet à synchroniser, puis cliquez sur
pour le déplacer vers la zone Selected Objects.RemarqueLa synchronisation s'effectue au niveau de la table. Les autres objets tels que les vues, les déclencheurs et les procédures stockées ne sont pas synchronisés vers la base de données de destination.
Selected Objects
-
Pour renommer un seul objet de synchronisation dans l'instance de destination, cliquez avec le bouton droit sur l'objet dans la zone Selected Objects. Pour plus d'informations sur le renommage des objets, consultez la rubrique Mapper une seule base de données, table ou colonne.
-
Pour modifier les noms de plusieurs objets de synchronisation dans l'instance de destination par lot, cliquez sur Batch Edit dans le coin supérieur droit de la zone Selected Objects. Pour plus d'informations, consultez la rubrique Mapper des bases de données, tables et colonnes par lot.
Remarque-
Pour sélectionner les opérations SQL à synchroniser au niveau du schéma ou de la table, cliquez avec le bouton droit sur l'objet dans la zone Selected Objects et sélectionnez les opérations SQL souhaitées dans la boîte de dialogue qui s'affiche. Pour plus d'informations sur les opérations prises en charge, consultez la section Opérations SQL prises en charge.
-
Pour filtrer les données à l'aide d'une clause WHERE, cliquez avec le bouton droit sur la table dans la zone Selected Objects et spécifiez une condition de filtre dans la boîte de dialogue qui s'affiche. Pour obtenir des instructions, consultez la rubrique Configurer une condition de filtre.
-
-
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é et vous n'avez pas besoin de sélectionner un cluster. Pour des performances plus stables, vous pouvez acheter un cluster dédié pour exécuter les tâches de synchronisation DTS. Pour plus d'informations, 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 tente immédiatement de rétablir 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 parvient à se reconnecter à 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, soit 30 minutes, est utilisée pour les deux.
-
Étant donné que DTS facture l'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 concernées aboutissent dans la durée de nouvelle tentative définie, la tâche de synchronisation reprend automatiquement. Sinon, la tâche échoue.
ImportantLa valeur de l'option Retry Time for Other Issues doit être inférieure à celle de l'option Retry Time for Failed Connections.
Enable Throttling for Full Data Synchronization
Pendant l'étape de synchronisation complète, DTS consomme des ressources de lecture et d'écriture des bases de données source et de destination, ce qui peut augmenter la charge de la base de données. Pour réduire la charge sur les bases de données source et de destination, vous pouvez définir une limite de débit pour la tâche de synchronisation complète en configurant 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).
Remarque-
Cet élément de configuration est disponible uniquement lorsque l'option Synchronization Types est définie sur Full Data Synchronization.
-
Vous pouvez également ajuster le taux de synchronisation complète après le démarrage de l'instance de synchronisation.
Enable Throttling for Incremental Data Synchronization
Vous pouvez également définir une limite de débit pour la tâche de synchronisation incrémentielle. Pour soulager la pression sur la base de données de destination, définissez les paramètres RPS of Incremental Data Synchronization et Data synchronization speed for incremental synchronization (MB/s).
Environment Tag
Vous pouvez sélectionner un tag d'environnement pour identifier l'instance. Dans cet exemple, aucune sélection n'est requise.
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 :
-
Yes : active la fonctionnalité ETL. Saisissez les instructions de traitement des données dans l'éditeur de code. Pour plus d'informations, consultez la rubrique Configurer l'ETL dans une tâche de migration ou de synchronisation de données.
-
No : désactive la fonctionnalité ETL.
Monitoring and Alerting
Spécifiez si vous souhaitez configurer des alertes. En cas d'échec de la synchronisation ou si la latence dépasse le seuil spécifié, une notification est envoyée à un contact d'alerte.
-
No : aucune alerte n'est configurée.
-
Yes : configurez les alertes en définissant un seuil d'alerte et en spécifiant un notification d'alerte. Pour plus d'informations, consultez la rubrique Configurer la surveillance et les alertes lors de la configuration de la tâche.
-
-
Cliquez sur Next: Data Validation pour configurer une tâche de validation des données.
Si vous souhaitez utiliser la fonctionnalité de validation des données, consultez la rubrique Configurer la validation des données pour obtenir des instructions de configuration.
-
Facultatif : Après avoir terminé les étapes précédentes, cliquez sur Next: Configure Database and Table Fields pour configurer le Type, la Primary Key Column et la Distribution Key pour les tables à migrer dans l'instance AnalyticDB for PostgreSQL de destination.
RemarqueCette étape est disponible uniquement si vous sélectionnez l'option Schema Synchronization lors de la configuration des objets de synchronisation. Vous pouvez définir l'option Definition Status sur All pour effectuer des modifications.
La Primary Key Column peut être une clé primaire composite constituée de plusieurs colonnes, et vous devez sélectionner une ou plusieurs des Primary Key Column comme Distribution Key.
Pour plus d'informations détaillées sur les colonnes de clé primaire et les clés de distribution, consultez les rubriques Gérer les tables de données et Définir la distribution des tables.
-
-
Enregistrez la tâche et exécutez une vérification préalable.
Pour afficher les paramètres API de configuration de cette instance, placez le curseur sur le bouton Next: Save Task Settings and Precheck et cliquez sur Preview OpenAPI parameters dans l'infobulle.
Une fois que vous avez consulté les paramètres API, cliquez sur Next: Save Task Settings and Precheck en bas de la page.
RemarqueAvant le démarrage de la tâche de synchronisation, DTS exécute une vérification préalable. La tâche ne peut démarrer qu'après la réussite de tous les éléments de vérification préalable.
Si la vérification préalable échoue, cliquez sur View Details pour l'élément ayant échoué. Corrigez le problème selon les instructions, puis relancez la vérification préalable.
-
Si la vérification préalable 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 vérification préalable.
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 vérification préalable. 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é.
Lorsque le Success Rate atteint 100 %, cliquez sur Next: Purchase Instance.
-
Achetez l'instance.
-
Sur la page Purchase, sélectionnez la méthode de facturation et la spécification de lien pour l'instance de synchronisation des données. Le tableau suivant décrit ces paramètres en détail.
Category
Parameter
Description
New Instance Class
Billing Method
-
Abonnement : vous payez lors de la création de l'instance. Cette option convient aux besoins à long terme et est plus rentable que le paiement à l'utilisation. Plus la durée d'abonnement est longue, plus la remise est importante.
-
Paiement à l'utilisation : vous êtes facturé à l'heure. Cette option convient aux besoins à court terme. Vous pouvez libérer l'instance immédiatement après utilisation pour économiser des coûts.
Resource Group Configuration
Le groupe de ressources auquel appartient l'instance. La valeur par défaut est le groupe de ressources par défaut. Pour plus d'informations, consultez la rubrique Qu'est-ce que la gestion des ressources ?.
Link Specification
DTS propose des spécifications de synchronisation avec différents niveaux de performance. La spécification du lien de synchronisation affecte le taux de synchronisation. Vous pouvez choisir une spécification en fonction de votre scénario métier. Pour plus d'informations, consultez la rubrique Spécifications des liens de synchronisation des données.
Subscription Duration
En mode abonnement, sélectionnez la durée et la quantité pour l'instance d'abonnement. Vous pouvez choisir un abonnement mensuel de 1 à 9 mois, ou un abonnement annuel de 1, 2, 3 ou 5 ans.
RemarqueCette option est disponible uniquement lorsque la méthode de facturation est Subscription.
-
Une fois la configuration terminée, lisez et acceptez les Data Transmission Service (Pay-as-you-go) Service Terms.
-
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.
-