Pessoal, tem mais uma coisinha, imaginem aih, trabalhei em locais que tem aplicacoes criticas com parte da logica em banco e em transacoes mainframe. Um exemplo eh um Detran, aplicacoes altamente criticas, transacoes altamente complexas, mudancas frequentes nas legislacoes.
Durante o tempo que passei no Detran-CE imaginei o caos que seria se a logica estivesse na aplicacao, imagine da noite pro dia ter que aletrar, recompilar e distribuir a aplicacao em fase de uma decisao judicial sobre suspensao de mulas aplicadas por radares e foto-sensores. Isso aih eh o minimo do CAOS que eu pude imaginar para essa situacao. Agora imaginemos mais, um hibernate ou mesmo um activeRecord::base do rails gerenciado o fluxo de dados desse banco com a aplicacao, onde simplesmente 1 campo a mais ou a menos no recordset faz toda a diferenca. Agora imagine uma aplicacao critica como essa, e alogica de negocio sendo tratada num model e/ou num controller rails ou java. Onde toda a informacao eh preciso ir a aplicacao primeiro para que depois se trabalhe em cima dela. Ex: Trazer um calculo qualquer de multas de um veiculo. Para isso poderiamos chamar uma funcao que traria o resultado mastigado para a aplicacao. Ou poderiamos colocar a logica na aplicacao, e para isso a aplicacao iria buscar no banco informacoes, sobre: proprietario veiculo multas emitidas extrato do pagamento das multas aih depois disso tudo vindo a aplicacao ela pode calcular o que precisa. Agora os amigos me respondam: Isso funcionaria no detran das 4 aiores capitais do Brasil? Isso funcionaria no metro de sao paulo? Isso funcionaria no controle de trafego aereo? (alias, pelo jeito acho que estao usando assim) ricardo.cardim wrote: > > A questo tem sempre que ser levantada com uma justificativa. Por exemplo > se > fazer algo na camada control pode facilitar a manutenço isso deveria ser > feito. Se retirar isso do banco otimiza o desempenho, isso deveria ser > feito. > > A questao e que vc deve sempre desacoplar o sistema cada vez mais. Se > todas > as suas regras de negocio estao no banco, a migracao para outro banco > torna-se dispendiosa (e pq nao impossivel). > > Deve ser moderado mesmo. Afinal para o cliente o que importa mesmo e o > sistema rodando. Como isso sera feito e um problema nosso. Mas eu vejo que > colocar "inteligencia" demais no banco faz o desempenho dele piorar... > Quanto ao ruby fazer chaves estrangeiras... Esse nao e um papel do proprio > banco? Seria interessante se ele tiver uma camada que converse com qq > banco > de dados...Caso contrario seria um tiro no pe > > > On 11/30/06, Nelson Pereira Júnior <[EMAIL PROTECTED]> wrote: >> >> A questão é performance! >> >> Imagine... ao se excluir um pedido com 100 itens, em vez de enviar apenas >> um >> comadno SQL ao SGDB, teria que enviar 101. >> >> Isso se o desenvolver não esquecer alguma coisa... pois se ele esquece o >> banco vira uma zona. >> >> Sou a favor da moderação, mais pro lado da performance. >> >> ----- Original Message ----- >> From: "Rodrigo Hjort" <[EMAIL PROTECTED]> >> To: "Grupo de Usuários do PostgreSQL no Brasil" >> <[email protected]> >> Sent: Thursday, November 30, 2006 2:52 PM >> Subject: Re: [PostgreSQL-Brasil][off topic] Inteligência em banco de >> dados >> >> >> 2006/11/30, Walter Cruz <[EMAIL PROTECTED]>: >> > Há uns meses atrás, no rails-br, algumas pessoas >> > sugeriram que se o rails for o único a acessar o banco, o mesmo poderia >> > ser >> > feito sem chave estrangeira(já que daria pra usar o rails pra controlar >> > isso). >> >> Veja se o DBA aceitaria... :D >> (Eu não.) >> >> -- >> Rodrigo Hjort >> http://icewall.org/~hjort >> _______________________________________________ >> Grupo de Usuários do PostgreSQL no Brasil >> Antes de perguntar consulte o manual >> http://pgdocptbr.sourceforge.net/ >> >> Para editar suas opções ou sair da lista acesse a página da lista em: >> http://pgfoundry.org/mailman/listinfo/brasil-usuarios >> >> >> >> _______________________________________________ >> Grupo de Usuários do PostgreSQL no Brasil >> Antes de perguntar consulte o manual >> http://pgdocptbr.sourceforge.net/ >> >> Para editar suas opções ou sair da lista acesse a página da lista em: >> http://pgfoundry.org/mailman/listinfo/brasil-usuarios >> > > _______________________________________________ > Grupo de Usuários do PostgreSQL no Brasil > Antes de perguntar consulte o manual > http://pgdocptbr.sourceforge.net/ > > Para editar suas opções ou sair da lista acesse a página da lista em: > http://pgfoundry.org/mailman/listinfo/brasil-usuarios > -- View this message in context: http://www.nabble.com/-off-topic--Inteligncia-em-banco-de-dados-tf2703163.html#a7873175 Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com. _______________________________________________ Grupo de Usuários do PostgreSQL no Brasil Antes de perguntar consulte o manual http://pgdocptbr.sourceforge.net/ Para editar suas opções ou sair da lista acesse a página da lista em: http://pgfoundry.org/mailman/listinfo/brasil-usuarios
