[firebase-br] Ferramenta para otimizar comando SQL no InterBase

Paulo Sérgio Dias psdlistdisc em terra.com.br
Dom Jun 19 00:57:58 -03 2005


Pessoal:

Esta e' uma pergunta, mas aproveito para fazer alguns
comentarios que talvez sejam de interesse para a lista:

- Ha' alguma ferramenta que eu possa usar que me d^e
indicacoes de como posso melhorar esse SELECT ?
Ja' tentei mudar a ordem que os campos/tabelas
aparecem no SELECT, criei indices, mas nao adiantou.


Comentarios:

a) Tenho um SELECT um tanto complexo, que envolve 
4 subconsultas (4 selects dentro do select principal).

Esse SELECT demora muito no InterBase 6 (nao posso
migrar agora para o Firebird).   Com um baixo volume
de dados, ele demora cerca de 17 minutos, mas com dados
reais de meu cliente ele consome muito mais tempo, e parece
que trava

b) Antigamente, para otimizar SELECTs no IB6, eu mantinha
uma versao do IB4 em uma maquina, e executava os
comandos no IB4.  Como o IB4 rodava mais rapidamente os
comandos, eu examinava quais os PLANS que ele (IB4)
fazia, e entao escrevia explicitamente esses PLANS
no IB6 - e isso funcionava !   Mas agora nao tenho mais o IB4.

c) No SQL-Server, copiei o BD do InterBase, com exatamente
a mesma quantidade de registros, os mesmos indices, etc.
O SQL-Server 2000 roda o SELECT em cerca de 15 segundos.
Se o SQL-Server consegue, acho que o IB 6 tambem poderia
conseguir esse tempo.

Grato pela atencao de todos
Paulo




Mais detalhes sobre a lista de discussão lista