Vous n'êtes pas identifié(e).

#1 16/09/2009 10:00:44

Erjo
Membre

Interprétation des pg_stats_*_indexes

Bonjour,
J'essaye de vérifier, via les stats, l'efficacités des indexes qui ont été créés sur des tables.
D'après ce que je comprends:

idx_scan = nombre de fois où l'indexe à été lu.
idx_tup_read = nombre de lignes lues
idx_tup_fetch = nombre ligne récupérée.

- Je ne voies pas trop la différence entre fetch et read, où dans quel cas les valeurs pourraient être différentes.
- Je me qu'un idx_scan faible  ou égal à 0 ne sert pas à grand et peut/doit être supprimé.

Par contre je ne sais pas trop comment interprété ce genre de valeurs

idx_scan = 38263
idx_tup_read =     173626246     
idx_tup_fetch = 173626246

En claire est-ce que cela veut dire que l'indexe est éfficace ?

+Eric.

Hors ligne

#2 16/09/2009 11:56:36

Marc Cousin
Membre

Re : Interprétation des pg_stats_*_indexes

fetch c'est quand la donnée a été lue (mémoire ou disque), read quand postgres est allée la chercher sur disque (ou dans le cache du système d'exploitation, il n'a pas moyen de faire la différence)

Pour ce qui est de l'efficacité de l'index, il faut le rapporter a tup_fetch de la pg_stats_*_tables (le nombre d'enregistrements lus de la table, via index ou full scan)

Les valeurs montrent que cet index n'est jamais en cache et qu'en moyenne les requêtes récupèrent 4500 enregistrements par parcours sur cet index


Marc.

Hors ligne

#3 16/09/2009 20:43:19

gleu
Administrateur

Re : Interprétation des pg_stats_*_indexes

Petite info supplémentaire, si idx_scan est à 0, cela ne veut pas forcément dire qu'il n'est pas utilisé. Les clés primaires et les contraintes Uniques se font via des index, et les index de ces contraintes sont obligatoires.


Guillaume.

Hors ligne

#4 18/09/2009 09:29:09

Erjo
Membre

Re : Interprétation des pg_stats_*_indexes

Bonjour,

gleu: Merci pour la précision.

+Erjo

Hors ligne

Pied de page des forums