Léxico de TI › Bancos de dados › Índice GIN

Índice GIN

Bancos de dados Svenska → Atualizado: 2026-10-01

Generalized Inverted Index do PostgreSQL — um índice invertido otimizado para valores com vários componentes: arrays, JSONB, busca textual e trigramas. Responde rápido à pergunta "isto contém este elemento?".

Casos de uso: WHERE tags @> '{postgres}' (array contém), busca por chave em JSONB (data @> '{"status":"active"}'), busca textual (tsvector @@ tsquery) e busca aproximada por trigramas (pg_trgm, para LIKE '%foo%'). Um índice invertido mapeia cada sub-valor → a lista de linhas que o contêm, exatamente como o índice remissivo de um livro. A contrapartida: busca rápida, mas escrita mais cara, já que atualizar uma linha mexe em várias entradas do índice; o fastupdate e a pending list do GIN amenizam o problema. Diferente do B-tree (igualdade e ordem sobre o valor inteiro) e do GiST (geometria e proximidade). É a escolha padrão para JSONB e busca textual no Postgres.

← Voltar ao léxico