запрос: MPN: "MEM-CF-512-AOK"SOLR EdgeNGramFilter вернуть неверный ответ
Solr ответ:
{
"responseHeader": {
"status": 0,
"QTime": 1,
"params": {
"fl": "id, mpn, name",
"indent": "true",
"q": "mpn:\"MEM-CF-512MB-AOK\"",
"_": "1375801439480",
"wt": "json"
}
},
"response": {
"numFound": 2,
"start": 0,
"docs": [
{
"id": "1340120",
"mpn": "MEM-CF-256MB-AOK",
"name": "256MB CompactFlash"
},
{
"id": "1340129",
"mpn": "MEM-CF-512MB-AOK",
"name": "512MB CompactFlash"
}
]
},
"spellcheck": {
"suggestions": [
"correctlySpelled",
true
]
}
}
ожидается:
{
"id": "1340129",
"mpn": "MEM-CF-512MB-AOK",
"name": "512MB CompactFlash"
}
мне нужно искать:
1) MEM-CF-512MB-AOK
2) МЭМ-МВ-512
3) МЭМ-МВ-512-АО
4) М-CF-512-АОК
5) -CF-512-АОК
schema.xml:
<field name="mpn" type="text_general_edge_ngram" indexed="true" stored="true"/>
<fieldType name="text_general_edge_ngram" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.LowerCaseTokenizerFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="1" maxGramSize="50" side="front"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.LowerCaseTokenizerFactory"/>
</analyzer>
</fieldType>
я получаю сообщение об ошибке с этим: <токенизатор класс = «solr.KeywordTokenizerFactory» /> http://stackoverflow.com/a/4997599/397862 –
Несомненно, небольшая ошибка копирования-вставки. Вы не можете использовать фильтр в качестве токенизатора. Может быть полезно прочитать [Solr описание Анализаторов] (http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#Analyzers) – femtoRgon
извините, я новичок в solr. спасибо, запрос «mpn: * - cf-512mb-a *» отлично работает, но время запроса очень \t высокий «QTime»: 2466, Почему? –