[firebase-br] IB 6 super server não usa memória eficientemente?

Magno System magno em speet.com.br
Ter Ago 19 15:17:35 -03 2008


O IBDATAPUMP realmente é uma boa ferramenta. Recentemente tenho usado o 
próprio IBEXPERT. Na conversão do FIREBIRD 2.0.4 para 2.1.1 eu extrai os 
metadados + dados em um só script e executei com o 2.1.1 instalado. No seu 
caso, se o banco for 90% igual faça uma importação seletiva dos 90% e os 
outros 10% na unha. Bem, isso é só um palpite.


----- Original Message ----- 
From: "Valdir Marcos" <valdir.marcos em ig.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Tuesday, August 19, 2008 1:45 PM
Subject: Re: [firebase-br]IB 6 super server não usa memória eficientemente?


Boa tarde.

Eu trabalho com consultoria em projetos de banco de dados e sistemas,
e carga de dados em ambiente de Business Inteligence (ETL), e cada
caso é um caso...

No casos, mais simples (ou onde não haja dinheiro ou haja pouco
conhecimento), temos IBDataPump, avançando um pouco mais temos as
ferramentas da EMS (http://www.sqlmanager.net/en/products), depois
ferramentas específicas de ETL, e por fim programação na unha mesmo...
este último recurso fica geralmente para os casos mais graves onde o
banco de dados original tem uma "modelagem" muito ruim (incluindo
inconsistências e erros nos dados originais) e a nova modelagem será
muito (muito mesmo!) diferente da modelagem anterior.

Começe verificando ferramentas de PUMP disponíveis nos sites da
www.firebase.com.br, www.comunidade-firebird.org e
http://www.baixaja.com.br/downloads/Windows/Business/Databases-Tools/Page-1-0-0-0-0.html.
Depois, parte para o Google...

Um abraço,

Valdir


Em 19/08/08, Paulo<paulo em manfra.com.br> escreveu:
> Obrigado pelas dicas, Valdir.
>
> Só uma dúvida: como você faz a importação dos dados para esta no base
> com a estrutura de certa forma diferente?
>
> Valdir Marcos escreveu em 18/08/2008 19:30:
> > 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
> >>
> >>
> >
> > ______________________________________________
> > 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