スパークの基本コンセプトコーミング

最近Sparkを学習して使用しているので、いくつかの基本的な概念と用語を整理しました。画像を深め、その後のレビューを容易にするために使用されます

Sparkは、既存のHadoopエコシステムにシームレスに統合できるメモリベースの分散コンピューティングフレームワークです。主に、Spark Streaming、Spark SQL、Spark MLlib、SparkGraphXの4つの主要コンポーネントが含まれています。

Sparkの操作に関連するいくつかの基本的な概念は次のとおりです。

  1. 母校:主にスパーククラスター全体を制御、管理、監視するため

  2. クライアント:アプリケーションによって送信されるクライアントは、ビジネスオペレーションロジックとマスター通信を記録します。

  3. アプリケーション:ユーザー定義のSparkプログラム。ユーザーが送信すると、Sparkはアプリにリソースを割り当ててプログラムを変換および実行します。

  4. sparkContext:さまざまなコンピューティングリソースのスケジュール設定、および各作業ノードでのExecutorの調整を担当するsparkアプリケーションへの入り口。主にいくつかの記録情報、それを実行する人、それがどのように実行されるかなどを記録します。これが、プログラミング時にsparkContextを作成する必要がある理由です。

  5. ドライバープログラム:各アプリケーションのメインマネージャー、各アプリケーションのボス、何人かの人々はなぜマスターがいるのか、なぜあなたはマスターを持っているのかと尋ねるかもしれません。マスターはクラスターのボスであり、すべてのアプリケーションはボスの制御下にあるため、ボスは夢中です。したがって、ドライバーは、特定のトランザクションの実行と追跡、アプリケーションのmain()関数の実行、およびsparkContextの作成を担当します。

  6. RDD:一連の演算子で操作できるSparkのコアデータ構造。Rddがアクション演算子に遭遇すると、以前のすべての演算子が有向非周期グラフ(DAG)を形成します。次に、Sparkでジョブに変換され、実行のためにクラスターに送信されます。アプリには複数のジョブを含めることができます

  7. ワーカーノード:クラスターのワーカーノード。アプリケーションコードを実行できるノードであり、母校からコマンドを受信して​​実行中のタスクを受信し、実行の進行状況と結果をマスターに報告します。1つ以上のExecutorプロセスがノードで実行されます。

  8. exector:アプリケーションのworkerNodeで実行されているプロセス。プロセスは、タスクを実行し、メモリまたはディスクにデータを保存する役割を果たします。各アプリケーションは、タスクを処理するために独自のエグゼキュータを申請します。'
    ここに写真の説明を挿入

    図1-スパーク実行アーキテクチャ図

Sparkアプリケーション(アプリケーション)の実行に関連する概念:

  1. タスク(タスク):RDDのパーティションはタスクに対応し、タスクは単一のパーティションでの処理フローの最小単位です。

  2. TaskSet(タスクセット):関連するタスクのセットですが、それらの間のシャッフル依存関係はありません。

  3. ステージ(スケジューリングステージ):taskSetに対応するスケジューリングステージ。各ジョブは、RDDの幅広い依存関係に応じて多くのステージに分割され、各ステージにはTaskSetが含まれます。

  4. ジョブ(ジョブ):アクションオペレーターによってトリガーされる1つ以上のステージで構成されるコンピューティングジョブ。

  5. application:1つ以上のジョブで構成されるユーザーが作成したsparkアプリケーション。sparkに送信した後、sparkはアプリケーションにリソースを割り当て、プログラムを変換して実行します。

  6. DAGScheduler:ジョブに応じてステージベースのDAGを作成し、ステージをTaskSchedulerに送信します。

  7. TaskScheduler:タスクセットをワーカーノードクラスターに送信して実行し、結果を返します。

Sparkアプリケーションの論理ビュー

図2-スパークアプリケーション(アプリケーション)の論理図

上の図からわかるように、アプリケーションは1つ以上のジョブで構成でき、ジョブは1つ以上のステージで構成できます。ステージは幅と狭い依存関係に従って分割され、ステージはタスクセットで構成され、タスクセットは次のようになります。 1つから複数のタスクで構成されます。

おすすめ

転載: blog.csdn.net/mrliqifeng/article/details/90581307
おすすめ