Otimizar sistema em rede Wirelless
Pessoal Bom dia, estou com um problema, fechei contrato com um cliente onde eles tem em torno de 20 estações e a rede deles é toda Wirelless, pois bem coloquei um sistema desenvolvido em Delphi 2007+firebird 2.0, só que como vocês sabem a rede wirelless é lenta se comparada a rede cabeada, gostaria de saber se vocês tem alguma dica para passar-me de como otimizar pesquisar e execuções de Stored Procedures, pois cada vez que o sistema vai pesquisar ou executar um INSERT via Stored, o usuário tem que aguardar alguns segundos e isso claro causa incomodo.
Desde já agradeço
Desde já agradeço
Estanieski
Curtidas 0
Respostas
Pedroso
08/07/2009
Ninguem quer te responder pelo visto. E este post é antigo.
Acredito que a questão esta nos indices, cada vez que cadastra tu teras que eliminar os indices e cria-los de novo. Assim tu ganhas tempo em questão de update de indeces que é bem mais lento do recriar , isto tem a ver com o algoritimo das estruturas B-Tree que é o caso do firebird ... na realidade em C-tree tambem acontece, hehehhee.
Para pesquisa seria interessante criar views de pesquisa para averiguar a performace.
Por favor , isto se fazia a algum tempo atras em Oracle que é C-tree , se alguem tiver alguma coisa a postar que o faça. Esta é uma questão bem corriqueira e que talves tenha alguma solução diferente.
Acredito que a questão esta nos indices, cada vez que cadastra tu teras que eliminar os indices e cria-los de novo. Assim tu ganhas tempo em questão de update de indeces que é bem mais lento do recriar , isto tem a ver com o algoritimo das estruturas B-Tree que é o caso do firebird ... na realidade em C-tree tambem acontece, hehehhee.
Para pesquisa seria interessante criar views de pesquisa para averiguar a performace.
Por favor , isto se fazia a algum tempo atras em Oracle que é C-tree , se alguem tiver alguma coisa a postar que o faça. Esta é uma questão bem corriqueira e que talves tenha alguma solução diferente.
GOSTEI 0
Emerson Nascimento
08/07/2009
há muitas coisas a observar:
- arquitetura (client/server, camadas)
- tecnologia utilizada (dbx, ibx, ado)
- se há índices criados e se eles foram bem dimensionados
é preciso avaliar também como esse sistema foi desenvolvido, o que está por trás de uma chamada à procedure (depois da execução é executada mais alguma tarefa? ou até mesmo antes da execução...), etc...
(uma vez os índices criados, não é necessário excluí-los para depois recriá-los)
- arquitetura (client/server, camadas)
- tecnologia utilizada (dbx, ibx, ado)
- se há índices criados e se eles foram bem dimensionados
é preciso avaliar também como esse sistema foi desenvolvido, o que está por trás de uma chamada à procedure (depois da execução é executada mais alguma tarefa? ou até mesmo antes da execução...), etc...
(uma vez os índices criados, não é necessário excluí-los para depois recriá-los)
GOSTEI 0
Pedroso
08/07/2009
emerson, blz?
Cara tambem não sei a situação da estrutura dele ,mas a deleção de indices é algo que é amplamente difundido em questoes de insert quando a base de dados é demasiadamente grande e a arvore de indice esta muito profunda. Concordo contigo a arquitetura deve ser bem avaliada neste caso. Mas tu imagina um indice com aprofundamento em > que 50 camadas de profundidade o que pde chegar a uns 900 mil registros por indice , por melhor que seja o algoritimo do banco de dados , podera ser mais demorado fazer um update neles do que recria-los. Claro que pra isso a base de dados tem que ter no minimo uns 10 milhoes de registros , o que não é muito dificil em media/grande corporação.
As vezes recriar um indice e deveras melhor do que fazer update.
Cara tambem não sei a situação da estrutura dele ,mas a deleção de indices é algo que é amplamente difundido em questoes de insert quando a base de dados é demasiadamente grande e a arvore de indice esta muito profunda. Concordo contigo a arquitetura deve ser bem avaliada neste caso. Mas tu imagina um indice com aprofundamento em > que 50 camadas de profundidade o que pde chegar a uns 900 mil registros por indice , por melhor que seja o algoritimo do banco de dados , podera ser mais demorado fazer um update neles do que recria-los. Claro que pra isso a base de dados tem que ter no minimo uns 10 milhoes de registros , o que não é muito dificil em media/grande corporação.
As vezes recriar um indice e deveras melhor do que fazer update.
GOSTEI 0