Документация по PostgreSQL 9.4.1 | |||
---|---|---|---|
Пред. | Уровень выше | Приложение E. Дополнительно поставляемые модули | След. |
E.30. pgstattuple
Модуль pgstattuple предоставляет различные функции для получения статистики на уровне кортежей.
E.30.1. Функции
pgstattuple(regclass) returns record
Функция
pgstattuple
возвращает физическую длину отношения, процент "мёртвых" кортежей и другую информацию. Она может быть полезна для принятия решения о необходимости очистки. В аргументе передаётся имя (возможно, дополненное схемой) или OID целевого отношения. Например:test=> SELECT * FROM pgstattuple('pg_catalog.pg_proc'); -[ RECORD 1 ]------+------- table_len | 458752 tuple_count | 1470 tuple_len | 438896 tuple_percent | 95.67 dead_tuple_count | 11 dead_tuple_len | 3157 dead_tuple_percent | 0.69 free_space | 8932 free_percent | 1.95
Колонки результата описаны в Таблице E-21.
Таблица E-21. Колонки результата
pgstattuple
Колонка Тип Описание table_len bigint Физическая длина отношения в байтах tuple_count bigint Количество «живых» кортежей tuple_len bigint Общая длина «живых» кортежей в байтах tuple_percent float8 Процент «живых» кортежей dead_tuple_count bigint Количество «мёртвых» кортежей dead_tuple_len bigint Общая длина «мёртвых» кортежей в байтах dead_tuple_percent float8 Процент «мёртвых» кортежей free_space bigint Общий объём свободного пространства в байтах free_percent float8 Процент свободного пространства Функция
pgstattuple
получает блокировку отношения только для чтения. Таким образом, её результаты отражают не мгновенный снимок; на них будут влиять параллельные изменения.pgstattuple
считает кортеж "мёртвым", еслиHeapTupleSatisfiesDirty
возвращает false.pgstattuple(text) returns record
Эта функция равнозначна функции
pgstattuple(regclass)
за исключением того, что для неё целевое отношение задаётся в текстовом виде. Данная функция оставлена для обратной совместимости, в будущем она может перейти в разряд устаревших.pgstatindex(regclass) returns record
Функция
pgstatindex
возвращает запись с информацией об индексе типа B-дерево. Например:test=> SELECT * FROM pgstatindex('pg_cast_oid_index'); -[ RECORD 1 ]------+------ version | 2 tree_level | 0 index_size | 8192 root_block_no | 1 internal_pages | 0 leaf_pages | 1 empty_pages | 0 deleted_pages | 0 avg_leaf_density | 50.27 leaf_fragmentation | 0
Колонки результата:
Колонка Тип Описание version integer Номер версии B-дерева tree_level integer Уровень корневой страницы в дереве index_size bigint Общее количество страниц в индексе root_block_no bigint Расположение блока корня internal_pages bigint Количество "внутренних" страниц (верхнего уровня) leaf_pages bigint Количество страниц на уровне листьев empty_pages bigint Количество пустых страниц deleted_pages bigint Количество удалённых страниц avg_leaf_density float8 Средняя плотность страниц на уровне листьев leaf_fragmentation float8 Фрагментация на уровне листьев Как и
pgstattuple
, эта функция собирает данные страница за страницей и не следует ожидать, что её результат представляет мгновенный снимок всего индекса.pgstatindex(text) returns record
Эта функция равнозначна функции
pgstatindex(regclass)
за исключением того, что для неё целевое отношение задаётся в текстовом виде. Данная функция оставлена для обратной совместимости, в будущем она может перейти в разряд устаревших.pgstatginindex(regclass) returns record
Функция
pgstatginindex
возвращает запись с информацией об индексе типа GIN. Например:test=> SELECT * FROM pgstatginindex('test_gin_index'); -[ RECORD 1 ]--+-- version | 1 pending_pages | 0 pending_tuples | 0
Колонки результата:
pg_relpages(regclass) returns bigint
Функция
pg_relpages
возвращает число страниц в отношении.pg_relpages(text) returns bigint
Эта функция равнозначна функции
pg_relpages(regclass)
за исключением того, что для неё целевое отношение задаётся в текстовом виде. Данная функция оставлена для обратной совместимости, в будущем она может перейти в разряд устаревших.
E.30.2. Авторы
Тацуо Исии и Сатоши Нагаясу
Пред. | Начало | След. |
pg_stat_statements | Уровень выше | pg_trgm |