いくつかのアルゴリズムを設計するには、map-reduce 環境をシミュレートする必要があります。いくつかのジョブがあり、それぞれが map および reduce タスクのセットで構成されていると仮定します。マップの処理時間について想定し、タスクを削減する必要があります。たとえば、ジョブ「j1」には 3 つの map タスクと 2 つの reduce タスクがあります。map タスクと reduce タスクの処理時間に制約はありますか? 普段はどうですか?
1 に答える
1
マップとreduceタスクが何をするかを知らずに仮定を立てることは難しいでしょう。マップの処理時間またはタスクの削減は、それらに何をさせたいかによって完全に異なります。実際には、包括的な仮定を立てることはできません。
たとえば、個々のマップ関数は、個々のファイルを入力として処理したり、個々の行を処理したり、個々の単語を処理したりすることができます。これらはすべて、処理時間に直接影響します。
レデューサーも同じです。多くの処理、少しの処理、またはまったく処理を行わない場合もあります。(HadoopのMapReduceの実装では、MapReduceタスク用のレデューサーを用意する必要はなく、処理量が異なることを証明しています)。それは、個々のタスクが何を要求するかによって異なります。
シミュレートされたMapReduceジョブが実際に何を実行するかがわかっている場合は、それを使用して、さまざまなタスクの一般的な処理時間を相互に比較して決定できます。
于 2012-12-13T14:43:11.000 に答える