2017-09-03 10 views
0

私はETLの目的でlogstashを使用しており、Elastic検索で3つのインデックスを持っています。並列化を改善するために3つの異なるlogtashプロセスまたは一度に1つのインデックスにドキュメントを挿入する必要があります。同時に弾性検索で複数のインデックスにインデックスを付ける

マイ弾性検索クラスタ構成は次のようになります。 3つのデータノード 1つのクライアントノード

3のデータノード - 64ギガバイトのRAM、SSDディスク 1つのクライアントノード - 8ギガバイトのRAM

シャード - 20のシャード レプリカ-ありがとう

答えて

0

いつも通りです。 Elasticsearchの配布コンセプトはシャードに基づいています。インデックスの破片は異なるノードに存在するため、自動的に負荷が分散されます。

ただし、Logstashがボトルネックになっていると、複数のプロセスを実行してもパフォーマンスが向上する可能性があります。単一のマシン上で複数のLSプロセスを実行することが肯定的な影響を与える場合は疑わしいですが。

簡単な答え:3つのインデックスをパラレル化することはあまり意味がありませんが、Logstashがボトルネックになっていると、それらを並列に(別のマシン上で)実行するのが理にかなっています。

PS:一般的に、パフォーマンスの向上の最大の理由はバッチリクエストですが、Logstashではそのようなことがありますby default

+1

また、Logstashのインスタンスを追加する代わりに、より多くのワーカーを追加することもできます( '-w' [コマンドラインオプション](https://www.elastic.co/guide/en/logstash/5.5/running -logstash-command-line.html#コマンド行フラグ))。 – baudsp

関連する問題