La fonction Data Subscription capture les données incrémentielles d'une base de données source en temps réel. Elle permet de mettre à jour des caches légers, de découpler les systèmes métier de manière asynchrone et de synchroniser les données en temps réel avec une logique ETL personnalisée.
Prérequis
La base de données Oracle autogérée doit être en version 9i, 10g ou 11g. Les instances Real Application Clusters (RAC) et Pluggable Database (PDB) ne sont pas prises en charge.
La journalisation supplémentaire est activée pour la base de données Oracle source, et les paramètres
supplemental_log_data_pketsupplemental_log_data_uisont activés. Pour plus d'informations, consultez la documentation Supplemental Logging.La base de données Oracle source doit être en mode ARCHIVELOG. Les journaux archivés doivent avoir une période de rétention raisonnable et être accessibles. Pour plus d'informations, consultez la documentation ARCHIVELOG.
Vous avez créé un Virtual Private Cloud (VPC) et un vSwitch pour l'instance d'abonnement aux données.
Limites
Type | Description |
Limites de la base de données source |
|
Autres limites |
|
Avant de commencer
Connectez-vous à la base de données Oracle source, créez un compte de base de données pour la tâche Data Subscription et accordez-lui les autorisations DBA. Pour plus d'informations, consultez les documentations CREATE USER et GRANT USER.
Si vous devez suivre les modifications de données d'une base de données Oracle mais que l'autorisation d'administrateur de base de données (DBA) ne peut pas être accordée au compte de base de données, vous pouvez activer la journalisation des archives et la journalisation supplémentaire, et accorder des autorisations fines au compte.
-
Activez la journalisation des archives et la journalisation supplémentaire.
Type
Procédure
Journalisation des archives
Exécutez les instructions suivantes pour activer la journalisation des archives :
shutdown immediate; startup mount; alter database archivelog; alter database open; archive log list;Journalisation supplémentaire
Activez la journalisation supplémentaire au niveau de la base de données ou de la table :
RemarqueVous pouvez activer la journalisation supplémentaire au niveau de la base de données pour garantir la stabilité des tâches DTS. Vous pouvez activer la journalisation supplémentaire au niveau de la table pour réduire l'utilisation du disque de la base de données Oracle source.
-
Activer la journalisation supplémentaire au niveau de la base de données
-
Activer la journalisation supplémentaire minimale :
alter database add supplemental log data; -
Activer la journalisation supplémentaire des clés primaires et uniques au niveau de la base de données :
alter database add supplemental log data (primary key,unique index) columns;
-
-
Activer la journalisation supplémentaire au niveau de la table
-
Activer la journalisation supplémentaire minimale :
alter database add supplemental log data; -
Activer la journalisation supplémentaire au niveau de la table en utilisant l'une des méthodes suivantes :
-
Activer la journalisation supplémentaire de la clé primaire au niveau de la table :
alter table table_name add supplemental log data (primary key) columns; -
Activer la journalisation supplémentaire au niveau de la table pour toutes les colonnes :
alter table tb_name add supplemental log data (all) columns ;
-
-
-
-
Accordez des autorisations fines à un compte de base de données Oracle.
Versions Oracle 9i à 11g
# Create a database account, for example, rdsdt_dtsacct, and grant permissions to the account. create user rdsdt_dtsacct IDENTIFIED BY rdsdt_dtsacct; grant create session to rdsdt_dtsacct; grant connect to rdsdt_dtsacct; grant resource to rdsdt_dtsacct; grant execute on sys.dbms_logmnr to rdsdt_dtsacct; grant select on V_$LOGMNR_LOGS to rdsdt_dtsacct; grant select on all_objects to rdsdt_dtsacct; grant select on all_tab_cols to rdsdt_dtsacct; grant select on dba_registry to rdsdt_dtsacct; grant select any table to rdsdt_dtsacct; grant select any transaction to rdsdt_dtsacct; -- v$log privileges grant select on v_$log to rdsdt_dtsacct; -- v$logfile privileges grant select on v_$logfile to rdsdt_dtsacct; -- v$archived_log privileges grant select on v_$archived_log to rdsdt_dtsacct; -- v$parameter privileges grant select on v_$parameter to rdsdt_dtsacct; -- v$database privileges grant select on v_$database to rdsdt_dtsacct; -- v$active_instances privileges grant select on v_$active_instances to rdsdt_dtsacct; -- v$instance privileges grant select on v_$instance to rdsdt_dtsacct; -- v$logmnr_contents privileges grant select on v_$logmnr_contents to rdsdt_dtsacct; -- system tables grant select on sys.USER$ to rdsdt_dtsacct; grant select on SYS.OBJ$ to rdsdt_dtsacct; grant select on SYS.COL$ to rdsdt_dtsacct; grant select on SYS.IND$ to rdsdt_dtsacct; grant select on SYS.ICOL$ to rdsdt_dtsacct; grant select on SYS.CDEF$ to rdsdt_dtsacct; grant select on SYS.CCOL$ to rdsdt_dtsacct; grant select on SYS.TABPART$ to rdsdt_dtsacct; grant select on SYS.TABSUBPART$ to rdsdt_dtsacct; grant select on SYS.TABCOMPART$ to rdsdt_dtsacct;
Procédure
-
Utilisez l'une des méthodes suivantes pour accéder à la page Tâches de suivi des modifications et sélectionnez la région où réside l'instance de suivi des modifications.
Console DTS
Connectez-vous à la console DTS.
Dans le volet de navigation de gauche, cliquez sur Suivi des modifications.
Dans le coin supérieur gauche de la page, sélectionnez la région où réside l'instance de suivi des modifications.
Console DMS
RemarqueLes opérations réelles 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.
Connectez-vous à la console DMS.
Dans la barre de navigation supérieure, placez le pointeur sur .
Dans la liste déroulante à droite de Change Tracking Tasks, sélectionnez la région où réside l'instance de suivi des modifications.
Cliquez sur Create Task pour accéder à la page de configuration de la tâche.
-
Configurez les paramètres dans les sections Base de données source et Type de réseau du consommateur.
AvertissementAprès avoir spécifié l'instance de base de données source, nous vous recommandons de lire les Limits affichées dans la partie supérieure de la page. Sinon, la tâche peut échouer ou les données suivies ne pourront pas être consommées.
Catégorie
Paramètre
Description
N/A
Task Name
Le nom de la tâche de suivi des modifications. DTS attribue automatiquement un nom à la tâche. Nous vous recommandons de spécifier un nom descriptif facilitant l'identification de la tâche. Il n'est pas nécessaire d'utiliser un nom de tâche unique.
Source Database
Select Existing Connection
Si vous souhaitez utiliser une instance de base de données déjà enregistrée dans le système (nouvellement créée ou précédemment sauvegardée) via Gérer les connexions à la base de données, sélectionnez-la dans la liste déroulante. Les informations de la base de données sont alors renseignées automatiquement.
RemarqueDans la console DMS, ce paramètre est libellé Select a DMS database instance.
Si votre instance de base de données ne figure pas dans le système, ou si vous ne souhaitez pas utiliser une instance existante, configurez manuellement les informations de la base de données.
Database Type
Sélectionnez Oracle.
Access Method
Sélectionnez la méthode d'accès en fonction du type d'instance source. Cet exemple utilise Self-managed Database on ECS comme illustration.
RemarqueSi votre base de données source est une base de données autogérée, vous devez effectuer les préparatifs nécessaires. Pour plus d'informations, consultez la rubrique Vue d'ensemble des préparatifs.
Instance Region
Sélectionnez la région où se trouve la base de données Oracle autogérée.
ECS Instance ID
Sélectionnez l'ID de l'instance ECS qui héberge la base de données Oracle autogérée.
Port
Saisissez le port de service de la base de données Oracle autogérée. La valeur par défaut est 1521.
Oracle Type
Non-RAC Instance : Si vous sélectionnez cette option, vous devez également spécifier le SID.
RAC or PDB Instance : Si vous sélectionnez cette option, vous devez également saisir le Service Name.
ImportantLes instances RAC et PDB ne sont pas prises en charge.
Cet exemple utilise une Non-RAC Instance.
Database Account
Saisissez le compte de la base de données Oracle autogérée. Pour les exigences en matière d'autorisations, consultez la section Avant de commencer.
Database Password
Le mot de passe utilisé pour accéder à l'instance de base de données.
Consumer Network Type
Network Type
La valeur du paramètre Network Type est fixée à VPC. Vous devez sélectionner un VPC et un vSwitch. Pour plus d'informations, consultez la rubrique VPC.
RemarqueUne fois la tâche de suivi des modifications configurée, vous ne pouvez pas modifier les paramètres de la section Consumer Network Type.
Si votre client de suivi des modifications est déployé dans un VPC, nous vous recommandons de sélectionner le même VPC et le même vSwitch que ceux connectés au client.
Si vous suivez les modifications de données via des réseaux internes, la latence du réseau est minimale.
-
Configurez les objets pour le suivi des modifications.
-
Sur la page Configure Objects, configurez les objets pour le suivi des modifications.
Paramètre
Description
Data Change Types
Les Data Change Types sont cochés par défaut et ne peuvent pas être modifiés.
Data Update
DTS suit les mises à jour des données des objets sélectionnés, y compris les opérations INSERT, DELETE et UPDATE.
Schema Update
DTS suit les opérations de création, de suppression et de modification effectuées sur tous les schémas d'objets de l'instance source. Vous devez utiliser le client de suivi des modifications pour filtrer les données à suivre.
Source Objects
Sélectionnez un ou plusieurs objets dans la section Source Objects et cliquez sur l'icône
pour ajouter les objets à la section Selected Objects. RemarqueVous pouvez sélectionner des tables ou des bases de données comme objets pour le suivi des modifications.
Si vous sélectionnez une base de données comme objet, DTS suit les données incrémentielles de tous les objets, y compris les nouveaux objets de la base de données.
Si vous sélectionnez une table comme objet, DTS ne suit que les données incrémentielles de cette table. Dans ce cas, si vous souhaitez suivre les modifications de données d'une autre table, vous devez ajouter la table à la liste des objets. Pour plus d'informations, consultez la rubrique Modifier les objets pour le suivi des modifications.
-
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é. Vous n'avez pas besoin de configurer ce paramètre. Vous pouvez acheter des clusters dédiés avec des spécifications spécifiques pour exécuter des tâches de suivi des modifications DTS. Pour plus d'informations, consultez la rubrique Qu'est-ce qu'un cluster dédié DTS ?.
Retry Time for Failed Connections
La plage de temps de nouvelle tentative en cas d'échec de connexion. Si la tâche de suivi des modifications échoue, DTS tente immédiatement de se reconnecter dans cette plage de temps. Valeurs valides : 10 à 1440. Unité : minutes. Valeur par défaut : 720. Nous vous recommandons de définir ce paramètre sur une valeur supérieure à 30. Si DTS se reconnecte à l'instance de base de données source dans la plage de temps spécifiée, DTS reprend la tâche de suivi des modifications. Sinon, la tâche de suivi des modifications échoue.
RemarqueSi plusieurs tâches de suivi des modifications sont configurées pour une instance de base de données, la plage de temps de nouvelle tentative la plus courte est prioritaire. Par exemple, les tâches A et B sont configurées pour la même instance de base de données. La tâche A est configurée avec une plage de temps de nouvelle tentative de 30 minutes, et la tâche B avec une plage de 60 minutes. Dans ce cas, la plage de 30 minutes est prioritaire.
Lorsque DTS effectue une nouvelle tentative de connexion, des frais sont facturés. Nous vous recommandons de spécifier la plage de temps 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 de l'instance de base de données source.
Retry Time for Other Issues
La plage de temps de nouvelle tentative pour les autres problèmes. Par exemple, si des opérations DDL ou DML échouent après le démarrage de la tâche de suivi des modifications, DTS retente immédiatement les opérations dans la plage de temps de nouvelle tentative. Valeurs valides : 1 à 1440. Unité : minutes. Valeur par défaut : 10. Nous vous recommandons de définir ce paramètre sur une valeur supérieure à 10. Si les opérations ayant échoué sont effectuées avec succès dans la plage de temps de nouvelle tentative spécifiée, DTS reprend la tâche de suivi des modifications. Sinon, la tâche de suivi des modifications échoue.
ImportantLa valeur du paramètre Retry Time for Other Issues doit être inférieure à la valeur du paramètre Retry Time for Failed Connections.
Environment Tag
Facultatif. Sélectionnez un tag d'environnement pour identifier l'instance.
Monitoring and Alerting
Indique s'il faut activer les alertes pour la tâche de suivi des modifications. Si les alertes sont configurées et que la tâche échoue ou que la latence dépasse le seuil, des notifications d'alerte sont envoyées. Valeurs valides :
No : n'active pas les alertes.
Yes : active les alertes. Dans ce cas, vous devez également configurer le seuil d'alerte et paramètres de notification d'alerte. Pour plus d'informations, consultez la rubrique Configurer les alertes lors de la configuration de l'instance.
-
-
Dans la partie inférieure de la page, cliquez sur Suivant : Enregistrer les paramètres de la tâche et prévérification.
Pour afficher les paramètres à spécifier lors de l'appel à l'opération API pertinente pour configurer la tâche DTS, placez le pointeur sur Next: Save Task Settings and Precheck et cliquez sur Preview OpenAPI parameters.
Si vous n'avez pas besoin d'afficher les paramètres ou si vous les avez déjà consultés, cliquez sur Next: Save Task Settings and Precheck dans la partie inférieure de la page.
RemarqueAvant de pouvoir démarrer la tâche de suivi des modifications, DTS effectue une prévérification. Vous ne pouvez démarrer la tâche de suivi des modifications qu'après sa réussite à la prévérification.
Si la tâche échoue à la prévérification, cliquez sur View Details à côté de chaque élément ayant échoué. Après avoir résolu les problèmes en vous basant sur le message d'erreur, vous pouvez relancer une prévérification.
-
Si une alerte est générée pour un élément lors de la prévérification, effectuez les opérations suivantes en fonction du scénario :
Si un élément d'alerte ne peut pas être ignoré, cliquez sur View Details à côté de l'élément ayant échoué et résolvez les problèmes. Ensuite, relancez une prévérification.
Si l'élément d'alerte peut être ignoré, cliquez sur Confirm Alert Details. Dans la boîte de dialogue Afficher les détails, cliquez sur Ignore. Dans le message qui apparaît, cliquez sur OK. Ensuite, cliquez sur Precheck Again pour relancer une prévérification. Si vous ignorez l'élément d'alerte, une incohérence des données peut survenir et votre activité peut être exposée à des risques potentiels.
-
Achetez l'instance.
Attendez que le Success Rate atteigne 100%. Ensuite, cliquez sur Next: Purchase Instance.
-
Sur la page Purchase, spécifiez la méthode de facturation de l'instance de suivi des modifications. Le tableau suivant décrit les paramètres.
Paramètre
Description
Méthode de facturation
Abonnement : Vous payez votre abonnement lors de la création d'une instance. La méthode de facturation par abonnement est plus rentable que la méthode de paiement à l'utilisation pour une utilisation à long terme. Des prix plus bas vous sont proposés pour des durées d'abonnement plus longues.
Paiement à l'utilisation : Une instance en paiement à l'utilisation est facturée à l'heure. Nous vous recommandons de sélectionner la méthode de paiement à l'utilisation pour une utilisation à court terme. Si vous n'avez plus besoin d'une instance en paiement à l'utilisation, vous pouvez la libérer pour réduire les coûts.
Resource Group Settings
Le groupe de ressources auquel appartient l'instance. Valeur par défaut : default resource group. Pour plus d'informations, consultez la rubrique Qu'est-ce que la gestion des ressources ?
Subscription Duration
Si vous sélectionnez la méthode de facturation par abonnement, définissez la durée de l'abonnement et le nombre d'instances que vous souhaitez créer. La durée de l'abonnement peut être de un à neuf mois, un an, deux ans, trois ans ou cinq ans.
RemarqueCe paramètre est disponible uniquement si vous sélectionnez la méthode de facturation Subscription.
Lisez et acceptez les Data Transmission Service (Pay-as-you-go) Service Terms.
Cliquez sur Buy and Start pour démarrer la tâche de suivi des modifications. Vous pouvez consulter la progression de la tâche dans la liste des tâches.
Étapes suivantes
Une fois la tâche en cours d'exécution, créez des groupes de consommateurs et connectez vos clients en aval pour consommer les données suivies.
-
Connectez un client pour consommer les données suivies :