2016-02-05 2 views
0

Один из моих документов имеет атрибут title со значением Poésie pour pouvoir. Когда я запрашиваю q=title:poesie, результаты не найдены. q=title:poesie pour находит документ.Solr: один запрос слова не соответствует индексированному значению трех слов

title имеет тип text. Отрывок из моей schema.xml:

<fieldType name="text" class="solr.TextField" positionIncrementGap="100"> 
    <analyzer type="index"> 
     <tokenizer class="solr.WhitespaceTokenizerFactory"/> 
     <filter class="solr.ASCIIFoldingFilterFactory" /> 
     <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> 
     <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" 
       catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/> 
     <filter class="solr.LowerCaseFilterFactory"/> 
     <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/> 
     <filter class="solr.SnowballPorterFilterFactory" language="German2"/> 
     <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> 
    </analyzer> 
    <analyzer type="query"> 
     <tokenizer class="solr.WhitespaceTokenizerFactory"/> 
     <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/> 
     <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> 
     <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" 
       catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/> 
     <filter class="solr.LowerCaseFilterFactory"/> 
     <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/> 
     <filter class="solr.SnowballPorterFilterFactory" language="German2"/> 
     <filter class="solr.RemoveDuplicatesTokenFilterFactory"/> 
    </analyzer> 
</fieldType> 

ответ

0

Второй запрос не поиск в поле заголовка только - это также поиск поле поиска по умолчанию. Запрос анализируется как «title: poesie default_field: pour». Вторая часть - это то, что генерирует хит.

Вы можете использовать параметр debugQuery, чтобы увидеть, как обрабатывается ваш запрос. Используйте страницу под страницей администратора Solr, чтобы узнать, почему значение названия не соответствует (введите «Poeseie pour pouvoir» под «индексированным» значением и «poesie» под значением запроса).

+0

Спасибо! Ошибка новичков. Это объясняет совпадение «title: poesie pour», но «title: poesie + pour» по-прежнему не дает удовлетворительных результатов. Почему это не соответствует? – Daniel

+0

Как уже упоминалось, используйте страницу анализа в интерфейсе администратора Solr, чтобы увидеть, как значения преобразуются, почему конечные токены не совпадают. – MatsLindh

Смежные вопросы