[firebase-br] Resultado do Testes entre Indices Integer e Char
Luciano franca
luapfirebird em yahoo.com.br
Sex Ago 2 15:57:44 -03 2013
Mestre mais uma vez você foi em cima.
Peguei o banco do meu maior Cliente cerca de 2 GB de tamanho
Fiz a conversão trocando todos os campo que tem Indices de Integer para Char(30) e outro para VarChar(30)
Fiz testes com o IBexpert onde é possivel ver o cronometro dele e para minha surpresa não tem diferença alguma de desempenho em
querys de consulta com cerca de 200.000 registros de produtos e de clientes o tempo é exatamente o mesmo nem parece que o tipo de dados é outro, fiz varios "Execute All" cerca de 10 isso testando nos dois bancos com tipos diferentes
todos os Plans das consulta que testei foram por indices e as consultas tinha Inner Join e Left Join.
Eu fiz testes com Char(30) e VarChar(30) e o resultado é o mesmo não há diferenças então acredito que eu deva ficar com Char
o que os colegas acham ?
Vejam quando disse que o tempo é o mesmo ou seja empata nos segundos e da alguma diferença nos milesimos de segundos mais cada hora que
eu fazia o testes era aleatorio o ganho ou seja uma hora o Banco com Integer ganhava por milesimos de segundos outra hora o Banco com Char e VarChar ganhava então é empate os testes foram executados num Core I7 3.4 GHZ com 24 GB de ram e SSD no lugar de HD.
________________________________
De: Carlos H. Cantu <listas em warmboot.com.br>
Para: lista em firebase.com.br
Enviadas: Sexta-feira, 2 de Agosto de 2013 13:20
Assunto: Re: [firebase-br] RES: Duvida sobre Indices Integer ou VarChar
Não acredito que cause alguma mudança perceptivel, mas o ideal é
você testar. Depois poste o resultado aqui.
[]s
Carlos H. Cantu
www.FireBase.com.br - www.firebirdnews.org
www.warmboot.com.br - blog.firebase.com.br
Lf> Cantu mais resumindo terei queda na performace em mudar de Integer para Varchar ?
Lf> qual seria melhor Varchar ou Char para indices ??
Lf>
Lf> De: Carlos H. Cantu <listas em warmboot.com.br>
Lf> Para: FireBase <lista em firebase.com.br>
Lf> Enviadas: Quinta-feira, 1 de Agosto de 2013 10:00
Lf> Assunto: Re: [firebase-br] RES: Duvida sobre Indices Integer ou VarChar
Lf>
WO>> Por ejemplo, los números entre -32.768 y + 32.767 usan 2 bytes, ni más ni
WO>> menos; en cambio pueden necesitar hasta 6 bytes si se los guardará como
WO>> CHAR y hasta 7 bytes si se los guardará como VARCHAR (porque en este caso
WO>> se agrega un byte con ASCII 0 al final).
Lf> Não é bem assim... extraido da minha palestra do FDD esse ano:
Lf> Números são armazenados nas chaves como double precision (exceção é BIGINT)
Lf> Vantagens:
Lf> Para numeric/decimal, permite mudar p ou s sem ter que reindexar
Lf> Para smallint/integer, permite a conversão entre os tipos ou para um
Lf> tipo com escala, sem reindexar
Lf> Obs: Devido a falta de precisão do double precision, a busca é feita
Lf> por um intervalo, entre o maior valor anterior e menor valor posterior
Lf> ao desejado.
Lf> []s
Lf> Carlos H. Cantu
Lf> www.FireBase.com.br - www.firebirdnews.org
Lf> www.warmboot.com.br - blog.firebase.com.br
Lf> ______________________________________________
Lf> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Lf> Para saber como gerenciar/excluir seu cadastro na lista, use:
Lf> http://www.firebase.com.br/fb/artigo.php?id=1107
Lf> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Lf>
______________________________________________
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