2016-05-30 15 views
0

私は最終的にelasticsearchデータベースをセットアップし、その中にデータをインポートしました。Elasticsearch - field_value_factor、パラメータがありません

ときどきフロントエンドからデータを要求しようとすると、500エラー(時には時々ではない)が発生します。

私はPOSTMANからデータを要求しようとしました(ESエラーメッセージを見るために)。

私が得た:

{ 
    "error": "SearchPhaseExecutionException[Failed to execute phase [query], all shards failed; shardFailures {[9m4uVcf3TLmQ9Kr7z_fSpQ][text][0]: QueryPhaseExecutionException[[text][0]: query[filtered(function score (blended(terms: [url_words:test, domain_words:test, title:test, body:test]), functions: [{filter(*:*), function [org.elast[email protected]56319fc9]}{filter(*:*), function [org.elast[email protected]60b46f02]}]))->cache(_type:page)],from[0],size[25]: Query Failed [Failed to execute main query]]; nested: ElasticsearchException[Missing value for field [lang_en]]; }{[9m4uVcf3TLmQ9Kr7z_fSpQ][text][1]: QueryPhaseExecutionException[[text][1]: query[filtered(function score (blended(terms: [url_words:test, domain_words:test, title:test, body:test]), functions: [{filter(*:*), function [org.elast[email protected]3ca7d41e]}{filter(*:*), function [org.elast[email protected]63daf999]}]))->cache(_type:page)],from[0],size[25]: Query Failed [Failed to execute main query]]; nested: ElasticsearchException[Missing value for field [lang_en]]; }{[9m4uVcf3TLmQ9Kr7z_fSpQ][text][2]: QueryPhaseExecutionException[[text][2]: query[filtered(function score (blended(terms: [url_words:test, domain_words:test, title:test, body:test]), functions: [{filter(*:*), function [org.elast[email protected]27521539]}{filter(*:*), function [org.elastics[email protected]bac2b]}]))->cache(_type:page)],from[0],size[25]: Query Failed [Failed to execute main query]]; nested: ElasticsearchException[Missing value for field [lang_en]]; }{[9m4uVcf3TLmQ9Kr7z_fSpQ][text][3]: QueryPhaseExecutionException[[text][3]: query[filtered(function score (blended(terms: [url_words:test, domain_words:test, title:test, body:test]), functions: [{filter(*:*), function [org.elast[email protected]73bb4f5e]}{filter(*:*), function [org.elast[email protected]112dcf1c]}]))->cache(_type:page)],from[0],size[25]: Query Failed [Failed to execute main query]]; nested: ElasticsearchException[Missing value for field [lang_en]]; }{[9m4uVcf3TLmQ9Kr7z_fSpQ][text][4]: QueryPhaseExecutionException[[text][4]: query[filtered(function score (blended(terms: [url_words:test, domain_words:test, title:test, body:test]), functions: [{filter(*:*), function [org.elast[email protected]b650549]}{filter(*:*), function [org.elast[email protected]7fbe90f4]}]))->cache(_type:page)],from[0],size[25]: Query Failed [Failed to execute main query]]; nested: ElasticsearchException[Missing value for field [lang_en]]; }]", 
    "status": 500 
} 

をここでリクエストボディです:

{ 
     "query": { 
     "function_score": { 
      "query": { 
      "multi_match": { 
       "query": "test", 
       "minimum_should_match": "-25%", 
       "type": "cross_fields", 
        "tie_breaker": 0.5, 
        "fields": ["title^3", "body", "url_words^2", "domain_words^8"] 
      } 

      }, 
      "functions": [{ 
       "field_value_factor": { 
       "field": "rank", 
       "factor": 1 
      } 
     },{ 
         "field_value_factor": { 
       "field": "lang_en" 
      } 
       }] 
     } 
     }, 
     "from": 0, 
     "size": 25 
    } 

私はフィールドの欠損値は、[lang_en]問題であることを理解しています。私はGoogleの結果とesの周りに、しかし成功しなかった。

ESバージョン:1.5.2

任意のアイデア?

EDIT:

私は "行方不明" を追加しました:二field_value_factorに、0、しかし、私が代わりにこのエラーを得た:少なくとも一つの文書で

