From: | Dimitri Fontaine <dfontaine(at)hi-media(dot)com> |
---|---|
To: | Sébastien Dinot <sebastien(dot)dinot(at)free(dot)fr> |
Cc: | pgsql-fr-generale(at)postgresql(dot)org |
Subject: | Re: Duplication des données insérées dans un fichier |
Date: | 2008-11-11 10:34:31 |
Message-ID: | 3DAF5463-B2C0-4427-A05A-AACD08B804B0@hi-media.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-fr-generale |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Bonjour Sébastien :)
Le 11 nov. 08 à 00:05, Sébastien Dinot a écrit :
[...]
> Mon collègue m'a donc demandé comment mettre le plus rapidement
> possible
> les données insérées en base à disposition de ces applications.
>
> Faute de mieux, je lui ai dit que la solution passait peut-être par un
> trigger sur insertion invoquant la commande « COPY TO », un truc du
> genre :
[...]
> - Qu'est-ce qui ne va pas dans mon code ? J'ai cherché mais je ne
> trouve
> pas. )c:
Je laisse à d'autres le soin de répondre à cette partie là.
> - Pensez-vous que cette solution soit implantable et viable ?
Non.
Si par exemple ton système de fichiers où tu entreposes les CSV est
plein, le trigger échoue et la transaction subit un rollback. Je pense
qu'il te faut un traitement asynchrone.
> - Sinon, que feriez-vous ?
J'utiliserais PGQ afin de nourrir une file d'attente d'évènements à
mettre à disposition et un petit démon qui consomme la file d'attente
pour créer les CSV, ou bien utiliser un webservice ou ce qu'on veut,
ensuite.
Le service qui consomme les évènements est à écrire en python ou en
php si tu veux tirer parti d'infrastructures existantes, mais du
moment que tu peux faire du SQL tu peux utiliser PGQ. Il te faudra
peut être simplement gérer toi-même les boucles de récupération des
batches et évènements, mais c'est assez simple.
Quelques références :
http://skytools.projects.postgresql.org/doc/pgq-sql.html
http://pgsql.tapoueh.org/pgq/pgq-php/
http://wiki.postgresql.org/wiki/Image:Prato_2008_pgq_batches.pdf
Si tu veux jouer avec PGQ mais manque d'information, n'hésite pas à me
solliciter :)
- --
dim
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Darwin)
iEYEARECAAYFAkkZX7cACgkQlBXRlnbh1bmliwCg0cQipS5jxdAV7kOxLcVO3nlW
JkIAmgMzEWuc6wWl9nflUNCbySiu7JKx
=UDCc
-----END PGP SIGNATURE-----
From | Date | Subject | |
---|---|---|---|
Next Message | Marc Cousin | 2008-11-11 10:45:41 | Re: Duplication des données insérées dans un fichier |
Previous Message | Sébastien Dinot | 2008-11-10 23:05:30 | Duplication des données insérées dans un fichier |