pg_statistic_ext
Le catalogue pg_statistic_ext
contient des
définitions des statistiques étendues pour l'optimiseur de requêtes. Chaque ligne de ce
catalogue correspond à un objet statistique créé
avec CREATE STATISTICS.
Tout comme pg_statistic
,
pg_statistic_ext_data
ne doit
pas être lisible par tout le monde car son contenu peut être considéré
comme sensible. (Par exemple, les combinaisons de valeurs les plus communes
des colonnes pourraient être intéressantes.) pg_stats_ext
est une vue, lisible par tout le monde, interrogeant
pg_statistic_ext_data
(après une jointure sur
pg_statistic_ext
) en exposant uniquement les
informations sur les tables et colonnes visibles par l'utilisateur courant.
Tableau 51.51. Colonnes de pg_statistic_ext
Nom | Type | Référence | Description |
---|---|---|---|
stxrelid | oid |
| Table contenant les colonnes décrites par cet objet |
stxname | name | Nom de l'objet statistique | |
stxnamespace | oid |
| OID du schéma contenant l'objet statistique |
stxowner | oid |
| Propriétaire de l'objet statistique |
stxkeys | int2vector |
|
Un tableau de numéros de colonnes, indiquant les colonnes de la table couvertes par l'objet statistique ;
par exemple, une valeur 1 3 signifierait que les première et troisième colonnes de
la table sont couvertes
|
stxkind | char[] |
Un tableau contenant des codes pour les types statistiques
activés ; les valeurs valides sont :
d pour des statistiques n-distinct,
f pour des statistiques de dépendance fonctionnelle
et m pour des statistiques sur les valeurs les plus
communes (most common values ou
MCV).
|
Un enregistrement de pg_statistic_ext
est rempli
complètement lors du CREATE STATISTICS
, mais les
vraies valeurs statistiques ne sont pas calculées à ce moment-là.
Les commandes ANALYZE
ultérieures calculent les
valeurs souhaitées et peuplent l'enregistrement dans pg_statistic_ext_data
.