削減タスクの数を、1つのジョブで使用可能な削減スロットの数と正確に等しくなるように設定したいと思います。
デフォルトでは、reduceタスクは(Elastic Mapreduceで)使用可能なreduceスロットの数の約1.75倍として計算されます。私の仕事はreduceタスクを非常に均一に完了するので、ジョブのreduceスロットごとに1つのreducerを実行する方がよいことに気付きました。
しかし、ジョブ構成内からクラスターメトリックを特定するにはどうすればよいですか?
削減タスクの数を、1つのジョブで使用可能な削減スロットの数と正確に等しくなるように設定したいと思います。
デフォルトでは、reduceタスクは(Elastic Mapreduceで)使用可能なreduceスロットの数の約1.75倍として計算されます。私の仕事はreduceタスクを非常に均一に完了するので、ジョブのreduceスロットごとに1つのreducerを実行する方がよいことに気付きました。
しかし、ジョブ構成内からクラスターメトリックを特定するにはどうすればよいですか?
ClusterMetricsクラスを使用して、Map-Reduceクラスターの現在の状態に関するステータス情報を取得できます。たとえば、クラスターのサイズ、ブラックリストに登録され廃止されたトラッカーの数、クラスターのスロット容量、現在占有/予約されているMap&Reduceの数などです。スロットなど