Задать вопрос
WebDev2030
@WebDev2030
Битриксоид до мозга и костей

Почему sphinx долго выполняет запрос «c c c c c c»?

Всем привет есть запрос состоящий из одинарных русских букв, например "с с с с с с". Если вставить одну букву, например "с", то запрос выполняется быстро. Поиск из двух и более букв выполняется дольше секунды. Если выполнить show meta то видно что каждое добавление буквы увеличивает docs кратно количеству букв. Документов в индексе около 130к.

Как сделать так чтобы поиск был быстрым вне зависимости от количества букв?
  • Вопрос задан
  • 68 просмотров
Подписаться 2 Простой 3 комментария
Решения вопроса 1
WebDev2030
@WebDev2030 Автор вопроса
Битриксоид до мозга и костей
Нашел параметр expansion_limit выставил на 40. Сейчас поиск отрабатывает быстрее значительно. Также добавили фильтрацию по средней длине слова, если в запросе средняя длина слова меньше определенного значения, то выдаём ошибку что запрос не корректный (сейчас пока значение 2). Также есть ограничение по количеству слов в запросе.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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