Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

ORACLE : duplication bi-directionnelle

1 réponse
Avatar
ici eat là
Bonjour,

Voici mon probleme : dans le cadre d'un datawarhouse j'ai 2 bases B1 et B2
qui sont identique au début.
En journée les utilisateur utilise la base B1 pour faire leur requetage.
Puis disons a midi un traitement d'alimentation met à jour la base B2, ce
traitement dure disont 5 heures.
Et a minuit, je "permute les connexion" (via action au niveau du listener) ,
pour que les utilisateurs se connectent sur la base B2.

Et là je souhaite raffraichir B1 par cette base B2.

Et le lendemain je fais la même action mais cette fois c'est B1 qui sera
alimenté et B2 qui sert pour le requetage.
Le but etant d'avoir une base pour le requetage quaisment dispo 24h/24
(juste au moment de la permutation de la connexion il y a une faible
interruption de service).


Ma question est quelle est la meilleure méthode pour raffraichir un jour B1
par B2 et le jour suivant B2 par B1 ...

Je vois differentes solutions :
1 - Par RMAN où je sauvegarde B1 et je le restaure à la volée sur B2 (et le
lendemain l'inverse)
2 - Par dataguard (avec un jour B1 maitre, B2 esclave et le lendemain
l'inverse)
3 - Par Oracle Streams

La solution 1 me semble plus facile à mettre en oeuvre surtout que RMAN sera
deja utilisé pour les sauvegardes, par contre ca genere beaucoup d'IO disque
puisque toute la base est recopié à chaque fois (500Go)

La solution 2 et la solution 3 sont un peu plus complexe a mon sens (jamais
utilisé), et j'ai peur que des cas particulier soit a gerer (par exemple si
sur une base je cree un nouveau datafile il faudra creer un cas particulier
pour ne pas repliquer betement cette instruction car les 2 bases sont sur le
meme serveur, et donc il faut au moment de dupliquer le datafile modifier "a
la volée" le repertoire d'accueil ).


Quels sont pour vous vos preconisations?

Merci

1 réponse

Avatar
Chris
Bonjour,

Je réponds juste pour émettre un avis car en fait je n'ai pas
l'expérience de ce genre de pratique.

Pourquoi ne pas utiliser les possibilites de flash copy intégrés dans
certaines baie de disques voire même certain systeme fichiers (si je me
trompe pas)

comme si tu dupliquais ta base a chaque fois...

A+
chris

ici eat là a écrit :
Bonjour,

Voici mon probleme : dans le cadre d'un datawarhouse j'ai 2 bases B1 et B2
qui sont identique au début.
En journée les utilisateur utilise la base B1 pour faire leur requetage.
Puis disons a midi un traitement d'alimentation met à jour la base B2, ce
traitement dure disont 5 heures.
Et a minuit, je "permute les connexion" (via action au niveau du listener) ,
pour que les utilisateurs se connectent sur la base B2.

Et là je souhaite raffraichir B1 par cette base B2.

Et le lendemain je fais la même action mais cette fois c'est B1 qui sera
alimenté et B2 qui sert pour le requetage.
Le but etant d'avoir une base pour le requetage quaisment dispo 24h/24
(juste au moment de la permutation de la connexion il y a une faible
interruption de service).


Ma question est quelle est la meilleure méthode pour raffraichir un jour B1
par B2 et le jour suivant B2 par B1 ...

Je vois differentes solutions :
1 - Par RMAN où je sauvegarde B1 et je le restaure à la volée sur B2 (et le
lendemain l'inverse)
2 - Par dataguard (avec un jour B1 maitre, B2 esclave et le lendemain
l'inverse)
3 - Par Oracle Streams

La solution 1 me semble plus facile à mettre en oeuvre surtout que RMAN sera
deja utilisé pour les sauvegardes, par contre ca genere beaucoup d'IO disque
puisque toute la base est recopié à chaque fois (500Go)

La solution 2 et la solution 3 sont un peu plus complexe a mon sens (jamais
utilisé), et j'ai peur que des cas particulier soit a gerer (par exemple si
sur une base je cree un nouveau datafile il faudra creer un cas particulier
pour ne pas repliquer betement cette instruction car les 2 bases sont sur le
meme serveur, et donc il faut au moment de dupliquer le datafile modifier "a
la volée" le repertoire d'accueil ).


Quels sont pour vous vos preconisations?

Merci