Вопрос

Я использую Solr 1.3. Недавно QA сообщает об ошибке для функциональности поиска, что нет результата для слова «Джеки». Но, когда я смотрел в документ, используя Луки, есть много документов со словом «Джеки», например,

 Jackie Holding, Kumar Rameshwaram, Morris Jackson
 Jackie Holding, Brendon Wessel, Smith McShlam
 Jackie Redmond, John Smith, Martha Doum
 Trevor Harris, Jackie Collins, Martin Green

Если я ищу любой термин, отличный от Jackie, Solr вернуть документы. Но никаких документов для слова «Джеки». Даже я пробую это со всем анализатором, Solr возвращает никакой документа.

Я не могу выяснить проблему. Помогите пожалуйста мне.

Это было полезно?

Решение

Пара идей:

  • попробуйте установить debugQuery=on При запросе Jackie в консоли администратора Solr. Посмотрите, как это анализируется.
  • Убедитесь, что «Jackie» не находится в списке стоп-слова (Stopwords.txt)
  • Попробуйте добавить «Jackie» в список защищенных слов (ProtWords.txt), чтобы он не был вытеснен.

Другие советы

Убедитесь, что в вашей схеме фабрики фильтров для вашего запроса и анализаторов индекса соответствуют (например, у них должна быть такая же конфигурация stemming). Конечно, если вы изменили свою схему с момента индексации, то фильтры анализатора запросов должны соответствовать те, которые использовались в состоянии индекса, или вам придется повторно индексировать.

Проблема, которую вы описываете, как правило, происходит, когда анализатор запросов использует различную конфигурацию stemming, чем анализатор индекса (например, используя разные языки).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top