[firebase-br] Ajudinha com índice

Edson T. Marques marques em oriontec.com.br
Seg Jun 13 11:41:49 -03 2005


Olá pessoal;

Oque é entendido como um "bom índice" quando se trata de criar índices 
com vários campos.

Se ninguém souber a idéia oficial, pelomenos me digam como é que vocês 
fazem aí nos seus bancos de dados quando precisam criar índices com 
vários campos.

O caso é que eu tenho uma tabela enorme de notas fiscais e sempre que é 
incluída/alterada uma nota é necessário verificar se ela não está sendo 
repetida segundo os valores de alguns campos que, quando não estão null, 
não podem ter o mesmo valor para mais de uma nota. É meio que uma chave 
alternativa (alternate key), mas não é exatamente uma chave alternativa 
porque os campos envolvidos podem ser null. E quando alguns deles são 
null os valores dos demais podem se repetir para mais de uma Nota.

Assim criei consultas, nos triggers de before insert e before update, 
para fazer as checagens.
Eu não tinha criado índices para essas consultas e as operações de 
inserção/alteração estavam ficando lentas, a medida que o numero de 
registros aumentava.

Resolví então criar os tais índices para melhorar a performance das 
checagens. Aí, gostaria da opinião de vocês.
Sob o ponto de vista da fragmentação dos valores dos campos nos 
registros como o índice fica melhor? Se eu dispor do mais fragmentado 
para o menos fragmentado ou o contrário? Qual critério que vocês usam?

Desde já agradeço. Muitissimo obrigado.
[]'s
Edson






Mais detalhes sobre a lista de discussão lista