Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Пытаюсь разобраться, но пока без результатов. Нужды моего поиска сводятся к тому, чтобы находить товары по их имени. Казалось бы, что тут легко подойдёт MySQL FULLTEXT, но нет. Имена товаров сложные - `APK2R AP-1D APE2 Apecs`, например.
Моя реализация поиска предусматривает сначала полнотекстовый поиск по имени продукта. И если там ничего не найдено - обычный like поиск. Но всё это бессильно против поиска по части имени с дефисом (и скорее всего есть какие-то ещё другие случаи). Т.е. поиск `AP-1D` ничего не даст. Как и поиск `AP1D` (пользователь легко может пропустить при поиске дефис)
Первый из списка выше - драйвер для Laravel Scout, который реализует идею полнотекстового поиска. Я подумал, что быть может я сам что-то делаю не так, но нет - поиск не работает достаточно точно. И результат тот же, что и у меня, даже немного хуже, т.к. не предусмотрена поиск like в случае неудачи полнотекстового поиска.
Дальше решил попробовать всеми восхваляемый вариант поиск с использованием Elasticsearch. И вот тут начались вопросы\проблемы с установкой.
1. Как запустить Elasticsearch локально? Указано, что он работает по-умолчанию через порт 9200.
2. Возможно ли потом будет запустить Elasticsearch на обычном виртуальном хостинге? Мой хостер hoster.by даёт много возможностей, но виратуальный хостинг - это не выделенный сервер, где можно всё крутить так, как хочется.
Страницы 1