Re: Duplication des données insérées dans un fichier

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-----

In response to

Responses

Browse pgsql-fr-generale by date

  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