A propos du processus Replicat intégré
En mode intégré, le processus Replicat exploite la fonctionnalité de traitement d'application des modifications disponible dans Oracle AI Database cible. Dans ce mode, le processus Replicat lit la trace, crée des enregistrements de modification logique qui représentent des transactions LMD ou LDD source, et transmet ces enregistrements à un serveur entrant dans la base de données cible Oracle. Le serveur entrant applique les données à la base de données cible.
Remarque : le processus Replicat intégré est un processus en ligne uniquement. Ne l'utilisez pas pour effectuer les chargements initiaux.
En mode intégré, le processus Replicat exploite la fonctionnalité de traitement d'application des modifications disponible dans Oracle AI Database. Dans ce mode, la réplication fonctionne comme suit :
-
Elle lit la trace Oracle GoldenGate.
-
Elle effectue le filtrage des données, leur mise en correspondance et leur conversion.
-
Elle construit des enregistrements de modification logiques (LCR) qui représentent des transactions DML de base de données source (dans l'ordre de validation). Le langage DDL est appliqué directement par le processus Replicat.
-
Elle effectue l'attachement à un processus en arrière-plan de la base de données cible appelé serveur entrant de base de données à l'aide d'une interface de transmission en continu légère.
-
Elle transmet les enregistrements de modification logiques au serveur entrant, qui applique les données à la base de données cible.
Dans une seule configuration de réplication, plusieurs processus enfant de serveur entrant, appelés serveurs d'application, appliquent des transactions en parallèle tout en conservant le caractère atomique de la transaction d'origine. Vous pouvez augmenter ce parallélisme autant que votre système cible le prendra en charge lorsque vous configurerez le processus Replicat ou de manière dynamique si nécessaire. Le diagramme suivant illustre le processus Replicat intégré configuré avec deux serveurs d'application des modifications parallèles.

Dans le diagramme ci-dessus, Integrated Replicat applique les transactions de manière asynchrone. Les transactions qui n'ont pas d'interdépendance peuvent être exécutées en toute sécurité et validées dans le désordre pour obtenir un débit rapide. Les transactions avec des dépendances sont garanties d'être appliquées dans le même ordre que sur la source.
Un processus de lecture sur le serveur entrant calcule les dépendances entre les transactions de la charge globale en fonction des contraintes définies au niveau de la base de données cible (clé primaire, unique, clé étrangère). Les transactions de barrière et les opérations DDL sont également gérées automatiquement. Un processus de coordination coordonne plusieurs transactions et maintient l'ordre entre les serveurs d'application des modifications.
Si le serveur entrant ne prend pas en charge une fonctionnalité ou un type de colonne configuré, le processus Replicat se désengage du serveur entrant, attend que le serveur entrant termine les transactions dans sa file d'attente, puis applique la transaction à la base de données en mode d'application directe via OCI. La réplication reprend le traitement en mode intégré après l'application de la transaction directe.
Les fonctionnalités suivantes sont appliquées en mode direct par le processus Replicat :
-
Opérations DDL
-
Opérations de séquence
-
Paramètre
SQLEXECdans un paramètreTABLEouMAP -
Traitement
EVENTACTIONS
Etant donné que les transactions sont appliquées en série, l'utilisation intensive de ces opérations peut réduire les performances du mode Replicat intégré. Le processus Replicat intégré fonctionne mieux lorsque la plupart des traitements d'application des modifications peuvent être effectués en mode intégré.
Remarque : les exits utilisateur sont exécutés en mode intégré. Cependant, l'exit utilisateur peut produire des résultats inattendus, si le code d'exit dépend des données du flux de réplication.
Remarque : le processus Replicat intégré exige que toutes les colonnes de clé étrangère soient indexées.
Avantages de la réplication intégrée
Les avantages de la réplication intégrée par rapport à la réplication non intégrée sont les suivants :
-
Integrated Replicat permet de partitionner automatiquement les charges de travail lourdes entre les processus d'application des modifications parallèles qui appliquent plusieurs transactions simultanément, tout en préservant l'intégrité et l'atomicité de la transaction source. Vous pouvez configurer un nombre minimal et un nombre maximal de processus d'application des modifications avec les paramètres
PARALLELISMetMAX_PARALLELISM. Le processus Replicat ajoute automatiquement des serveurs supplémentaires lorsque la charge globale augmente, puis s'ajuste à nouveau à la baisse lorsque la charge globale s'allume. -
La configuration du processus Replicat intégré nécessite un minimum de travail. Tout le travail est configuré dans un fichier de paramètres Replicat, sans configuration de partitions de plage.
-
La transmission en continu des applications hautes performances est activée pour le processus Replicat intégré au moyen d'une interface de programmation d'application (API) légère entre le processus Replicat et le serveur entrant.
-
Les transactions de barrière sont coordonnées par le processus Replicat intégré entre plusieurs processus d'application des modifications de serveur.
-
Les opérations LDD sont traitées en tant que transactions directes qui forcent une barrière en attendant que le traitement du serveur se termine avant l'exécution du script LDD.
-
Les mises à jour transitoires de clés primaires en double sont gérées de manière transparente par le processus Replicat intégré.
Conditions requises pour la réplication intégrée
Pour utiliser le processus Replicat intégré, les conditions suivantes doivent être remplies :
-
La journalisation supplémentaire doit être activée sur la base de données source pour prendre en charge le calcul des dépendances entre les tables et la planification des transactions simultanées sur la cible. Les instructions d'activation de la journalisation requise se trouvent dans Paramètres et conditions du journal des transactions. Cette journalisation peut être activée à tout moment, mais avant de démarrer les processus Oracle GoldenGate.
-
Le processus Replicat parallèle en mode intégré est pris en charge sur Oracle Database 12.2.0.1 et versions ultérieures.