2017-02-25 17 views
0

私はelasticsearchを初めて使っています。私はちょっと混乱していますが、elasticsearch matchとmultimatch queryは混乱しています。両方のクエリタイプの違いは何ですか?それらのそれぞれを使用する必要がある場合それぞれのパフォーマンスの意味は何ですか?elasticsearchの一致とmultimatchのクエリタイプの違い

ありがとうございます。

+0

[documentation](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-multi-match-query.html)は、 'multi_match'が複数のフィールドを照会し、 'match'は単一のフィールドを使用します。不明なことがありますか? – Romoku

+0

私はまた、アプリケーションでmatchの代わりにmulti_matchを使用することのパフォーマンスの影響を知りたいと思っています。 –

答えて

0

multimatchmatchとの相違点は、the documentationと簡単に分かります。あなたは、matchクエリからmultimatchクエリーのビルドを見ることができるように

GET /_search 
{ 
    "query": { 
    "bool": { 
     "should": [ 
     { "match": { "title":   "quick brown fox" }}, 
     { "match": { "title.original": "quick brown fox" }}, 
     { "match": { "title.shingles": "quick brown fox" }} 
     ] 
    } 
    } 
} 

:たとえば、タイプmost_fields

GET /_search 
{ 
    "query": { 
    "multi_match" : { 
     "query":  "quick brown fox", 
     "type":  "most_fields", 
     "fields":  [ "title", "title.original", "title.shingles" ] 
    } 
    } 
} 

multimatch問合せは、これは、として実行されます。だから、私は、パフォーマンスの問題はあなたのクエリの構造に関連していると思います。より生産的であるかどうかによって、別のクエリを選択することができます。

multimatchクエリのもう1つのタイプは、most_fieldsタイプの同じ状況です。例えば、Phrase type,most_fields type

+0

best_fieldとcross_fieldが与えられた例に対してどのように機能するかについても詳しく説明できますか? most_field explainationありがとう。 –

関連する問題