2017-04-14 5 views
0

J'essaie de comprendre les ramifications de la réplication de base de données (SQL Server ou Golden Gate) pour les situations où la base de données source est complètement repeuplée toutes les nuits. Pour clarifier, toutes les tables existantes sont supprimées, puis la base de données est rechargée avec de nouvelles tables utilisant le même nom avec toutes les données. Selon ma compréhension, c'est-à-dire que la réplication utilise un journal des transactions ... Je suppose qu'il répétera également le processus de suppression des tables au lieu d'identifier les différences et d'ajouter simplement les nouvelles données. Est-ce exact?Réplication de base de données après chargement de données

Répondre

1

Vous pouvez configurer la réplication à l'aide d'OracleGoldenGate afin qu'elle effectue ce que vous voulez qu'elle fasse.

  • la commande TRUNCATE TABLE peut être reproduit ou il peut être ignoré
  • le peuplement de la table source (INSERT/opérations en vrac) peut être reproduit ou il peut être ignoré
  • si une ligne existe déjà (ce qui signifie une ligne avec la même PK existe) sur la cible et l'insérer sur la source que vous pouvez mettre à jour la cible ou supprimer l'ancienne et insérer le nouveau, ou l'ignorer

réplication de base de données est basée sur la refaire le journal (transaction). Seuls les événements particuliers qui apparaissent sur les bases de données sources qui sont consignées peuvent être répliqués. Mais l'ensemble du moteur de réplication peut effectuer des transformations supplémentaires lors de la réplication des modifications.