@Oyaseo
beginner programmist

Как лучше реализовать систему поиска?

Есть 250.000 объектов в базе и страница, которая должна выводить все, а так же нужно реализовать поиск по этим объектам. Способов тысячи, но мне бы хотелось эффективный, чтобы не сильно грузить базу, возможно кэшировать и т.д. посоветуйте пожалуйста что нибудь!
  • Вопрос задан
  • 375 просмотров
Решения вопроса 1
@deliro
Если только это
объект с вхождением подстроки в наименование, например

- Postgres + GiN/GiST индекс на поле наименования gin_trgm_ops (gist_trgm_ops). Создаётся так:
create index title_idx on your_table using gin(title gin_trgm_ops);

Разница gin/gist в двух словах:
По gin быстрее искать, но дольше создавать, gist наоборот.

Если что-то больше (не только по одному полю, ранжирование) - Full Text Search. Тут выбор за тобой. Sphinx, ElasticSearch, Postgres, MongoDB.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
я за sphinx, но для 250 000 можно и Постгресом отделаться
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы