Caramba, ficou claro que iremos precisar na próxima PGCON discutir isso, o que 
acham ???



  Mozart Hasse escreveu: 
Respondendo:

  Ninguém se interessou e *provou* que aumentando o parâmetro vai trazer
benefício para todos.
    
Bom, passei um bom tempo expondo, perguntando e esperando descobrir o que é
prova suficiente para quem decide. Nessa última mensagem deu para ter uma
idéia, por mais que eu discorde que precise disso para decidir algo dessa
natureza.
  
  Para falar com "quem decide", ou melhor, quem pode decidir mais rápido, vá 
direto às listas gringas.


[1] http://archives.postgresql.org/pgsql-hackers/2006-09/msg01521.php
[2] http://archives.postgresql.org/pgsql-patches/2007-11/msg00170.php
    
Em [1] não vi nenhuma crítica relevante contra valores altos em
estatísticas, muito pelo contrário. Pelo menos, vi sensatez no comentário
sobre ter estatísticas consolidadas de várias colunas em versões futuras.
Isso sem dúvida trará muito mais benefícios do que mexer em parâmetros
(apesar das duas coisas irem muito melhor juntas).
Em [2] não achei nada em favor do valor atual, muito pelo contrário.

De qualquer forma obrigado pela referência.
  
  Em nenhum momento procurei defender os padrões atuais, as referências estão 
aí pra mostrar que muita coisa tem sido discutida, e pelo jeito a discussão 
ainda vai longe.
  Vou tentar resumir o que eu entendo da posição dos desenvolvedores do 
Postgres. Os valores padrões devem servir a sistemas pequenos, rodar em várias 
plataformas com uma performance razoável, e ainda por cima ocupar pouco espaço. 
É uma equação muito complexa, e por essa razão, os valores padrões de memória 
(shared, work, maintenance...) são tão ridículamente pequenos.
  Para qualquer sistema da vida real, você vai precisar especificar 
configurações de memória, bem como configurar as suas tabelas para terem 
estatísticas mais precisas em certas colunas, como o outro colega fez 
aumentando de 10 para 1000. Ele está certo em testar e fazer alterações.
  Basicamente, o padrão não serve pra quase ninguém, mas roda em qualquer 
lugar; creio que seja essa a idéia do Postgres. Tanto que qualquer mudança nos 
padrões, por menor que seja, demora pra ser aceita e implementada.



  mesmo usando 1000 ficou mais rápido sem as estatisticas...
    
Olhando os resultados, nota-se que neste caso o Postgres só escolheu um bom
plano quando as estimativas forneceram valores completamente fora da realidade
(estimado 13 encontrado 480000). Isso neste caso foi ótimo, mas acho absurdo
contar com isso como regra geral. Essa consulta pode até ficar mais rápida
sem estatísticas, mas teoricamente é de se esperar que muitas outras
consultas serão prejudicadas, enquanto que poucas vão (por puro acaso) se
beneficiar de estatísticas tão furadas. Provavelmente o planejador descartou
o plano ideal quando estatísticas sobre uma só coluna o induziram a erro.
Quanto a isso, nenhuma solução trivial à vista.
  
  Fazer errado pra dar certo não dá. Concordo plenamente.


-- 

[]´s, ACV

------------------------------------------------------------------------------


  _______________________________________________
  pgbr-geral mailing list
  [email protected]
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a