SolrセットアップをElasticsearchに置き換えようとしている最中です。これはまだ生産されていない新しいセットアップなので、物事をいじってうまく機能させる余地がたくさんあります。
私は非常に大量のデータを持っています。ライブデータのインデックスを作成し、7日間保持しています(_ttlフィールドを使用)。インデックスにデータを保存しません(そして_sourceフィールドを無効にします)。私のインデックスは約200億行で安定すると予想しています。このデータを2〜3個の名前付きインデックスに入れます。これまでのところ、最大数十億行の検索パフォーマンスは完全に許容できますが、インデックス作成のパフォーマンスが問題になります。
ESが内部でシャードをどのように使用するかについて少し混乱しています。2つのESノードを作成しました。それぞれに個別のデータディレクトリがあり、それぞれに8つのインデックスと1つのレプリカがあります。クラスターのステータスを見ると、ノードごとに1つのシャードと1つのレプリカしか表示されません。各ノードは、複数のインデックスを内部で実行し続けませんか?(ディスク上の保存場所を確認すると、Luceneインデックスが1つしかないことがわかります)。--インデックス設定が構成から正しく取得されなかったため、解決しました。APIを使用してインデックスを作成し、シャードとレプリカの数を指定することで、期待どおりの結果が得られました。
また、同じESノードの複数のコピーを(同じ構成から)実行しようとしましたが、すでにコピーが実行されていることを認識し、独自の作業領域を作成します。これらのノードの新しいインスタンスも、ディスク上に1つのインデックスしかないようです。-各ノードが実際に複数のインデックスを使用しているため、システム全体を調整するには、多くのインデックスを持つ単一のノードで十分であるため、これは問題ではありません。
インデックス作成のパフォーマンスを最大化するために、追加のElasticsearchノードをいつ起動しますか?それぞれが1つのインデックス1レプリカで実行されている多くのノードを使用する必要がありますか、それとも大量のインデックスを使用するノードを少なくする必要がありますか?単一ノードでより多くの作業を行うために、構成に欠けているものはありますか?
また、HTTPのみのノードが過負荷になったことを知るためのメトリックはありますか?現在、HTTP専用のノードが1つありますが、CPU使用率を除けば、正常に機能しているかどうかはわかりません。追加のHTTPノードを開始し、インデックス作成ソフトウェアを分割してさまざまなノードを指すようにするのはいつですか。