2017-07-29 4 views
0

私は数ヶ月前にElasticSearchインスタンスを起動しましたが、私は平均シャードのサイジングを過大評価しました。私の破片はかなり小さく、今は最大400MBです。私は、お勧めのサイズは約であることがわかった。 50gb(スタックオーバーフロー検索に基づく)。私も最大のシャードカウントを使い果たしました。私はそれを再構成しなければなりませんでした。しかし、適切なアプローチは、シャードのロジックを変更し、基本的にシャードを大きくすることです。それは私の場合は完全に実行可能ですが、問題はすでに存在する破片をどう扱うかです。私は確かにデータを再生することができますが、それは多くの時間がかかるでしょう。だから、より小さな断片を大きな断片に結合するには良い方法がありますか?ElasticSearchでシャードをマージする方法

+1

こんにちは、あなたはいくつかの選択肢があります。 @シュリンクAPI(https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-shrink-index.html)は、@モリウェアが言及したものの1つです。また、[_reindex API](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-reindex.html)でインデックスをマージして断片数を制限することもできます。インデックスの数を制限する方法の例は、こちら(https://stackoverflow.com/questions/46153683/elasticsearch-how-to-merge-indexes-into-one-index/47054501#47054501)を参照してください。 –

答えて

1

あなたが知っている限り、あなたはその場でシャードをマージすることはできません。これは、データのインデックスを再作成する必要がある状況の1つでした。

今では、この状況を少し難しくする方法が提供されています。 Shrink APIを使用すると、ソース索引のプライマリ断片数のファクタであるプライマリ断片数を持つ新しい索引を作成できます。たとえば、インデックスに12個のシャードがある場合、縮小されたインデックスには6,4,2,1個の1次シャードがあります。

私はそれが助けてくれることを願っています!

関連する問題