GROUPES
Durée de validité
Réplication
Description
Utilisez le paramètre GROUPTRANSOPS pour contrôler le nombre d'opérations SQL contenues dans une transaction de réplication lorsqu'elle fonctionne en mode normal. Pour utiliser GROUPTRANSOPS avec BATCHSQL, reportez-vous au paramètre BATCHSQL, qui comporte des options supplémentaires permettant de modifier la façon dont les transactions sont appliquées à la base de données cible, ce qui peut améliorer les performances du processus Replicat.
L'augmentation du nombre d'opérations <number> dans une transaction de réplication améliore les performances d'Oracle GoldenGate en :
-
Réduire le nombre de transactions exécutées par Replicat.
-
Réduire l'activité d'E/S dans le fichier de points de reprise et la table de points de reprise, le cas échéant. Le processus Replicat émet un point de reprise chaque fois qu'il applique une transaction à la cible, en plus de ses points de reprise programmés.
Le processus Replicat cumule les opérations des transactions source, dans l'ordre des transactions, et les applique en tant que groupe au sein d'une transaction sur la cible. GROUPTRANSOPS définit une valeur minimale plutôt qu'une valeur absolue, afin d'éviter le fractionnement des transactions source. Le processus Replicat attend de recevoir toutes les opérations de la dernière transaction source du groupe avant d'appliquer la transaction cible.
Par exemple, si la transaction 1 contient 200 opérations et que la transaction 2 en contient 400 et que la transaction 3 en contient 500, la transaction Replicat contient les 1 100 opérations, même si GROUPTRANSOPS est défini sur la valeur par défaut 1 000. Inversement, le processus Replicat peut appliquer une transaction avant d'atteindre la valeur définie par GROUPTRANSOPS s'il n'y a plus de données dans la trace à traiter.
Tableau 10 Replicat GROUPTRANSOPS
| Transactions source (avec la même table et la même liste de colonnes) | Transaction de réplication en mode normal (GROUPTRANSOPS) |
|---|---|
Transaction 1: `INSERTION` `SUPPRIMER` Transaction 2: `INSERTION` `SUPPRIMER` Transaction 3: `INSERTION` `SUPPRIMER` |
Transaction : `INSERTION` `SUPPRIMER` `INSERTION` `SUPPRIMER` `INSERTION` `SUPPRIMER` |
Evitez de définir GROUPTRANSOPS sur un nombre arbitrairement élevé car la différence entre les limites de transaction source et cible peut augmenter la latence des données cible.
(Oracle uniquement) Pour une réplication intégrée, GROUPTRANSOPS prend effet uniquement lorsque le paramètre de réplication intégrée PARALLELISM est défini sur 1.
Valeur par défaut
Replicat non intégré : 1000 opérations, Replicat intégré : 50 opérations
Syntaxe
GROUPTRANSOPS <number>
<number>
Nombre minimal d'opérations à appliquer dans une transaction de réplication. La valeur 1 exécute les opérations dans les mêmes limites de transaction que la transaction source. La valeur doit être au moins égale à 1.
Exemple
GROUPTRANSOPS 2000