Em 25/02/11, Irineu Raymundo<[email protected]> escreveu:
> Caros,
>
> tenho uma função que calcula as necessidades de matéria prima para 
> produção fazendo da seguinte forma:
>
> -cria tabelas temporárias e insere apenas os registros necessários 
> para o calculo.
> -cria índices para essas tabelas temporárias -efetua os cálculos 
> -insere no banco o resultado.
>
> Acontece que quando executa essa função demora mais de 3 horas para 
> concluir, muitas vezes tendo que reiniciar o banco.
>
> Depois dos cálculos gerados a inserção dos dados é rápida.
>
> O servidor(Linux) tem 3,2GB reservado de RAM para o banco. Porém pelo 
> diagnostico que me foi passado pelo administrador da rede o postgres 
> nunca utilizou mais que 0,9 GB.
>
> Que configurações do banco poderia olhar para que o postgres utilize 
> mais memória? Será que seria isso ? O que poderia ser?
>
> Se alguém puder me dar uma luz ficarei imensamente agradecido.
>


Dependendo do volume e complexidade dos cálculos envolvidos a PL/pgSQL pode
não ser a alternativa mais eficiente.
Caso sejam cálculos complexos e volumosos considere a utilização de C para
esta rotina de cálculo.

Osvaldo


Osvaldo, 

É uma boa sugestão, talvez seja o caminho. Essas PL's foram escritas
originalmente por outra pessoa, estão em PL/psSQL mas são apenas INSERT e
UPDATE.

Pela sua experiência, trocando para a linguagem para sql pode haver melhora
no desempenho?







------------------------------------------------------------------------------------------------------------
Esta mensagem foi verificada pelo sistema de Segurança da SJB Solados Ltda. 

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

Responder a