Qual é o significado de n_live_tup
e n_dead_tup
em pg_stat_user_tables
ou pgstattuple
?
relate perguntas
-
Posso ativar o PITR depois que o banco de dados foi usado
-
Práticas recomendadas para executar a replicação atrasada do deslocamento de tempo
-
Os procedimentos armazenados impedem a injeção de SQL?
-
Sequências Biológicas do UniProt no PostgreSQL
-
Qual é a diferença entre a replicação do PostgreSQL 9.0 e o Slony-I?
Essas duas colunas são o resultado de
Representando o número de linhas vivas e mortas (tuplas) na tabela.
Encontre essas funções no manual .
Linhas mortas são linhas excluídas que serão posteriormente reutilizadas para novas linhas de
INSERT
s ouUPDATE
s (o espaço, não os dados). Algumas linhas mortas (ou espaço livre reservado) podem ser particularmente úteis para atualizações HOT (tuplas somente de heap) que podem reutilizar o espaço na mesma página de dados com eficiência. Mais sobre HOT:As linhas mortas podem ser removidas por
VACUUM FULL
(ou simplesVACUUM
, se tiver sorte) ou operações semelhantes na tabela, reduzindo assim o tamanho físico de acordo.Sempre que uma linha é excluída ou atualizada, a versão da linha antiga se torna invisível para todas as outras transações, começando após a transação ter sido confirmada - com
READ COMMITTED
isolamento de transação padrão . A linha está completamente morta assim que não há mais transações antigas não confirmadas. Isso é necessário para que o modelo MVCC do PostgreSQL lide com a simultaneidade.Essas são apenas estatísticas . Você precisa habilitar a coleta de estatísticas
postgresql.conf
se quiser que elas sejam atualizadas automaticamente.track_counts
deve estar ativado por padrão, no entanto. Tenha em mente que as estatísticas não são atualizadas instantaneamente.Mais sobre o coletor de estatísticas no manual aqui .