[firebase-br] Indice com Vários Campos
Kelver Merlotti
kmerlotti em gmail.com
Seg Maio 12 15:59:07 -03 2008
Galera.. desativei o índice e o insert ficou praticamente instantâneo!
Não achei que ele estivesse fazendo tanta diferença..
Ele é composto por 4 Campos, sendo 3 Varchars (7, 3 e 8) e um Date,
que na realidade é um TimeStamp (dialeto 1).
Dos outros 9 índices, 2 ou talvez 3 não possuem valores muitos
distintos. Entretanto, nenhum deles possui valores nulos.
Bom, por enquanto, caso resolvido!
Estou repassando o restante do fonte em busca de um trecho de código
mal-feitor :-)
Obrigado a todos!
Abraço!
2008/5/12 Kleber Caneva <kdcc em terra.com.br>:
> Kelver,
>
> Se você retirar este, para testar, para quanto cai o tempo de execução ?
> A principio a unica função desse indice esta sendo manter uma chave unica,
> já que para os selects o FB acaba usando os indices individuais.
> Quais os tipos de dados que fazem parte deste indice composto ?
>
> Eu pessoalmente não utilizo e não gosto de chaves compostas..
>
> []´s
>
> Kléber Caneva
>
>
>
>
> ----- Original Message -----
> From: "Kelver Merlotti" <kmerlotti em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Monday, May 12, 2008 9:11 AM
> Subject: Re: [firebase-br] Indice com Vários Campos
>
>
> 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
> >
>
> ______________________________________________
> 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
>
> E-mail verificado pelo Terra Anti-Spam.
> Para classificar como spam, visite
> http://mail.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0NDU0NzM0I3Blcm0hdGVycmEmMSwxMjEwNTk0MzI0LjI2OTc0NC4xNzg5Ny5hbGRhYnJhLmhzdC50ZXJyYS5jb20uYnIsNzEwOQ==
> Verifique periodicamente a pasta Spam para garantir que apenas mensagens
> indesejadas sejam classificadas como Spam.
>
>
>
>
>
> ______________________________________________
> 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
>
--
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
Mais detalhes sobre a lista de discussão lista