Skip site navigation (1) Skip section navigation (2)

Re: [pgsql-fr-generale] Besoin de conseil et de bonnes idées

From: Stéphane Schildknecht <sas(at)atosc(dot)org>
To: Sébastien Dinot <sebastien(dot)dinot(at)free(dot)fr>
Cc: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: [pgsql-fr-generale] Besoin de conseil et de bonnes idées
Date: 2005-06-03 10:50:09
Message-ID: 42A035E1.8020609@atosc.org (view raw or flat)
Thread:
Lists: pgsql-fr-generale
Sébastien Dinot wrote:

>Bonjour à tous,
>
>J'ai un problème sérieux et troublant de performance lors de
>l'intégration massive de données en base (6 millions de lignes),
>bien mis en évidence par le graphique suivant :
>
>http://sebastien.dinot.free.fr/tmp/integration.png
>
>- L'abscisse indique le nombre cumulé d'enregistrements traités.
>- L'ordonnée, le temps en secondes pour intégrer les 10000 dernières
>  lignes.
>
>Les données _brutes_ sont stockées dans un fichier CSV. Elles ne sont
>pas directement intégrables en base à grand coup d'INSERT ou de COPY
>car elles requièrent un filtrage, une mise en forme, divers contrôles
>de validité et doivent vérifier plusieurs contraintes d'intégrité.
>
>Ces données sont donc traitées par un script Perl qui effectue
>grossièrement les mêmes traitements pour chaque ligne et enregistre
>selon leur nature les données dans une table parmi trois possibles.
>
>Au niveau SQL, ces traitements impliquent entre un et trois SELECT,
>puis un INSERT. L'une des trois tables contient des clés étrangères
>vers quatre autres tables mais celles-ci sont de taille réduites et
>surtout, ne sont pas modifiées durant l'intégration.
>
>Je pense que le comportement de PostgreSQL au delà du premier million
>d'enregistrements montre que mes tables sont correctement indexées
>mais je ne m'explique pas les résultats catastrophiques constatés lors
>de l'intégration du premier million.
>
>Je soupçonne une défaillance de l'optimiseur qui ferait de mauvais
>choix lorsqu'il y a peu de données en base.
>
>Qu'en pensez-vous ? Que vous inspire ce graphique ? Avez-vous déjà
>connu de tels déboires ? De quel côté jetteriez-vous un oeil ?
>
>Pour info, j'utilise un serveur PostgreSQL 7.4.7 sous Debian GNU/Linux
>3.1 testing.
>
>Sébastien
>
>  
>
Salut Sébastien,

Après discussion avec BCH, nous souhaiterions voir les résultats que tu 
obtiens dans les mêmes situations de tests, mais SANS l'exécution de la 
clause INSERT.

Ceci afin de valider ou infirmer une première hypothèse.

Amitiés et meilleurs souvenirs de BCH.

Amicalement

Stéphane Schildknecht


In response to

Responses

  • Re: Be at 2005-06-03 12:35:12 from Sébastien Dinot
  • Re: Re at 2005-06-03 12:44:57 from Sébastien Dinot

pgsql-fr-generale by date

Next:From: Sébastien DinotDate: 2005-06-03 12:35:12
Subject: Re: Be
Previous:From: Geoffroy GRANDDate: 2005-06-03 10:33:55
Subject: Re: pbl de connection entre PHP et Postgre 7.4.7

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group