PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

BLOB partagés

Technique - général | BLOB partagés

Par gildas le 18/12/2007 - 19:01

Bonjour Ă  tous !

Je dispose de plusieurs bases de données PostGreSQL, une maître et plusieurs esclaves, et je réalise un moteur de réplication bidirectionnel. Tout se passe plutôt bien jusque maintenant.
Mon problème concerne les BLOB, que je dois aussi répliquer. Ma démarche est donc la suivante, afin que toutes les données soient cohérentes :

Insertion de la demande dans une base esclave.
Envoi de la demande d'insertion dans la base maître avec les données.
Insertion dans la base maître avec génération d'un OID.
Renvoi des données avec l'OID à toutes les bases esclaves.
Insertion des données dans les bases esclaves avec l'OID spécifié afin de garder une cohérence complète.

Ceci fonctionne dans la plupart des cas, mais pose un problème lorsque la base maître et une base esclave sont installées sur le même poste : dans ce cas, les données sont bien insérées deux fois, mais ont un OID différent puisque le moteur de base considère que l'OID spécifié existe déjà lors de l'insertion sur la base esclave.
J'ai donc pensé à accéder aux données depuis la base esclave, de cette manières il n'y aurait qu'un seul stockage, mais ceci est impossible. Ma question est donc : est-il possible d'insérer des données sur les deux bases avec un OID identique, ou bien d'accéder d'une manière ou d'une autre à un BLOB depuis deux bases de données différentes installées sur le même poste ?

Merci beaucoup !

© PostgreSQLFr, tous droits rĂ©servĂ©s.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.