Trilha Pleno Trilha

Banco de dados: índices GIN & JSONB

O curso parte da busca do catálogo de uma aplicação, que usava ILIKE em títulos jsonb e ignorava os índices GIN dessas colunas. Mostra como a classe de operadores decide o que um índice GIN atende. O jsonb_ops padrão não atende ILIKE; a gin_trgm_ops da pg_trgm indexa trechos de três caracteres. Depois vêm índices de expressão, que precisam bater caractere por caractere com a query, e o tamanho medido de jsonb_ops contra jsonb_path_ops. No fim vem a correção: dois índices substituídos e dois sem uso removidos.

O que você vai aprender

  • ✓Como a classe de operadores decide quais operadores um índice GIN atende
  • ✓O que o jsonb_ops padrão indexa e quais seis operadores ele registra
  • ✓Indexar buscas com ILIKE sobre texto extraído de jsonb com pg_trgm e gin_trgm_ops
  • ✓Criar índices de expressão que batem caractere por caractere com a query
  • ✓Comparar jsonb_ops e jsonb_path_ops em tamanho de índice e operadores suportados
  • ✓Remover índices GIN de colunas pelas quais nenhuma query filtra
Prévia grátis · Aula 1 3 min de leitura

Um índice GIN real, e uma query que nunca o tocou

O Catalog::SearchQuery é a classe por trás da busca do catálogo desta aplicação. Até 2 de setembro de 2026, ela filtrava cursos e aulas assim:

Ler a aula completa grátis →

Currículo

7 aulas
Digite para buscar...