Vous n'êtes pas identifié(e).

#1 Re : Général » Update de tables Oracle vers PostgreSQL » 08/06/2011 08:50:38

Bonjour tout le monde !

Merci Marc, Flo et Vincent pour vos réponses.
Je vous ferai un retour suite au choix que nous aurons fait.

> à Vincent : Oui, oui, tu ne te trompes pas smile. Mais ce n'est pas le même contexte de déploiement (autres OS/serveur/données).

#2 Re : Général » Update de tables Oracle vers PostgreSQL » 07/06/2011 17:09:52

Le fait que ce soit des données géographiques ne m'inquiète pas plus que cela, je ne pense pas que cela change grand chose par rapport à des données tabulaires si ce n'est un champ supplémentaire smile

Concernant le fonctionnement des triggers et le stockage dans une table de log, c'est plus clair pour moi.

J'avais un doute sur la compatibilité d'un fichier exporté d'Oracle et ré-injecté dans PostgreSQL, vous confirmez mes craintes.

Je vais regarder de plus près ogr2ogr ainsi que l'utilisation d'un ETL. Vous parliez d'ailleurs d'ETL propriétaire dans un précédent message, pour info l'ETL propriétaire de référence est FME distribué par Safe Software (qui a l'avantage de manipuler des quantités de formats géographiques ainsi que de réaliser des requêtes spatiales).

#3 Re : Général » Update de tables Oracle vers PostgreSQL » 07/06/2011 16:27:07

Merci pour ces informations.
J'avance toujours dans ma réflexion ainsi que mes recherches, ce qui provoque de nouveaux questionnements !

Marc Cousin a écrit :

Je ne pense pas, toujours pour les triggers, que ça soit une bonne idée que vos triggers eux-même s'occupent de la recopie des données. Laissez-les simplement stocker les modifications (par exemple, par clé primaire, les ajouts/suppressions/modifications), puis faites la recopie de façon asynchrone. Je ne pense pas que vous voulez qu'une erreur de recopie des données vers PostgreSQL ait un impact sur la base Oracle.

Pourriez-vous détailler un peu plus cette étape Marc ? notamment la manière dont sont stockées les modifications, et comment vous voyez la réalisation de la recopie de façon asynchrone.


Marc Cousin a écrit :

Je ne sais pas du tout s'il est facile de recopier des données d'Oracle vers PG dans du code PL, que ça soit côté Oracle ou PG d'ailleurs.

Est-ce que quelqu'un d'autre à un avis ou pourrait nous faire un retour d'expérience sur cette solution ?
J'avais également pensé à un export des tables Oracle sous la forme d'un dump ou d'un fichier sql. Puis d'un import de ce fichier dans Postgres. Or je ne sais pas s'il est possible de mettre en œuvre ce type de processus et par quel moyen.

Merci d'avance.

Magalie

#4 Re : Général » Update de tables Oracle vers PostgreSQL » 06/06/2011 16:29:59

Bonjour Marc et merci pour votre réponse !

J'avais aussi pensé à l'utilisation d'un ETL pour réaliser ces mises à jour de manière "automatisée". L'ETL propriétaire de référence est FME (de Safe Software) et permet de gérer (quasiment) tous les formats géographiques.

Concernant Ora2PG, il ne serait pas possible de l'utiliser derrière une tâche planifiée (côté Windows) qui permettrai de lancer des mises à jour régulières de la BD Postgres sur Linux ?

Lorsque vous parlez de "développer nous-même totalement la solution", vous dites que ce type de développements n'utilise pas obligatoirement des triggers, à quoi pensez-vous d'autre exactement ?
Concernant les triggers, est-il possible de les mettre en place entre Oracle et PostgreSQL ? Et si oui, de quel côté faut-il les déployer ?

Je m'interroge beaucoup sur la question de la communication entre ces 2 plateformes complètement différentes et plus précisément sur la compatibilité des solutions évoquées.

Je suis preneuse de toute ressource (en anglais également) sur ce sujet.

#5 Général » Update de tables Oracle vers PostgreSQL » 06/06/2011 15:53:46

Magalie
Réponses : 15

Bonjour à tous,

Je cherche des informations sur les solutions permettant de mettre à jour les données issues d'une BD Oracle en production dans une BD PostgreSQL de consultation. J'ai trouvé plusieurs pistes (ORA2PG, trigger, connexion ODBC, ...) en effectuant des recherches sur ce forum ou sur d'autres sources d'info sur le net. Cependant cela ne me permet pas d'avoir une vision claire des solutions techniques envisageables et surtout si elles sont réalisables dans ce contexte (communication entre 2 SGBD sur OS différents).

Le contexte est le suivant :
- nous disposons d'une BD Oracle spatiale sur serveur Windows utilisée en production,
- nous souhaitons que les données de certaines tables (une dizaine pour l'instant, mais susceptible d'augmenter considérablement) soient copiées de cette BD de production vers une autre base de consultation PostgreSQL/PostGIS située sur un serveur Linux (distribution Debian),
- les données dans ces deux BD ne sont pas structurées à l'identique (champs enlevés, concaténés, ...),
- la gestion des droits (utilisateurs/rôles) n'est également pas la même,
- des mises à jour hebdomadaires, voire journalières, permettront d'ajouter/modifier/supprimer de nouveaux enregistrements dans les tables, il faut donc pouvoir automatiser cette mise à jour.

Merci d'avance pour votre retour d'expérience !
Magalie.

PS : Pour info, je ne suis pas DBA.

Pied de page des forums

Propulsé par FluxBB