[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