> Puxa; você escreveu sobre um outro problema que estou tendo aquí: > determinados cálculos são feitos na aplicação (Java), e estão demorando dias > - isto mesmo, dias - para finalizar. > Parte disso é devido ao overhead do servidor de aplicação com o servidor > do banco. Já realizamos inclusive um teste com ambos na mesma máquina, e a > performance melhorou de forma significativa, mas ainda está muito lenta. > Achei então que, se eu portasse a mesma para PL/pgSQL, a performance seria > superior, o que não se comprovou.
Bom Márcio, eu recomendaria fazer um estudo e tentar mudar alguns processos. Com base no trabalho atual e com base no conhecimento obtido será muito mais fácil encontrar uma solução melhor. Onde trabalho existe 1 banco muito mal desenhado, fruto do trabalho de uma galera despreparada. Já falei para os responsáveis deste que é preciso mudar pois se não, as queries que hoje demoram horas, começaram a durar dias. A mudança é inevitável. Não da para contornar o problema investindo em hardware mas o pessoal é relutante e vejo o problema como uma bomba prestes a explodir. Com o banco que trabalho hoje tive que refatorar algumas coisas, ficou muito bom. Funciona muito bem. Tem coisas que não tem solução e precisam mudar. É uma evolução. Todo trabalho gasto pra melhorar é recompensado depois. > No mundo Oracle, é comum deixar muita coisa por conta do PL/SQL, > justamente devido à performance e para evitar o overhead da rede. Ah é verdade! Eu estou me graduando, fazendo Sistemas de Informação. O nosso professor deixou bem claro como a galera costuma fazer com o Oracle. Eu já lí muito sobre este assunto e existem muitos prós e contras que equilibram a decisão de onde ficará as regras de negócio. Sou muito flexível quanto a isso e não vejo problema em colocar a lógica no banco desde que seja bem feito e resolva a situação. Particularmente no banco só coloco os dados e as constraints como as chaves estrangeiras, unicidades e checks que impedem a "degradação" do banco como duplicidades... Uso procedures para unir comandos que uso constantemente e deixo a lógica junto da aplicação. Faço desta maneira porque foi assim que aprendi desde os meus tempos com PHP e MySQL e porque acho que separando a lógica do banco de dados, posso separar as duas coisas em maquinas distintas ganhando com isso. Meu professor disse que é bem simples. Basta gastar muito com uma única boa máquina ou Grid. Mas provavelmente colocaria tudo no banco se o Oracle aparecesse primeiro pra mim. Ai vira questão de gosto. Abraço! _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
