[firebase-br] Indice com Vários Campos

Kelver Merlotti kmerlotti em gmail.com
Seg Maio 12 09:11:37 -03 2008


Bom dia Cantu! Bom dia Lista!

Nem todas as queries utilizam os 4 campos não.. acredito que este
índice esteja sendo raramente utilizado.. ou até não esteja sendo
utilizado!

Com relação à demora, não há nenhum vínculo à tabela direto no Banco.
Entretanto, acompanhando o fonte, vi um processo executado logo após o
insert, gerando dados vinculados a ela em um outra tabela.

Ignorando o tempo deste "processo", ou seja, analisando apenas o
"ExecSQL" do insert, foram +/- 2 segundos ainda.

Vale lembrar que a tabela possui 10 índices no total, sendo um deles
este índice composto.

Será que este número de índices está exagerado? Somente remover o
índice composto não ajudará?

Abraços!

-- 
Kelver Merlotti
Coordenador Editorial do Portal www.ActiveDelphi.com.br
Contato: kelver em activedelphi.com.br
Google: kmerlotti em gmail.com
Msn: kmerlotti em hotmail.com
2008/5/10 Carlos H. Cantu (TeamFB) <listas em warmboot.com.br>:
> Se as consultas realizadas no banco sempre usam os 4 campos no WHERE,
>  então o indice composto ajudaria um pouco. Se as consultas em alguns
>  casos usam os 4 campos, e em outros usam apenas alguns deles, eu
>  removeria o indice composto e deixaria somente os individuais.
>
>  PS: Acho 5s um tempo muito grande para um insert, e tenho duvidas se o
>  culpa eh realmente o indice. Verifique se há triggers disparando nos
>  inserts, e o que eles fazem.
>
>  []s
>  Cantu (Membro do TeamFB - FireBase)
>  http://www.warmboot.com.br
>  FireBase - http://www.FireBase.com.br
>  Blog - http://blog.firebase.com.br
>
>  KM> Bom dia galera!
>  KM> Ganhei de presente uma base de dados "nervosa", com meros 800 MB,
>  KM> dialeto 1, fb 1.5.
>  KM> Missão: Melhorar o desempenho!
>  KM> Uma das principais tabelas, atualmente com 541.000 registros, 28
>  KM> campos, aproximadamente 1,1Kb por registro, existe um índice composto
>  KM> por 5 campos, entrentanto, já existe um índice para cada um destes 5.
>  KM> Para exemplificar:
>
>  KM> TABELA
>  KM> ----------------
>  KM> CAMPO1
>  KM> CAMPO2
>  KM> CAMPO3
>  KM> CAMPO4
>  KM> CAMPO5
>  KM> CAMPO6
>
>  KM> INDICES
>  KM> ---------------
>  KM> IDX1(CAMPO1)
>  KM> IDX2(CAMPO2)
>  KM> IDX3(CAMPO3)
>  KM> IDX4(CAMPO4)
>  KM> IDX5(CAMPO1,CAMPO2,CAMPO3,CAMPO4) ***eis a questão!!
>
>  KM> Um insert nesta tabela está demorando cerca de 5 segundos e ela recebe
>  KM> cerca de 20 registros por minuto no sistema que a gerencia. Acredito
>  KM> que este índice composto esteja influenciando.
>  KM> Pergunto: Em vossas opiniões, preciso deste índice composto? Em que
>  KM> situação ele seria utilizado?
>  KM> Vale lembrar que até aqui, das queries que analisei, este índice não
>  KM> foi utilizado, mas sim um ou mais índices com apenas um dos campos.
>
>  KM> --
>  KM> Kelver Merlotti
>  KM> Editor do portal www.activedelphi.com.br
>  KM> Contato: kelver em activedelphi.com.br
>  KM> Google: kmerlotti em gmail.com
>  KM> Msn: kmerlotti em hotmail.com
>
>  KM> ______________________________________________
>  KM> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>  KM> Para saber como gerenciar/excluir seu cadastro na lista, use:
>  KM> http://www.firebase.com.br/fb/artigo.php?id=1107
>  KM> 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