2015-12-11 17:08 GMT-02:00 Luiz Carlos L. Nogueira Jr. < [email protected]>:
> > INFO: "xxx": scanned 104314 of 104314 pages, containing 715972 live rows > and 2718 dead rows; 300000 rows in sample, 715972 estimated total rows > > Isso quer dizer que ele calculou a estatística em cima de 300mil linhas? > > default_statistics_target = 1000 # range 1-10000 > Dei uma olhada bem por cima no código em [1] (veja também a linha 1197, onde emite a mensagem), e pelo que entendi o número de linhas que são consideradas para a amostragem é o "statistics_target" multiplicado por um fator fixo de 300 (não parei pra analisar o código melhor e ver se varia em algumas situações, mas em alguns testes que fiz sempre deu exatamente 300). A ideia é analisar uma amostragem de tuplas na tabela, essa amostragem será de *pelo menos* 300*statistics_target caso a tabela tenha mais tuplas que isso, mas pode ser mais; entretanto, serão armazenados nos histogramas/valores comuns/etc. apenas statistics_target. [1] http://git.postgresql.org/gitweb/?p=postgresql.git;a=blob;f=src/backend/commands/analyze.c;h=ddb68abf6b4e358a5b69913ba66de65fdf367860;hb=HEAD#l1762 Atenciosamente, -- Matheus de Oliveira
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
