Junior — Middle
Em que casos é apropriado usar um índice baseado em hash numa base de dados PostgreSQL?
sobes.tech IA
Resposta da IA
No PostgreSQL, é adequado usar um índice baseado em hash quando precisa de realizar operações de igualdade (=) muito rapidamente numa coluna específica. Estes índices são eficientes para procurar coincidências exatas, por exemplo, ao procurar por um identificador único ou chave.
No entanto, deve-se ter em conta:
- Os índices de hash não suportam operações de pesquisa por intervalo (
<,>,BETWEEN). - Em versões mais recentes do PostgreSQL (a partir da 10), os índices de hash tornaram-se mais confiáveis e suportam WAL (registo de transações).
- Para a maioria dos casos, é melhor usar um índice B-tree, pois é mais versátil.
Exemplo de uso de um índice de hash:
CREATE INDEX idx_hash_userid ON users USING hash(user_id);
É ideal se frequentemente executa consultas como:
SELECT * FROM users WHERE user_id = 12345;
Se precisar de consultas por intervalo ou ordenação, é melhor usar um índice B-tree.