web-dev-qa-db-ja.com

フェアスケジューラとキャパシティスケジューラの違いは何ですか?

私はHadoopの世界に不慣れで、フェアスケジューラとキャパシティスケジューラの違いを知りたいです。また、それぞれをいつ使用する予定ですか?私はインターネットで多くのことを読んでいますが、それらからあまり得られないので、簡単な方法で答えてください。

17
Flowra

公平なスケジューリングとは、すべてのジョブが平均してリソースを均等に共有するように、リソースをジョブに割り当てる方法です。実行中の単一のジョブがある場合、そのジョブはクラスター全体を使用します。他のジョブが送信されると、解放されたタスクスロットが新しいジョブに割り当てられるため、各ジョブのCPU時間はほぼ同じになります。ジョブのキューを形成するデフォルトのHadoopスケジューラーとは異なり、これにより、長いジョブが不足することなく、短いジョブを適切な時間で終了できます。これは、多数のユーザー間でクラスターを共有するための合理的な方法でもあります。最後に、公平な共有はジョブの優先順位でも機能します。優先順位は、各ジョブが取得する必要がある合計計算時間の割合を決定する重みとして使用されます。

CapacitySchedulerは、大規模なクラスターを共有しながら、各組織に最小のキャパシティー保証を与えるように設計されています。中心的な考え方は、Hadoop Map-Reduceクラスターで使用可能なリソースは、コンピューティングのニーズに基づいてクラスターに共同で資金を供給する複数の組織間で分割されるということです。組織が他の人が使用していない余分な容量にアクセスできるという追加の利点があります。これにより、費用対効果の高い方法で組織に弾力性が提供されます。

22
user3484461

以下は、2つのスケジューラーの機能ごとの比較です。

enter image description here

5
Vikas Singh

公平なスケジューラー、各プール内の公平な共有により、リソース・プールを(重みによって)割り当てます

容量スケジューラ、FIFO各プール内のスケジューリングを使用して、リソースをプールに割り当てます

Capacity Schedulerは、大規模なクラスターを共有しながら、各組織に容量を保証できるように設計されています。他のユーザーが使用していない過剰な容量の可能性があります。

0
Mehdi TAZI