Olá Pessoal
tentei pesquisar se o Oracle permite a criação de índices Hash e a informação que encontrei na NET não é muito clara.
Umas fontes falam que não tem, outras falam que tem.
Bom no Oracle que uso aqui (versão 10g) não é permitido pelo que testei.
Alguém sabe mais sobre isso?
Estou perguntando pois tenho uma coluna em uma tabela chamada código_de_barras, a coluna tem 44 caracteres.
Frequentemente tem consultas do tipo:
SELECT
TituloID, TituloCod, TituloValor, TituloDtVenc
FROM Titulos
WHERE TituloCod = ‘43596000000000000001043062212723950306123020’
Estou pensando em criar um índice HASH nessa tabela, pois um índice B-TREE teria em sua composição a coluna chave acompanhada de ponteiros, e quanto maior for a coluna chave, maior será o tamanho do índice e por conseqüência mais lenta será a navegação por esse índice e recuperação dos dados.
Considerando que a tabela é grande, a altura da arvore do índice seria de altura razoável, e pensando que as chaves que compoem a arvore tem tamanho 44, isso realmente seria lento, comparado a um índice Hash que faria provavelmente 1 acesso para encontrar o dado no disco.
qualquer dica é bem vinda.
[]’s Wiliam