Hadoop 2.0(YARN)フレームワークの利点は何ですか?

著者: Roger Morrison
作成日: 18 9月 2021
更新日: 1 J 2024
Anonim
Hadoopヤーンとは何ですか? | Hadoop Yarn チュートリアル | Hadoopヤーンアーキテクチャ| COSO IT
ビデオ: Hadoopヤーンとは何ですか? | Hadoop Yarn チュートリアル | Hadoopヤーンアーキテクチャ| COSO IT

コンテンツ


出典:Jim Hughes / Dreamstime.com

取り除く:

YARNは、Hadoop 1.0フレームワークを大幅に改善したものです。ここでは、前任者に比べていくつかの利点を検討します。

ビッグデータの概念が導入されて以来、進化の複数の段階を経てきました。 Hadoopは、大規模なデータ処理ワークロードをクラスターに分散できるMapReduce処理エンジンなど、いくつかの初期機能とともに2005年に導入されました。 Hadoop自体は多くの変更を経験し、高度なフレームワークとメソッドを開発しました。

YARNはHadoop 2.0のコアコンポーネントです。基本的に、クラスター環境のリソースを管理します。 YARNブローカーは、(アプリケーションに代わって)コンピューティングリソースと対話し、さまざまなフィルタリング基準に基づいて各アプリケーションにリソースを割り当てます。

この記事では、Hadoop 1.0に対するYARNの最大の利点について説明します。

YARNフレームワークとは何ですか?

YAノーザー Resource Negotiatorは、クラスター環境でリソースを管理するHadoop 2.0のコアコンポーネントです。 Hadoop YARNフレームワークは、Hadoop 1.0の高度なバージョンであり、パフォーマンスが向上します。これは、Hadoopエコシステムとそれに関連するすべてのテクノロジーにとって有益です。 YARNにもう少し精通したので、Hadoop 1.0とYARNを詳しく見てみましょう。

Hadoop 1.0フレームワークの制限

YARNフレームワークの利点を理解するには、Hadoop 1.0の仕組みとこのフレームワークの制限事項を理解することが非常に重要です。

これがJobTrackerの役割の出番です。クラスタリソースを管理し、MapReduceジョブの実行を決定します。簡単に言えば、JobTrackerはタスクスロットをスケジュールおよび予約し、実行中の各タスクを構成および監視します。タスクが失敗した場合、タスクを再開するために新しいスロットを再割り当てします。タスクが完了すると、JobTrackerは他のタスクのスロットを解放し、一時リソースを消去します。


上記のアプローチの主な欠点:

  • 可用性– JobTrackerは、Hadoop 1.0の唯一の可用性ポイントです。これは、JobTrackerが失敗した場合、すべてのタスクがデフォルトで再起動することを意味します。
  • スケーラビリティの制限-JobTrackerは複数のタスクを実行し、単一のマシンで実行しているため、他の使用可能なマシンは使用されていません。そのため、スケーラビリティが制限されます。
  • リソース使用率-上記のアプローチでは、マップスロットとリデューススロットが事前に定義されています。スロットの1つがいっぱいですが、他のマシンのスロットが空であることがあります。空のスロットは予約されているため、スロット全体を損なうことなくアイドル状態になります。これにより、リソース使用率の問題が発生する場合があります。
  • 非MapReduceアプリケーションの実行– JobTrackerは、MapReduceフレームワーク用に構築されたアプリケーションです。問題は、MapReduce以外のアプリケーションがこのフレームワークで実行しようとしたときに発生します。アプリケーションを正常に実行するには、MapReduceフレームワークのプログラミングに準拠する必要があります。これにより直面する一般的な問題には、次の問題が含まれます。
    • アドホッククエリ
    • リアルタイム分析
    • 追い越しアプローチ
  • カスケードの失敗–ノードの数が4000を超えると、このフレームワークの主要な問題の1つが発生します。このようなシナリオでは、カスケードの失敗が発生し、クラスター全体が劣化します。

これらは、このフレームワークでの作業中に直面する主要な制限の一部です。他にもいくつかの小さな制限がありますが、それらは言及されていません。 YARNフレームワークは、これらの制限を克服するために導入されました。

バグやストレスなし-あなたの人生を破壊することなく人生を変えるソフトウェアを作成するためのステップバイステップガイド


誰もソフトウェアの品質を気にしない場合、プログラミングスキルを向上させることはできません。

YARNフレームワークとその利点

Hadoop 2.0で導入されたYARNフレームワークは、MapReduceの責任を共有し、クラスター管理タスクを処理することを目的としています。これにより、MapReduceはデータ処理のみを実行できるため、プロセスが合理化されます。

YARNは、中央リソース管理の概念をもたらします。これにより、複数のアプリケーションをHadoopで実行して、共通のリソース管理を共有できます。

YARNフレームワークの主要なコンポーネントの一部は次のとおりです。

  • ResourceManager – ResourceManagerコンポーネントは、クラスター内に存在するすべてのリソースのクラスター内のネゴシエーターです。さらに、このコンポーネントは、ユーザージョブの管理を担当するアプリケーションマネージャーに分類されます。 Hadoop 2.0以降、MapReduceジョブはアプリケーションと見なされます。
  • ApplicationMaster –このコンポーネントは、ジョブまたはアプリケーションが存在する場所です。また、すべてのMapReduceジョブを管理し、ジョブ処理の完了後に終了します。
  • NodeManager – Node Managerコンポーネントは、ジョブ履歴のサーバーとして機能します。完了したジョブの情報を保護する責任があります。また、特定のノードのワークフローとともにユーザーのジョブを追跡します。

YARNフレームワークには、さまざまなタスクを管理するためのさまざまなコンポーネントがあるため、Hadoop 1.0の制限にどのように対処するかを見てみましょう。

  • リソースのより良い利用– YARNフレームワークにはタスク用の固定スロットがありません。共通のリソースを介して複数のアプリケーションを共有できる中央リソースマネージャーを提供します。
  • MapReduce以外のアプリケーションの実行– YARNでは、スケジューリング機能とリソース管理機能はデータ処理コンポーネントから分離されています。これにより、Hadoopは、Hadoopフレームワークのプログラミングに準拠していないさまざまなタイプのアプリケーションを実行できます。 Hadoopクラスターは、独立した対話型クエリを実行し、より優れたリアルタイム分析を実行できるようになりました。
  • 下位互換性– YARNは下位互換性のあるフレームワークとして提供されます。つまり、MapReduceの既存のジョブはすべてHadoop 2.0で実行できます。
  • JobTrackerはもはや存在しません– JobTrackerの2つの主要な役割は、リソース管理とジョブスケジューリングでした。 YARNフレームワークの導入により、これらは次の2つのコンポーネントに分離されました。
    • NodeManager
    • ResourceManager

結論

YARNフレームワークの導入により、Hadoop開発者向けのアプリケーションの構築が容易になりました。これで、アプリケーションをサードパーティのツールで実装する必要がなくなりました。 YARNはユーザーがHadoop 2.0を検討してアプリケーションを作成し、データをより効果的に操作できるようにする大きな変更です。時間の経過とともに、Hadoopの使いやすさを向上させるためのさらなる開発が行われます。今のところ、YARNフレームワークは、既存の問題を処理し、MapReduceモデルの以前のバージョンよりも汎用性の高い手間のかからない環境を作成する上で重要な役割を果たします。