2016-10-12 9 views
0

_msearchは、一度に複数の検索に使用されます。これはネットワークのオーバーヘッドを削減するため、これだけでパフォーマンスが向上します。 今私は_searchエンドポイントのような_msearchを単一のクエリで使用しています。私は将来のバッチ処理のためにこの仕組みを整えたいと思っていました。私がバッチ処理を利用するまで、これはオーバーヘッドを導入するでしょうか? _msearchは、単一クエリの場合は_searchとまったく同じですか?_msearchと_searchのパフォーマンス

答えて

1

1つのクエリを持っていても、_msearchエンドポイントはそれ以上の繰り返しを行い、単一の検索クエリを作成する必要があるという意味で、非常にオーバーヘッドがあります。

しかし、このオーバーヘッドは明らかに無視できるものと見なします。

+0

はい私は同意します。私は、全体のパフォーマンスを向上させるために、elasticsearchのようなものを質問して賢明なことをするのを恐れていました。何かのスマートキャッシングのようなもの、第2のもののための第1のクエリの結果を利用するため、等(もしそれらが同じインデックスの場合)。 – alkis

+1

**任意のクエリ**は、他のクエリを処理するときにキャッシュされたものから利益を得る可能性があります。マルチ検索エンドポイントでも通常の検索インフラストラクチャが活用されていますが、マルチ検索は、バルククエリが複数のインデックスクエリをラップするのと同じように、複数のクエリを1回で縮小する方法に過ぎません。 – Val

+0

。 upvotedとマークされています。楽しんでください – alkis

0

_msearchはマルチ検索です。 マルチ検索APIを使用すると、同じAPI内で複数の検索リクエストを実行できるため、_searchより少しオーバーヘッドがかかります。

関連する問題