{ 
    "error": "SearchPhaseExecutionException[Failed to execute phase [query], all shards failed; shardFailures {[9m4uVcf3TLmQ9Kr7z_fSpQ][text][0]: SearchParseException[[text][0]: from[-1],size[-1]: Parse Failure [Failed to parse source [{\n  \"query\": {\n  \"function_score\": {\n   \"query\": {\n   \"multi_match\": {\n    \"query\": \"test\",\n    \"minimum_should_match\": \"-25%\",\n    \"type\": \"cross_fields\",\n     \"tie_breaker\": 0.5,\n     \"fields\": [\"title^3\", \"body\", \"url_words^2\", \"domain_words^8\"]\n   }\n\n   },\n   \"functions\": [{\n    \"field_value_factor\": {\n    \"field\": \"rank\",\n    \"factor\": 1\n   }\n  },{\n      \"field_value_factor\": {\n    \"field\": \"lang_en\",\n    \"missing\": 0\n   }\n    }]\n  }\n  },\n  \"from\": 0,\n  \"size\": 25\n }\n]]]; nested: QueryParsingException[[text] field_value_factor query does not support [missing]]; }{[9m4uVcf3TLmQ9Kr7z_fSpQ][text][1]: SearchParseException[[text][1]: from[-1],size[-1]: Parse Failure [Failed to parse source [{\n  \"query\": {\n  \"function_score\": {\n   \"query\": {\n   \"multi_match\": {\n    \"query\": \"test\",\n    \"minimum_should_match\": \"-25%\",\n    \"type\": \"cross_fields\",\n     \"tie_breaker\": 0.5,\n     \"fields\": [\"title^3\", \"body\", \"url_words^2\", \"domain_words^8\"]\n   }\n\n   },\n   \"functions\": [{\n    \"field_value_factor\": {\n    \"field\": \"rank\",\n    \"factor\": 1\n   }\n  },{\n      \"field_value_factor\": {\n    \"field\": \"lang_en\",\n    \"missing\": 0\n   }\n    }]\n  }\n  },\n  \"from\": 0,\n  \"size\": 25\n }\n]]]; nested: QueryParsingException[[text] field_value_factor query does not support [missing]]; }{[9m4uVcf3TLmQ9Kr7z_fSpQ][text][2]: SearchParseException[[text][2]: from[-1],size[-1]: Parse Failure [Failed to parse source [{\n  \"query\": {\n  \"function_score\": {\n   \"query\": {\n   \"multi_match\": {\n    \"query\": \"test\",\n    \"minimum_should_match\": \"-25%\",\n    \"type\": \"cross_fields\",\n     \"tie_breaker\": 0.5,\n     \"fields\": [\"title^3\", \"body\", \"url_words^2\", \"domain_words^8\"]\n   }\n\n   },\n   \"functions\": [{\n    \"field_value_factor\": {\n    \"field\": \"rank\",\n    \"factor\": 1\n   }\n  },{\n      \"field_value_factor\": {\n    \"field\": \"lang_en\",\n    \"missing\": 0\n   }\n    }]\n  }\n  },\n  \"from\": 0,\n  \"size\": 25\n }\n]]]; nested: QueryParsingException[[text] field_value_factor query does not support [missing]]; }{[9m4uVcf3TLmQ9Kr7z_fSpQ][text][3]: SearchParseException[[text][3]: from[-1],size[-1]: Parse Failure [Failed to parse source [{\n  \"query\": {\n  \"function_score\": {\n   \"query\": {\n   \"multi_match\": {\n    \"query\": \"test\",\n    \"minimum_should_match\": \"-25%\",\n    \"type\": \"cross_fields\",\n     \"tie_breaker\": 0.5,\n     \"fields\": [\"title^3\", \"body\", \"url_words^2\", \"domain_words^8\"]\n   }\n\n   },\n   \"functions\": [{\n    \"field_value_factor\": {\n    \"field\": \"rank\",\n    \"factor\": 1\n   }\n  },{\n      \"field_value_factor\": {\n    \"field\": \"lang_en\",\n    \"missing\": 0\n   }\n    }]\n  }\n  },\n  \"from\": 0,\n  \"size\": 25\n }\n]]]; nested: QueryParsingException[[text] field_value_factor query does not support [missing]]; }{[9m4uVcf3TLmQ9Kr7z_fSpQ][text][4]: SearchParseException[[text][4]: from[-1],size[-1]: Parse Failure [Failed to parse source [{\n  \"query\": {\n  \"function_score\": {\n   \"query\": {\n   \"multi_match\": {\n    \"query\": \"test\",\n    \"minimum_should_match\": \"-25%\",\n    \"type\": \"cross_fields\",\n     \"tie_breaker\": 0.5,\n     \"fields\": [\"title^3\", \"body\", \"url_words^2\", \"domain_words^8\"]\n   }\n\n   },\n   \"functions\": [{\n    \"field_value_factor\": {\n    \"field\": \"rank\",\n    \"factor\": 1\n   }\n  },{\n      \"field_value_factor\": {\n    \"field\": \"lang_en\",\n    \"missing\": 0\n   }\n    }]\n  }\n  },\n  \"from\": 0,\n  \"size\": 25\n }\n]]]; nested: QueryParsingException[[text] field_value_factor query does not support [missing]]; }]", 
    "status": 400 
} 

答えて

1

:あなたはどのようなデフォルト値を設定missingを使用した場合には、感覚(0、1、など)を行うような中で何をすべきか、それを伝えるためにあなたのfield_value_factor機能を変更する必要が

この問題は、ダムのAWS ESバージョン1.5.2で発生しました。

私の解決策:EC2インスタンスを作成し、手動でElasticsearchを展開します。

+0

クエリに 'missing'パラメータを追加する必要があります。単独でアップグレードするだけでは不十分です。したがって、私の答えはまだありません。 – Val

+0

はい、確かに、感謝の男! – IvRRimUm

+0

私たちはそれを理解してうれしいです。 – Val

1

を、フィールドlang_enは空、nullですか、単に存在しない。

{ 
    "field_value_factor": { 
     "field": "lang_en", 
     "missing": 1    <---- add this line 
    } 
} 
+0

こんにちは、ありがとうございます。エラーが発生しました。質問を確認してください、私はそれを更新しました! – IvRRimUm

+0

ああ、1.5.2では「不足」はまだ利用できませんでした。1.6にのみ登場しました。申し訳ありません、私の悪い。 – Val

+0

Okey、あなたはどう思いますか、回避策がありますか? – IvRRimUm

関連する問題