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

#1 19/01/2018 14:30:27

TCHOUFANE
Membre

Liste des Index non utilisés

bonjour

Je suis DBA (Expert Z/OS DB2) mais novice sur Postgesql.

j'ai besoin de connaitre la lise des Index pas du tout utilisé par Postgres pour une database. D'apres mes recherches je devrais pouvoir me débrouiller avec les vues pg_stat_user_indexes et pg_statia_user_indexes. Dans la Pq_stat_user_index il existe 3 colonnes idx_scan, ids_tup_read et idx_tup_fetch. Je me suis dis que si 3 trois colonnes étaient à Zero cela voulait dire que l'index n'était pas utilisé. Mais en consultant la pg_statio_user_indexes pour cette index, les colonnes idx_blks_read et idx_blks_hit ne sont pas à zero.

Quelqu'un peut il me dire comment procéder pour trouver les index non utilisés.

Par avance Merci. 

Thierry

Hors ligne

#2 19/01/2018 15:30:19

gleu
Administrateur

Re : Liste des Index non utilisés

Il y a de fortes chances que idx_blks_read et ix_blks_hit ne soient jamais à zéro parce que, même s'ils ne sont jamais utilisés pour accélérer une recherche, ils doivent être mis à jour lors des écritures dans la table. Généralement, on ne remarque que idx_scan. Si idx_scan vaut 0, c'est que l'index n'a pas été utilisé pour un parcours. Attention qu'il peut s'agit d'un index pour une clé primaire ou une contrainte unique, auquel cas il ne sera pas possible de supprimer l'index.


Guillaume.

Hors ligne

#3 19/01/2018 15:43:15

TCHOUFANE
Membre

Re : Liste des Index non utilisés

Merci Guillaume pour ta réponse qui va dans le sens de ce que j'avais compris.
Cependant une nouvelle petite question par rapport à ton commentaire dans le cas d'une clé pour une contrainte unique. Lors d'un INSERT pour le controle de l'intégrité il y a bien utilisation de l'Index donc la la colonne IDX_SCAN est surement mise à jour. Non ?

Hors ligne

#4 19/01/2018 15:54:01

abdallah007
Membre

Re : Liste des Index non utilisés

bonjour

une autre Question SVP

Est ce que ces statistiques d’utilisation des indexes sont initialisées a chaque redémarrage du serveur ?

Hors ligne

#5 19/01/2018 23:33:51

gleu
Administrateur

Re : Liste des Index non utilisés

Lors d'un INSERT pour le controle de l'intégrité il y a bien utilisation de l'Index donc la la colonne IDX_SCAN est surement mise à jour. Non ?

Non, elle n'est incrémentée que quand le planificateur a décidé de son utilisation pour accélérer un prédicat.

Est ce que ces statistiques d’utilisation des indexes sont initialisées a chaque redémarrage du serveur ?

Non, uniquement à la demande de l'utilisateur. Les anciennes versions avaient un paramètre permettant de demander la réinitialisation des stats au démarrage mais il était désactivé par défaut et a été au final supprimé.


Guillaume.

Hors ligne

Pied de page des forums