2016-12-23 63 views
0

我有木瓦過濾器的問題。Elasticsearch查詢字符串與木瓦過濾器不工作

我的設置如下木瓦:

"filter_shingle": { 
     "type": "shingle", 
     "min_shingle_size": 2, 
     "max_shingle_size": 3, 
     "output_unigrams": false 
    } 

    "analyzer_1": { 
     "type": "custom", 
     "tokenizer": "standard", 
     "filter": ["asciifolding","lowercase","filter_shingle"] 
    } 

我想到場數據例子: 「我的名字是」,用此過濾器procee後,數據成爲:

...

「field1」使用「analyzer_1」

查詢字符串在這裏(不要使用「match_phrase」)

"query_string" : { 
    "default_operator": "AND", 
     "fields" : ["field1"], 
     "query" : "My name", 
     "analyzer": "keyword" 
    } 

但是沒有數據檢索,當我使用映射和分析器創建索引時,沒有事件拋出。

誰能幫幫我,謝謝你這麼多(對不起,差EN)

回答

0

既然你在你的query_string查詢使用keyword分析儀,需要在小寫輸入您的輸入,即my name代替My name ,因爲你的索引令牌是my name而不是My name

"query_string" : { 
    "default_operator": "AND", 
     "fields" : ["field1"], 
     "query" : "my name",  <-- change this 
     "analyzer": "keyword" 
    } 
+0

我嘗試小寫查詢值,但不工作:( –