2016-10-13 22 views
2

スパークスタンドアロン:このモードではSpark StandaloneとYARNとローカルモードの違いは何ですか?

私はあなたのローカルマシン上のマスターとワーカーノードを実行することを実現しました。

ローカルマシンでYARNのインスタンスが実行されていることを意味しますか? SparkをインストールするとHadoopが付属しているので、通常YARNもHadoopに同梱されていますか?そして、このモードでは、本格的にはフルバージョンのクラスタの小さなバージョンをシミュレートできます。

スパークローカルモード:

これは私も上の混乱しています一部です。このモードで実行するには、val conf = new SparkConf().setMaster("local[2]")を実行します。

このモードでは、YARNなどのリソースマネージャのタイプは正しくありませんか?単に"local[2]"\に提供するスレッド数でSpark Jobを実行するだけですか?

答えて

4

Hadoop YARNとSparkと混同しています。

糸は、より多様な処理を アプローチをサポートするためのHadoopを可能にする、データ処理 コンポーネントからのMapReduceのリソース 管理およびスケジューリング機能を分離するソフトウェアの書き換えやアプリケーションの広い配列です。

YARNの導入により、Hadoopはプラットフォーム上で他のアプリケーションを実行できるようになりました。

簡潔に言えば、YARNは「Pluggable Data Parallel framework」です。

Apacheのスパーク

Apacheの火花は、バッチ、対話型ストリーミングフレームワークです。 Sparkには 「プラガブル永続ストア」があります。 Sparkは任意のパーシスタンスレイヤーで実行できます。

sparkの実行にはリソースが必要です。スタンドアローンモードでは、ワーカーを起動し、マスターとパーシステンスレイヤーを起動できます。HDFS、FileSystem、cassandraなど。YARNモードでは、YARN-Hadoopクラスターにリソースの割り当てとブックの管理を依頼しています。

local[2]としてmasterを使用すると、2つのコアを使用して、同じJVMでドライバとワーカーを実行するようにSparkに要求します。ローカルモードでは、すべてのスパークジョブ関連のタスクが同じJVMで実行されます。

スタンドアロンモードとローカルモードの唯一の違いは、スタンドアロンでは、ワーカーとスパークマスターがマシンで実行されるようにコンテナを定義していることです(従業員2名とタスクをJVMに分散できるその2人のワーカーのうちのどれですか?)ローカルモードでは、ローカルマシンの同じJVM内のすべてを実行しています。

+0

SparkジョブをYARNクラスタに(ローカルマシンからのspark submitを使用して)送信した場合、SparkContextオブジェクトはHadoopクラスタの接続先をどのように知っていますか? – CapturedTree

+0

現在、Spark-submitを使用し、 '--deploy-mode'を' cluster'と指定しています。しかし、SparkContextは、HadoopクラスタがHDFSデータノード上でスパークアプリケーションを実行する場所をどのように知っていますか? Hadoopクラスタの場所とSparkContextのインスタンスをインスタンス化するたびに、その設定ファイルが原因でクラスタがどこにあるのかを指定するSparkの設定がありますか? – CapturedTree

関連する問題