TGViewer
Go in Action Go in Action @go_in_action · 4.11K subscribers
Post #4983 2.43K
Полнотекстовый поиск на Go без Elasticsearch: Bleve как альтернатива

Когда в проекте возникает задача поиска, первая мысль — поднимать Elasticsearch. Но что, если не хочется тащить внешний сервис, возиться с кластеризацией и поддерживать ещё одну точку отказа? Для Go есть Bleve — встраиваемая библиотека, которая работает внутри вашего приложения, индексирует любые структуры и не требует отдельного сервера.

В гайде разбирают всё по делу:
— создание индекса и простой поиск с ранжированием по BM25;
— кастомные маппинги полей: стемминг, стоп-слова, исключение полей из индекса;
— мультиязычный поиск через IndexAlias — один виртуальный индекс поверх нескольких;
— курсорная пагинация с SearchAfter (чтобы не было дублей и пропусков при обновлении данных);
— настройки производительности Scorch: воркеры, размер сегментов, пороги мёржа.

Bleve — это не замена Elasticsearch для больших распределённых систем, но идеальный вариант, когда нужен полнотекстовый поиск без лишней инфраструктуры и с полным контролем.

Код, примеры и нюансы конфигурации — в материале: https://tproger.ru/translations/polnotekstovyj-poisk-na-go-bez-elasticsearch---gajd-po-bleve
  • 🔥 3
  • 👍 2
More from @go_in_action
  1. Sep 16, 2026Разница между Go-разработчиком с зарплатой в 100–200 тысяч и 500 тысяч не в количестве нап…
  2. Mar 31, 2026Улучшаем Dockerfile: от примитивной базы к multi-stage-решению Dockerfile можно составить…
  3. Mar 5, 2026Победителями премии Тпрогер 🐀становятся... Здесь играет барабанная дробь и интригующая му…
  4. Jan 27, 2026Я решил написать ухудшенный UUID по ничтожнейшим из причин Вчера я баловался с проектом AP…
  5. Jan 27, 2026Go рухнул с 7 на 16 место в TIOBE: пора ли российским компаниям пересмотреть технологическ…
  6. Jan 27, 2026PostgreSQL RLS в Go, Часть 2: Архитектура Highload. Паника, гонки и 10 000 партиций В перв…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →