Re: Index qui arrête d'

From: Stéphane Bunel <stephane(at)stratum-ip(dot)net>
To: Guillaume BARTHE <g(dot)barthe(at)newtech(dot)fr>
Cc: pgsql-fr-generale(at)postgresql(dot)org, c(dot)werra(at)newtech(dot)fr
Subject: Re: Index qui arrête d'
Date: 2005-03-22 16:43:48
Message-ID: 42404B44.7070104@stratum-ip.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Guillaume BARTHE a écrit :
> Bonjour à tous,
>
> voilà mon problème:
> version de postgresql 7-3-2
> VACUUM et VACUUM ANALYSE quotidient.
> Ce matin, la requête "SELECT" sur une de mes tables qui utilise un index
> BTREE sur un varchar , a décidé de ne plus utiliser cet index.
> Evidement, quand la requête passe de bien moins que 1 seconde à une
> trentaine de secondes sur une table supportant un gros calcul, ça a
> causé quelques surprises.
>
> Pour que l'index puisse à nouveau être utilisé, il a fallu faire un
> cluster sur l'index.
>
> La table bougeant beaucoup, on voudrait éviter la méthode :"faire des
> clusters périodiquement".

Pour PG7.3 il est recommandé de lancer un ANALYSE après un CLUSTER sans
quoi l'optimiseur peut faire de mauvais choix comme vous le décrivez.

En revanche contrairement à PG8 le périodique VACUUM ne relance pas une
opération de CLUSTER sur une table déjà ainsi traitée, il semble donc
nécessaire de le faire à la 'main' ou de constituer un script psql en
charge de faire l'entretient journalier (ou sur une autre période en
fonction de la durée de vie des données et de la taille des tables).

Stéphane.

In response to

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Stéphane Sochacki 2005-03-29 08:47:41 Développements coté serveur
Previous Message Guillaume BARTHE 2005-03-22 15:48:10 Index qui arrête d'être utilisé