Como funciona o MySQL com campos não indexados?
Olá!
Estou com o seguinte problema...
Eu tenho um indice que consiste em dois campos: Campo1 e Campo2. Quando eu faço o select:
E supondo que a tabela tenha 70 gigas (que é o meu caso), esse Select é executado em um tempo muito pequeno: 5 segundos. Mas se eu adiciono apenas UMA coluna, que não está indexada, ele demora mais de 10 minutos. Mas detalhe: Eu não insiro a coluna nova no WHERE não. É apenas no Select:
Alguem sabe me dizer porque?
Obrigado!
Estou com o seguinte problema...
Eu tenho um indice que consiste em dois campos: Campo1 e Campo2. Quando eu faço o select:
select Campo1, Campo2 from Tabela where {Algumas Condicoes}E supondo que a tabela tenha 70 gigas (que é o meu caso), esse Select é executado em um tempo muito pequeno: 5 segundos. Mas se eu adiciono apenas UMA coluna, que não está indexada, ele demora mais de 10 minutos. Mas detalhe: Eu não insiro a coluna nova no WHERE não. É apenas no Select:
select Campo1, Campo2, Campo3 from Tabela where {As mesmas condicoes}Alguem sabe me dizer porque?
Obrigado!
Nildo
Curtidas 0
Respostas
Nildo
25/05/2004
Detalhe: A condição permanece a mesma, só adiciono uma coluna para ser mostrada. A rede aqui é de 100 mega bits, então não é problema de lentidão no tráfego..
Agradeço a quem puder me ajudar
Agradeço a quem puder me ajudar
GOSTEI 0
Vinicius2k
25/05/2004
nildo,
Estes dois artigos podem lhe ajudar bastante a entender a razão pela qual sua segunda querie está com a performance tão baixa e lhe forncece algumas soluções para melhorar o desempenho...
Eles não tratam especificamente do MySQL e sim do Firebird, mas a idéia é, basicamente, a mesma para qualquer servidor SQL...
http://www.warmboot.com.br/cgi-bin/firebase.cgi/artigo?ID=148
http://www.warmboot.com.br/cgi-bin/firebase.cgi/artigo?ID=150
Posso lhe adiantar que a inserção de apenas uma coluna na select influencia na performance, nem sempre notada, mas numa tabela de 70 GB, com certeza é perceptível... não uma diferença tão grande assim, acredito ter haver com os índices mesmo, mas isso vc entenderá lendo sobre PLANs que é o que trata o primeiro artigo.
Espero ter ajudado....
T+
Estes dois artigos podem lhe ajudar bastante a entender a razão pela qual sua segunda querie está com a performance tão baixa e lhe forncece algumas soluções para melhorar o desempenho...
Eles não tratam especificamente do MySQL e sim do Firebird, mas a idéia é, basicamente, a mesma para qualquer servidor SQL...
http://www.warmboot.com.br/cgi-bin/firebase.cgi/artigo?ID=148
http://www.warmboot.com.br/cgi-bin/firebase.cgi/artigo?ID=150
Posso lhe adiantar que a inserção de apenas uma coluna na select influencia na performance, nem sempre notada, mas numa tabela de 70 GB, com certeza é perceptível... não uma diferença tão grande assim, acredito ter haver com os índices mesmo, mas isso vc entenderá lendo sobre PLANs que é o que trata o primeiro artigo.
Espero ter ajudado....
T+
GOSTEI 0
Nildo
25/05/2004
Muito obrigado vinicius!
Vou dar uma lida nos artigos! :D
Vou dar uma lida nos artigos! :D
GOSTEI 0
Vinicius2k
25/05/2004
blz. :wink:
qq coisa posta outra vez... se eu puder ajudar, conte comigo.
T+
qq coisa posta outra vez... se eu puder ajudar, conte comigo.
T+
GOSTEI 0