2014-03-05 65 views
0

採用彈性搜索搜索給了我下面的控制檯彈性搜索給出以下錯誤控制檯軌

{「_shards」錯誤:{「總」:5,「成功」:0,「失敗」:5,」失敗「:[{」index「:」test「,」shard「:4,」reason「:」BroadcastShardOperationFailedException [[test] [4]];嵌套:ElasticSearchException [未能執行建議];嵌套:ElasticSearchIllegalArgumentException [[suggest ]不支持[size]];「},{」index「:」test「,」shard「:3,」reason「:」BroadcastShardOperationFailedException [[test] [3]];嵌套:ElasticSearchException [未能執行建議];嵌套:ElasticSearchIllegalArgumentException [[建議]不支持[size]];「},{」index「:」test「,」shard「:2,」reason「:」BroadcastShardOperationFailedException [[test] [2]];嵌套:ElasticSearchException [未能執行建議]; nes ted:ElasticSearchIllegalArgumentException [[suggest]不支持[size]]; 「},{」index「:」test「,」shard「:0,」reason「:」BroadcastShardOperationFailedException [[test] [0]];嵌套:ElasticSearchException [未能執行建議];嵌套:ElasticSearchIllegalArgumentException [[suggest]不支持[size]]; 「},{」index「:」test「,」shard「:1,」reason「:」BroadcastShardOperationFailedException [[test] [1]];嵌套:ElasticSearchException [未能執行建議];嵌套:ElasticSearchIllegalArgumentException [[suggest]不支持[size]]; 「}]}}

無法理解可能的原因我使用的輪胎/果報工作者爲此 的ES版本是0.9.9

這是我的映射代碼

{ 
    "test" : { 
"document" : { 
    "properties" : { 
    "artikelnummer" : { 
     "type" : "string", 
     "index" : "not_analyzed", 
     "omit_norms" : true, 
     "index_options" : "docs" 
    }, 
    "bestelltext" : { 
     "type" : "multi_field", 
     "fields" : { 
     "bestelltext" : { 
      "type" : "string" 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "bezeichnung" : { 
     "type" : "multi_field", 
     "fields" : { 
     "bezeichnung" : { 
      "type" : "string" 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     }, 
     "suggest" : { 
      "type" : "string", 
      "analyzer" : "suggest_analyzer", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "bezeichnung_zusatz" : { 
     "type" : "multi_field", 
     "fields" : { 
     "bezeichnung_zusatz" : { 
      "type" : "string" 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "dimension" : { 
     "type" : "string", 
     "include_in_all" : false 
    }, 
    "eannummer" : { 
     "type" : "string", 
     "index" : "not_analyzed", 
     "omit_norms" : true, 
     "index_options" : "docs" 
    }, 
    "gewicht" : { 
     "type" : "float", 
     "include_in_all" : false 
    }, 
    "gruppe" : { 
     "type" : "multi_field", 
     "fields" : { 
     "gruppe" : { 
      "type" : "string" 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "gruppe_nummer" : { 
     "type" : "string", 
     "index" : "not_analyzed", 
     "omit_norms" : true, 
     "index_options" : "docs", 
     "include_in_all" : false 
    }, 
    "gruppe_zusatz" : { 
     "type" : "multi_field", 
     "fields" : { 
     "gruppe_zusatz" : { 
      "type" : "string" 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "hersteller" : { 
     "type" : "multi_field", 
     "fields" : { 
     "hersteller" : { 
      "type" : "string" 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     }, 
     "unchanged" : { 
      "type" : "string", 
      "index" : "not_analyzed", 
      "omit_norms" : true, 
      "index_options" : "docs", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "hersteller_artikelnummer" : { 
     "type" : "string", 
     "index" : "not_analyzed", 
     "omit_norms" : true, 
     "index_options" : "docs" 
    }, 
    "hersteller_nummer" : { 
     "type" : "string", 
     "index" : "not_analyzed", 
     "omit_norms" : true, 
     "index_options" : "docs", 
     "include_in_all" : false 
    }, 
    "hierarchie" : { 
     "type" : "multi_field", 
     "fields" : { 
     "hierarchie" : { 
      "type" : "string", 
      "index_analyzer" : "hierarchie_index_analyzer", 
      "search_analyzer" : "keyword", 
      "include_in_all" : false 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "infotext" : { 
     "type" : "multi_field", 
     "fields" : { 
     "infotext" : { 
      "type" : "string" 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "langtext" : { 
     "type" : "multi_field", 
     "fields" : { 
     "langtext" : { 
      "type" : "string" 
     }, 
     "ngram" : { 
      "type" : "string", 
      "index_analyzer" : "ngram_index_analyzer", 
      "search_analyzer" : "ngram_search_analyzer", 
      "include_in_all" : false 
     } 
     } 
    }, 
    "listenpreis_brutto" : { 
     "type" : "float", 
     "include_in_all" : false 
    }, 
    "listenpreis_netto" : { 
     "type" : "float", 
     "include_in_all" : false 
    }, 
    "matchcode" : { 
     "type" : "string", 
     "index" : "not_analyzed", 
     "omit_norms" : true, 
     "index_options" : "docs" 
    }, 
    "mengeneinheit" : { 
     "type" : "string", 
     "include_in_all" : false 
    } 
    } 
} 

}}

+0

你在映射中的某處使用'size'關鍵字嗎? –

+0

不存在任何大小關鍵字 – Anish

+0

@ Pierre-LouisGottfrois pl查看我的編輯 – Anish

回答

0

這什麼都沒有做與你的映射。這是一個與叫你正在做搜索做。Somewhe你會在你的搜索API調用中使用「大小」關鍵字。

看起來您正在使用提示器端點,並且您已在「提示」關鍵字的正下方獲得了「大小」關鍵字。這裏是我的PHP代碼的一個例子(我知道它不在Ruby中,但它仍然說明了這一點)。

$searchParams['body']['suggest'] = array(
     'text' => strtolower(trim(urldecode($query))), 
     'simple_phrase' => array(
      'phrase' => array(
       'field' => "name", 
       'size' => 4, 
       'real_word_error_likelihood' => 0.95, 
       'confidence' => 1.0, 
       'gram_size' => 1, 
       'direct_generator' => array(
        array(
         "field" => "name", 
         "suggest_mode" => "always", 
         "min_word_len" => 1 
        ), 
        array(
         "field" => "name_reverse", 
         "suggest_mode" => "always", 
         "min_word_len" => 1, 
         "pre_filter" => "reverse", 
         "post_filter" => "reverse" 
        ) 
       ) 
      ) 
     ) 
    ); 

您會看到我如何在短語suggester下面提供「size」關鍵字,而不是直接在suggester下面。