Bonjour,
Peux -t- on répliquer une partie A d'une base oracle (contenant des données de type A et des données de type B) avec la méthode "STERAMS" (seule une table ne permet pas de distinguer les données de type A de celles de type B).
Merci.
Bonjour,
Peux -t- on répliquer une partie A d'une base oracle (contenant des données de type A et des données de type B) avec la méthode "STERAMS" (seule une table ne permet pas de distinguer les données de type A de celles de type B).
Merci.
Streams permet de rejouer les ordres DDL et DML de ta base à condition d'être en archive log et d'avoir ajouté les ordres de supplemental logging pour le logminer, c'est assez couteux.
Mais je ne comprends pas très bien ton besoin, il faudrait que tu le précises de manière un peu plus détaillé (on peut répliquer certaines tables d'une base A vers une base B, et même en ajoutant des règles dans STREAMS, certaines données de ces tables).
Bonjour,
merci pour la réponse.
Le besoin est de répliquer une partie des tables comme vous l'avez souligné (c'est possible).
Ensuite, pour une table donnée, répliquer une partie des données (est ce possible si la table ne possède pas de clé permettant de localiser les données à répliquer).
Autre chose, vous dites que c'est assez couteux (comparé à DATA GUARD ou ADVANCED REPLICATION) laquelle est plus intéressante.
Merci.
ça ne va pas faire la même chose, Dataguard est fait pour faire une réplique totale de la base (il y a quelques nuances avec la standby logique mais je te la conseillerais pas). Advanced réplication te permettra de filtrer les données que tu veux répliquer.
Si ta réplication est dans le sens maitre-esclave, alors je te conseille d'utiliser la technique des vues matérialisées distantes, c'est une bonne vielle méthode qui a fait ses preuves. Le principe est le suivant:
- création de journeaux de vue matérialisée sur chaque table maitre de la base maître contenant la clef primaire, ainsi qu'éventuellement les colonnes sur lesquelles tu compte faire des jointures ou des filtrages lors de la réplication des données. Ces journaux permettront de faire un rafraichissement différentiel (et non complet).
- création de vues matérialisées sur la base esclave avec des requêtes utilisant le db_link et pouvant éventuellement avoir une clause where.
- Si on veux qu'oracle garde la consistance des données meme pendant la phase de rafraichissement, alors il faut créer un groupe de réplication.
Tout ce système est encapsulé dans l'Advanced Replication qui n'est qu'une sur-couche. Personnellement je m'en passe volontier.
Advanced réplication:
http://download-uk.oracle.com/docs/c...a96567/toc.htm
Sans l'advanced réplication:
journeaux:
http://download-uk.oracle.com/docs/c...4a.htm#2064651
vues matérialisées:
http://download-uk.oracle.com/docs/c...3a.htm#2063795
Groupes de rafraichissement de vues matérialisées:
http://download-uk.oracle.com/docs/c...efre.htm#93762
à mon avis le plus simple dans ton cas est d'uliliser les vues matérialisées.
Avec l'utilisation d'un database link pour te connecter sur la base source...
Les vues matérialisée puvent se rafraîchir automatiquement selon l'ordre de création que tu entreras.
Philippe
Partager