1.2 - Índice Hash
Essa técnica é indicada para campos grandes onde um índice b-tree geraria um arquivo muito grande.
Vamos ver um exemplo. Suponha que tenhamos uma tabela para cadastro de Boletos Bancários. Os campos mais comuns de um boleto bancário são:
Se fôssemos criar um índice b-tree para o campo de código de barras, esse arquivo teria 44 bytes para o registro do número do código de barras e mais 8 bytes para a localização do bloco. Perceba que cada registro precisa de 52 bytes. Uma linha de registro da tabela de boletos bancários possui 4 bytes para a chave primária, 44 bytes para o código de barras, 4 bytes para a data de vencimento e 4 bytes para o valor, totalizando 56 bytes. Veja que o tamanho do índice (52 bytes por linha) é praticamente o mesmo tamanho do registro da tabela (56 bytes por linha). Assim, o uso do índice pode não ser tão eficiente quanto o desejado, pois uma pesquisa teria que varrer um arquivo muito grande.
Veja a seguir como isso é feito.