52.53. pg_statistic_ext_data #

O catálogo pg_statistic_ext_data armazena dados para estatísticas estendidas do planejador definidas no catálogo pg_statistic_ext. Cada linha neste catálogo corresponde a um objeto de estatísticas criado com CREATE STATISTICS.

Normalmente há apenas uma entrada com stxdinherit = false para cada objeto de estatística que foi analisado. Se a tabela tiver filhas de herança ou partições, também será criada uma segunda entrada com stxdinherit = true. Esta linha representa o objeto de estatísticas ao longo da árvore de herança, ou seja, as estatísticas para os dados que se veria com SELECT * FROM tabela*, enquanto a linha stxdinherit = false representa os resultados de SELECT * FROM ONLY tabela.

Assim como pg_statistic, pg_statistic_ext_data não deve poder ser lida por todos (public), porque o conteúdo pode ser considerado sensível. (Por exemplo: as combinações mais comuns de valores em colunas podem ser bastante interessantes.) pg_stats_ext é uma visão publicamente legível sobre pg_statistic_ext_data (após a junção com pg_statistic_ext) que mostra apenas informações sobre tabelas pertencentes ao usuário corrente.

Tabela 52.53. Colunas de pg_statistic_ext_data

Coluna Tipo de dados

Descrição

stxoid oid (referencia pg_statistic_ext.oid)

Objeto de estatísticas estendidas contendo a definição para estes dados

stxdinherit bool

Se verdade, as estatísticas incluem valores de tabelas filhas, e não apenas os valores na relação especificada

stxdndistinct pg_ndistinct

Contagens N-distintas, serializadas como tipo pg_ndistinct

stxddependencies pg_dependencies

Estatísticas de dependência funcional, serializadas como tipo pg_dependencies

stxdmcv pg_mcv_list

Estatísticas da lista MCV (valores mais comuns), serializadas como tipo pg_mcv_list

stxdexpr pg_statistic[]

Estatísticas por expressão, serializadas como uma matriz do tipo pg_statistic