@ilnovikov

Как сделать поиск по базе данных с выводом результатов по мере ввода запроса?

У меня есть небольшая база данных товаров, штук на 20. Я хочу написать к каждому ключевые слова и сделать страницу с поиском по этим товарам на основе ключевых слов. При этом страниц у этих товаров на сайте нет и не будет, только названия и свойства в БД. Их надо вывести в карточки.

Хорошо, если карточки товаров будут выводиться по мере ввода запроса, как на https://www.artlebedev.ru/search/

Какие существуют готовые решения для такой задачи?
  • Вопрос задан
  • 235 просмотров
Пригласить эксперта
Ответы на вопрос 1
mayton2019
@mayton2019
Bigdata Engineer
База данных в таких случаях не подходит. Она не умеет индексировать "по ключевым словам". И выражения с LIKE обычно дают плохие планы выполнения т.к. искомое стоит в середине строки. Классический базёвый индекс в таких случаях не работает. Можно поробовать оффлайновый индекс по товарам с использованием Apache Lucene. Но это потребует определённых усилий по подготовке и актуализации такого индекса. Грубо говоря его надо постоянно синхронизировать по новым товарам.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы