GARANTIR DESCONTO

Fórum SQL ou Firebird lento #204025

04/01/2004

0

Estava com uma dúvida, então desenvolvi um sisteminha simples para testar a velocidade dos bancos de dados, entre SQL e Paradox, para minha surpresa o SQL é muito lento, isto ao meu ver se deve ao comando applyupdates(-1), que é lento. Caso os dados ficassem apenas no buffer ele seria mais rapido, alguem sabe o que fazer para o sql ficar mais rapido?


Nish

Nish

Responder

Posts

04/01/2004

Tricano

Olá !!

A questão da lentidão da linguagem de consulta SQL, é que ela foi projetada para funcionar em cima de SGDB-Sistema Gerenciador de Banco de Dados( Ex: Interbase, Oracle, Sql Server, DB2, Informix, etc...).

O paradox não pode ser chamado de banco de dados. É apenas algumas tabelas para armazenamento de informações em quantidade relativamente pequena, como dbase.


Responder

Gostei + 0

04/01/2004

Rnovak

Olá Nish

Tenho um grande banco de dados no firebird e no IB6. As consultas são muito rápidas.
Por experiencia notei algumas coisas:
- A configuração do servidor pode resolver: Em Database Cache e Client Map size, veja no help maiores informações de uso.
- Em alguns computadores a aplicação pode ficar lenta devido à limitações da placa mãe. Se a placa tiver menos que 150 MB/s de bandwidth memory então se preocupe em trocá-la. Se seu propósito é usar o servidor de banco de dados na máquina, procure uma de alto performance em bandwidth, pelo menos 3 GB/s.
- O firebird/Interbase conforme vai crescendo pode ficar lento para algumas situações se não for feita sua manutenção. Supondo um banco de 8 GB, é necessário realizar a rotina de manutençao para reconstrução da árvore binária interna que o firebird/IB possuem. A consulta que o banco faz via Árvore binária é a mais rápida conhecida, mas de tempos em tempos é necessário rebalancear as árvores. Uma estratégia para reconstruir as árvores é fazer um backup e em seguida restaurar, todos os índices e árvores serão reconstruídos mas há outros métodos para fazer isso sem tirar do ar o banco.
- A estratégia de conexão que você faz com o banco influi bastante no tempo de resposta. Eu ainda uso conexão via BDE sem problemas. Procure realizar consultas enxutas para não ter problemas, códigos SQL que retornem e enviem apenas o necessário. Baseie-se nas chaves primárias das tabelas, lembre-se que uma aplicação via rede não pode agir como se o banco de dados fosse local.
- Tenho um problema de lentidão com o SQL Server atualmente, mas é referente um aplicativo desenvolvido por terceiros. Pelo que pude verificar, ao que parece, o problema está residindo na forma que o aplicativo se comunica com o banco.
- Cuidado com os controles visuais no aplicativo local, sempre utilize o DisableUpdates antes e EnableUpdades após o open de uma query. O redesenho visual costuma demorar mais do que a consulta no banco de dados.
- Ao fechar janelas, se não vai mais usá-las no aplicativo prefira destruí-las e recriálas conforme necessário. Não deixe Queries ou Tables abertas sem necessidade.
Espero ter ajudado um pouco para resolver seu problema.
- Também realizo trabalhos particulares para acertos de problemas com relação à análise de sistemas e estratégia usada para acesso ao banco, e claro este serviço é pago, se desejar entre em contato.
rnovak@interall.com.br - Roberto Novakosky


Responder

Gostei + 0

04/01/2004

Rnovak

Dica:
Procure pelo software SiSoftware Sandra em donwload.com. Sua bandwidth memory pode ser avaliada através deste software.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar