Busca sem Elasticsearch
Quando o volume de artigos e transações começou a crescer, a busca simples com LIKE parou de escalar. A escolha óbvia do mercado seria adicionar Elasticsearch. Não foi o que fizemos.
O que usamos
O Postgres tem full-text search nativo via tsvector/tsquery, além das extensões pg_trgm e unaccent para lidar com acentuação e erros de digitação em português.
Os números
Para o nosso volume de dados (dezenas de milhares de registros, não bilhões), a diferença de performance é imperceptível para quem usa — e economizamos um serviço inteiro de infraestrutura para manter no ar.
Quando isso não seria suficiente
Se um dia precisarmos de busca semântica, facetada em larga escala ou relevância muito mais sofisticada, Elasticsearch volta pra mesa. Até lá, simplicidade vence.