Em 25 de agosto de 2017 15:54, Euler Taveira <eu...@timbira.com.br> escreveu:
> Em 25 de agosto de 2017 15:07, Neto pr <neto...@gmail.com> escreveu:
>> Pessoal
>> alguém sabe alguma ferramenta que auxilia no ajuste dos parâmetros do
>> arquivo postgresql.conf.
>>
> Ao invés de ficar procurando ferramenta que apenas sugere valores
> empiricamente, aconselho que você leia a documentação e/ou código
> fonte para entender qual a influência de cada parâmetro na performance
> do Postgres.
>
>> Já fiz uso do PGTUNE [1] e do Pgconfi [2], mas eles nao indicam nada
>> dos parâmetros:
>>
>> - cpu_tuple_cost
>> - cpu_index_tuple_cost
>> - cpu_operator_cost
>> - seq_page_cost
>> - random_page_cost
>>
> Eu não aconselho mexer nesses parâmetros a não ser que você saiba
> exatamente o que está fazendo. A alteração desses parâmetros podem
> piorar a escolha de planos de execução. Para mexer nesses parâmetros
> você precisa conhecer como o otimizador os utiliza para fazer a
> mudança correta.
>
>> Eu estou com o problema relatado no outro email, em que o otimizador
>> está sempre escolhendo fazer full-scan ao inves de estrategias
>> indexada por exemplo.
>>
> Não abra outra discussão se o assunto é o mesmo. Consultas do TCP-H
> geralmente demandam mais hardware para serem processadas pois
> processam uma "massa" de dados. Não espere que as consultas do
> referido teste rodem com rapidez em um hardware modesto; não
> executarão.
>
> Você já tentou ativar o paralelismo para melhorar o tempo de execução
> da consulta? Eu aconselho fortemente testar a versão 10 (que incluiu
> suporte a paralelismo do Merge Join, Bitmap Heap Scan, dentre outros).
>
>
Sobre o Paralelismo eu não tinha ativado.
Mas a alguns dias atrás instalei a versao 10 beta3 e fiquei satisfeito
com os testes utilizando a escala de 40 GB do Benchmark TPC-H.
Mas utilizei um servidor com 8gb de RAM com disco SSD.

Pergunta:
Para maximizar a utilizacão de paralelismo basta ativar o parametro
force_parallel_mode = on ?

Outra questão, todos os parametros presentes no postgresql.conf sao
globais ou seja, valem para todos os usuários, ou tem algum que pode
ser configurado por sessão de usuário.

Vi que tem no postgresql.conf os parametros:

#max_parallel_workers_per_gather = 2    # taken from max_parallel_workers
#max_parallel_workers = 8               # maximum number of
max_worker_processes that can be used in parallel queries

Gostaria de saber se daria para configurar paralelismo por sessão de
usuário, lembro que no Oracle é feito utilizando hints na query ...
claro que cada sgbd tem sua forma particular de operar.

Ainda sobre o postgresql.conf, para ativar as alteracões é necessario
sempre reinicar o SGBD após salvar?

Vi que tem como fazer um update em pg_settings, mas gostaria de saber
se precisaria reiniciar o sgbd para efetivar a alteracão.

-- UPDATE pg_settings SET parametro = 'configuration_valor';

Qualquer dica, nem que seja parcial sobre as questões são bem vindas.

[ ]'s Neto


> --
>    Euler Taveira                                   Timbira -
> http://www.timbira.com.br/
>    PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
> _______________________________________________
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a