52.29. pg_stats_ext_exprs#

52.29. pg_stats_ext_exprs

52.29. pg_stats_ext_exprs

Представление pg_stats_ext_exprs предоставляет доступ к информации о всех выражениях, включенных в объекты расширенной статистики, объединяя информацию, хранящуюся в каталогах pg_statistic_ext и pg_statistic_ext_data. Это представление позволяет получить доступ только к строкам каталогов pg_statistic_ext и pg_statistic_ext_data, которые соответствуют таблицам, для чтения которых у пользователя есть разрешение, и поэтому безопасно разрешить общий доступ для чтения к этому представлению.

pg_stats_ext_exprs также предназначена для представления информации в более читаемом формате, чем базовые каталоги — за счет того, что ее схема должна быть расширена при изменении структуры статистики в pg_statistic_ext.

Таблица 52.29. pg_stats_ext_exprs Columns

Тип столбца

Описание

schemaname name (ссылается на pg_namespace.nspname)

Имя схемы, содержащей таблицу

tablename name (ссылается на pg_class.relname)

Имя таблицы, на которой определен объект статистики

statistics_schemaname name (ссылается на pg_namespace.nspname)

Имя схемы, содержащей объект расширенной статистики

statistics_name name (ссылается на pg_statistic_ext.stxname)

Имя объекта расширенной статистики

statistics_owner name (ссылается на pg_authid.rolname)

Владелец объекта расширенной статистики

expr text

Выражение, включенное в объект расширенной статистики

inherited bool (ссылается на pg_statistic_ext_data.stxdinherit)

Если значение true, статистика включает значения из дочерних таблиц, а не только значения из указанного отношения

null_frac float4

Доля записей выражения, которые являются нулевыми

avg_width int4

Средняя ширина в байтах записей выражения

n_distinct float4

Если значение больше нуля, это означает приблизительное количество уникальных значений в выражении. Если значение меньше нуля, то это отрицательное значение количества уникальных значений, деленное на количество строк. (Отрицательная форма используется, когда ANALYZE считает, что количество уникальных значений будет увеличиваться по мере роста таблицы; положительная форма используется, когда выражение имеет фиксированное количество возможных значений). Например, -1 указывает на уникальное выражение, в котором количество уникальных значений совпадает с количеством строк.

most_common_vals anyarray

Список наиболее распространенных значений в выражении. (Null, если не выделяется ни одно значение, которое было бы более распространенным, чем другие).

most_common_freqs float4[]

Список частот наиболее распространенных значений, т.е. количество вхождений каждого значения, деленное на общее количество строк. (Null, когда most_common_vals есть).

histogram_bounds anyarray

Список значений, которые разделяют значения выражения на группы с примерно равным количеством. Значения в most_common_vals, если они присутствуют, исключаются из расчета этой гистограммы. (Это выражение является нулевым, если тип данных выражения не имеет оператора < или если список most_common_vals учитывает всю выборку).

correlation float4

Статистическая корреляция между физическим порядком строк и логическим порядком значений выражения. Это значение варьируется от -1 до +1. Когда значение близко к -1 или +1, оценивается, что сканирование индекса по выражению будет дешевле, чем когда оно близко к нулю, из-за сокращения случайного доступа к диску. (Это выражение равно null, если у типа данных выражения нет оператора <).

most_common_elems anyarray

Список ненулевых значений элементов, наиболее часто встречающихся в значениях выражения. (Null для скалярных типов).

most_common_elem_freqs float4[]

Список частот наиболее распространенных значений элементов, то есть доля строк, содержащих хотя бы один экземпляр данного значения. Два или три дополнительных значения следуют за частотами для каждого элемента; это минимальное и максимальное значение предыдущих частот для каждого элемента и, при необходимости, частота нулевых элементов. (Null, когда most_common_elems есть).

elem_count_histogram float4[]

Гистограмма количества уникальных ненулевых значений элементов в значениях выражения, за которой следует среднее количество уникальных ненулевых элементов. (Null для скалярных типов).


Максимальное количество записей в массивных полях можно контролировать на уровне каждого столбца с помощью команды ALTER TABLE SET STATISTICS или глобально, установив параметр времени выполнения default_statistics_target.