[firebase-br] IB 6 super server não usa memória eficientemente?
Valdir Marcos
valdir.marcos em ig.com.br
Seg Ago 18 19:30:38 -03 2008
Paulo, apenas uma sugestão...
Quando eu pego esse tipo de situação, eu extraio o metadado do banco
velho inteiro e reconstruo na nova versão do Firebird mudando pequenos
detalhes, como chaves primárias e estrangeiras, índices e charsets.
Todos esses elementos são transparentes para a aplicação, todavia já
de início dão aquela lentanda na performance da aplicação abrindo
espaço e credibilidade para fazermos o trabalho pesado de construirmos
um banco de dados decente.
Um abraço,
Valdir
Em 18/08/08, Paulo<paulo em manfra.com.br> escreveu:
> Boa tarde, Valdir.
>
> É o que eu pretendo fazer! Mas é um sistema legado e de uma codificação
> horrível! Coisas que só o RAD faz pra você! Um dia chego até a versão
> mais atual do Firebird (ou quem sabe mudo de SGBD :), mas tenho que ir
> com calma!
>
>
> Valdir Marcos escreveu em 18/08/2008 14:54:
>
> > Paulo, porque você não migra seus dados para o Firebird 2.1.1? Você
> > verá uma diferença absurda de performance em relação Interbase 6, sem
> > falar na enormidade de melhorias e recursos que foram acrescentados de
> > lá para cá.
> >
> > Um abraço,
> >
> > Valdir
> >
> >
> > Em 18/08/08, Valdir Marcos<valdir.marcos em ig.com.br> escreveu:
> >
> >> Boa tarde.
> >>
> >> No Firebird 2.1, você poderia derrubar os comandos de uma conexão, mas
> >> não a conexão em si (o que será possível no FB 2.5). Todavia, se você
> >> derrubar todos os comandos de uma conexão, essa conexão pára de lhe
> >> dar trabalho... he he he
> >>
> >> -- Descubra qual conexão lhe interessa:
> >> Select * From Mon$Attachments;
> >>
> >> -- Apaga todos os comandos dessa conexão:
> >> Delete From MON$STATEMENTS
> >> Where Mon$Attachment_ID = 9999;
> >> Commit;
> >>
> >> -- Verifica se sobrou algum comando dessa conexão:
> >> Select * From MON$STATEMENTS;
> >>
> >> -- Após você apagar o comando, o usuário dessa conexão receberá uma
> >> mensagem de erro instantaneamente... he he he
> >>
> >> Um abraço,
> >>
> >> Valdir
> >>
> >>
> >> Em 18/08/08, Douglas Tosi<douglasht em gmail.com> escreveu:
> >>
> >>> 2008/8/18 Paulo <paulo em manfra.com.br>:
> >>>
> >>>> Douglas Tosi escreveu em 18/08/2008 11:40:
> >>>> O parâmetro DATABASE_CACHE_PAGES está em 3500. Já experimentei aumentar
> >>>> este valor, mas houve um pequeno aumento no uso da memória apenas.
> >>>> Os problemas que eu tenho são quando alguma conexão faz um uso mais
> >>>> agressivo do banco. Todos os outros clientes sofrem com isso.
> >>>>
> >>> Não acredito que aumentar o cache vai te ajudar nisso. 300MB é um banco pequeno.
> >>> Você poderia colocar ele inteiro no cache e ainda assim teria
> >>> problemas de performance.
> >>> Aumentar a memória só te ajudaria se você tiver problemas de excesso
> >>> de I/O de leitura.
> >>> E ainda assim, cuidado: O IB6 não é muito esperto gerenciando caches
> >>> muito grandes.
> >>>
> >>>
> >>>> Aliás, este é um outro problema que venho enfrentando: não consigo cancelar o
> >>>> processamento de algumas queries, nem matar conexões! Às vezes preciso
> >>>> rodar alguma query mais pesada no servidor de produção (mesmo não sendo
> >>>> o banco de dados de produção) e, se ela demorar demais, todos os outros
> >>>> clientes ficam intrabalháveis neste período. Há alguma maneira de matar
> >>>> um cliente no super server?
> >>>>
> >>> Não. Só a partir do 2.5.
> >>> No 2.1 tem como cancelar uma query.
> >>> Mas matar uma conexão nas versões anteriores ao 2.0, só no Classic.
> >>> E só existe classic para windows a partir do firebird 1.5, eu acho.
> >>> (Confirme isso)
> >>>
> >>>
> >>>> Unindo o pouco uso da memória e o problema com o excesso de
> >>>> processamento de alguns clientes, pensei em utilizar o classic server,
> >>>> porque poderia matar a conexão mal-criada facilmente.
> >>>>
> >>> As versões mais novas do Firebird se comportam um pouco melhor na
> >>> distribuição de carga entre os clientes. Um cliente mal-criado não vai
> >>> causar tanto impacto nos outros.
> >>>
> >>> --
> >>> Douglas Tosi
> >>> www.sinatica.com
> >>>
> >>> ______________________________________________
> >>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> >>> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> >>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >>>
> >>>
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
Mais detalhes sobre a lista de discussão lista