2014-03-05 37 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下面。