Как реализовать full-text search в PostgreSQL?

Middle
211 просмотров
AFK Offer AI

PostgreSQL имеет встроенный FTS. Создаёшь tsvector-колонку с GIN-индексом: ALTER TABLE ADD COLUMN search_vector tsvector, CREATE INDEX ON table USING gin(search_vector). Ищешь через WHERE search_vector @@ to_tsquery('слово'). Для русского языка ставь конфигурацию 'russian'. Обновляй вектор триггером при INSERT/UPDATE. Поддерживает ранжирование ts_rank, подсветку ts_headline, стемминг. Для большинства задач достаточно без Elasticsearch.

Следующий вопрос

Как находить goroutine leaks в тестах?