41.36. pg_stats

La vue pg_stats fournit un accès aux informations stockées dans la table système pg_statistic. Cette vue autorise un accès aux seules lignes de pg_statistic correspondant aux tables pour lequel l'utilisateur a un droit de lecture et, donc, aucun problème de sécurité n'empêche l'accès en lecture de cette vue au public.

pg_stats est aussi conçu pour afficher l'information dans un format plus lisible que le catalogue sous-jacent, au prix d'un schéma qui doit être étendu lorsque de nouveaux types sont définis dans pg_statistic.

Tableau 41-36. Colonnes de pg_stats

NomTypeRéférencesDescription
schemanamenamepg_namespace.nspnamenom du schéma contenant la table
tablenamenamepg_class.relnamenom de la table
attnamenamepg_attribute.attnamenom de la colonne décrite par cette ligne
null_fracreal fraction d'entrées de colonnes qui sont NULL
avg_widthinteger largeur moyenne en octets des entrées de la colonne
n_distinctreal Si plus grand que zéro, le nombre estimé de valeurs distinctes dans la colonne. Si négatif, le nombre de valeurs distinctes divisé par le nombre de lignes, le tout muliplié par -1. (La forme négative est utilisée quand ANALYZE croit que le nombre de valeurs distinctes a tendance à grossir au fur et à mesure que la table grossit ; la forme positive est utilisé lorsque la commande semble avoir un nombre fixe de valeurs possibles.) Par exemple, -1 indique une colonne unique pour laquelle le nombre de valeurs distinctes est identique aux nombres de lignes.
most_common_valsanyarray Une liste des valeurs habituelles dans cette colonne. (NULL si aucune valeur ne semble identique aux autres.)
most_common_freqsreal[] Une liste des fréquences des valeurs les plus habituelles, c'est-à-dire le nombre d'occurrences de chacune divisé par le nombre total de lignes. (NULL lorsque most_common_vals l'est.)
histogram_boundsanyarray Une liste des valeurs qui divisent les valeurs de la colonne en groupes de population approximativement identique. Les valeurs dans most_common_vals, s'ils existent, sont omises de ce calcul d'histogramme. (Cette colonne est NULL si le type de données de la colonne ne dispose pas de l'opérateur < ou si la liste most_common_vals tient compte de la population complète.)
correlationreal Corrélation statistique entre l'ordre physique des lignes et l'ordre logique des valeurs de la colonne. Ceci va de -1 à +1. Lorsque la valeur est plus près de -1 ou +1, un parcours de l'index sur la colonne sera estimé moins cher que si cette valeur tend vers zéro, à cause de la réduction d'accès aléatoire au disque. (Cette colonne est NULL si le type de données de la colonne n'a pas l'opérateur < operator.)

Le nombre maximum d'entrées dans most_common_vals et histogram_bounds est configurable colonne par colonne en utilisant la commande ALTER TABLE SET STATISTICS ou globalement avec le paramètre d'exécution default_statistics_target.