我有一个包含以下数据的弹性搜索索引:
" A-Team" (作为例子)
我的索引设置为:
"index": {
"number_of_shards": "1",
"provided_name": "tyh.tochniyot",
"creation_date": "1481039136127",
"analysis": {
"analyzer": {
"whitespace_analyzer": {
"type": "whitespace"
},
"ngram_analyzer": {
"type": "custom",
"tokenizer": "ngram_tokenizer"
}
},
"tokenizer": {
"ngram_tokenizer": {
"type": "ngram",
"min_gram": "3",
"max_gram": "7"
}
}
},
当我搜索:
_search
{
"from": 0,
"size": 20,
"track_scores": true,
"highlight": {
"fields": {
"*": {
"fragment_size": 100,
"number_of_fragments": 10,
"require_field_match": false
}
}
},
"query": {
"match": {
"_all": {
"query": "Tea"
}
}
}
我希望得到重点结果:
"highlight": {
"field": [
"The A-<em>Tea</em>m"
]
}
但我根本没有任何亮点。
我使用空格进行搜索和使用ngram进行索引的原因是我不希望在搜索阶段打破我正在搜索的单词,就像我正在搜索&#34; Team&#34;它会找到我&#34;茶&#34;,&#34; eam&#34;,&#34;团队&#34;
谢谢
答案 0 :(得分:0)
问题是我的Analyzer和搜索分析器在_all字段上运行。 当我在特定字段上放置Analyzer属性时,突出显示开始工作。