A propos de la réplication classique ou non intégrée
En mode classique, le processus Replicat est un processus monothread qui utilise le langage SQL standard pour appliquer des données aux tables cible. 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.
-
Crée des instructions SQL qui représentent les transactions LMD ou LDD de la base de données source (dans l'ordre de validation).
-
Applique le code SQL à la cible via l'interface SQL prise en charge pour la base de données cible donnée, telle que ODBC ou l'interface de base de données native.
Comme indiqué dans la figure ci-dessus, vous pouvez appliquer des transactions en parallèle avec une réplication classique, mais uniquement en partitionnant la charge globale entre plusieurs processus Replicat. Un fichier de paramètres doit être créé pour chaque réplication.
Pour déterminer s'il faut utiliser le mode classique pour un objet, vous devez déterminer si les objets d'un groupe Replicat auront des dépendances sur les objets d'un autre groupe Replicat, transactionnel ou autre. Toutes les charges globales ne peuvent pas être partitionnées entre plusieurs groupes de réplication et conservent l'atomicité de la transaction d'origine. Par exemple, les tables pour lesquelles la charge globale met régulièrement à jour la clé primaire ne peuvent pas être partitionnées facilement de cette manière. La réplication LDD (si elle est prise en charge pour la base de données) n'est pas viable dans ce mode, ni l'utilisation de certaines fonctionnalités SQLEXEC ou EVENTACTIONS qui basent leurs actions sur un enregistrement spécifique.
Si vos tables n'ont pas de dépendance de clé étrangère ou de mise à jour des clés primaires, le mode classique peut convenir. Le mode classique nécessite moins de temps système que le mode coordonné.