Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Хочу прикрутить у себя на сайте поисковую систему Sphinx и вот хочу спросить кто какие плагины использовал для Laravel 5
вот мне попался этот https://github.com/sngrl/sphinxsearch
Как вы считаете остановиться на нем или может есть более лучшие разработки?
Не в сети
ElasticSearch. Без вариантов)
Не в сети
Неужели такая огромная будет БД? ))
На одном проекте хорошо разобрался и реализовал FullText (мускл 5.7 InnoDB) и в итоге при размере БД в 6КК строк в основном в трех таблицах (1гиг с индексами), ищет почти мгновенно. И никакие надстройки не понадобились.
Не в сети
Azmandus, я может быть, чего не знаю.. но как на mysql сделать нечеткий поиск, например?
"почти мгновенно" - это вообще ниочем. Сколько в сухих цифрах?
Не в сети
Не, нечеткий никак, тут действительно ElasticSearch нужен будет.
Хотя смотря какая задача, есть библиотеки синонимов для полнотекстового, а можно просто побаловаться с зачисткой окончаний слов - "ручка", "ручку", "ручкой" искать как "ручк".
Сухие цифры - с отключенным кешированием, в т.ч. и SQL_NO_CACHE во всех запросах, при всех параметрах фильтра, и наличии слова для поиска (разные для каждого теста), document в браузере получаю в основном за 0,07-0,5 сек. Сам запрос, в отдельности, протестировать в ближайшее время не смогу. Как то так.
Не в сети
На одном проекте хорошо разобрался и реализовал FullText (мускл 5.7 InnoDB) и в итоге при размере БД в 6КК строк в основном в трех таблицах (1гиг с индексами), ищет почти мгновенно.
У меня в одном проекте с ~5 млн строк (в одной таблице) поначалу тоже был FULLTEXT-индекс от MySQL, но, видимо, у нас разная структура данных и/или поиска. У меня каждый документ это где-то 50 индексируемых слов, а каждый запрос может содержать десяток слов в разной конфигурации (т.е. с операторами). На MySQL в какой-то момент времени поиск стал занимать секунды, перешел на Sphinx - поиск сократился до долей секунды (на 2 порядка).
Еще большой плюс Sphinx (либо отдельной системы хранения вроде Redis только для поиска) в том, что добавлять/обновлять данные в огромной таблице с FULLTEXT под нагрузкой нереально. У меня импорт 100к записей, если не отключать сайт, занимал часы, при этом хоть сайт и был скорее жив, чем мертв (для пользователей), но все жутко тормозило из-за параллельного обновления индекса. А Sphinx - это отдельная надстройка, он может легко обновляться частично и/или на лету без особых проблем с производительностью.
Минус только в том, что изначально связку Sphinx и MySQL нужно настроить, но зато дальше полет нормальный.
хочу спросить кто какие плагины использовал для Laravel 5
Насчет плагинов ничего не могу сказать (проект не на Laravel), но зачем они нужны, если у Sphinx такой же интерфейс, что и у MySQL?
Не в сети
Страницы 1