2016-08-12 2 views
0

私はスパークについてもっと自分自身を教育したいと思っていました。だからこの質問をしたかった。コンピュータのさまざまなコアで作成されたスパークRDDを見つける方法

私はSparkを現在ローカルマシンにインストールしています。 16GBのMachです。

私はPysparkで動作するJupyterノートブックを接続しました。私はそのノートブック内の任意のコードを実行するとき

はだから今、データを読み取り、スパークデータフレームにデータを変換するように、私はチェックしたい:

1)。すべてのデータセットがローカルマシンに配布される場所。同様に、CPUコアの異なるコアを使用してデータセットを配布しますか?それを見つける方法はありますか?

2)。 Jupiterのノートブックをスパークなしで使ってコードと計算を実行することは、JupiterのノートブックをPysparkで実行することと異なりますか?最初のものと同じように、マシンの1つのコアを使用し、1つのスレッドを使用して実行しますが、Pysparkを搭載したJupyterノートブックはマルチスレッド/処理を使用してCPUの異なるコアでコードとコンピューティングを実行しますか?このことは正しいのでしょうか?

これを確認する方法はありますか?

おかげ

答えて

0

Jupyterは、主に3つの部分Jupyterノートブック、Jupyterクライアントおよびカーネルを持っています。 http://jupyter.readthedocs.io/en/latest/architecture/how_jupyter_ipython_work.html

ここでは、JupyterホームページからのKernelに関する短いメモです。

カーネルは、特定 プログラミング言語でインタラクティブなコードを実行し、ユーザに出力を返す処理です。カーネルも は、タブ補完とイントロスペクション要求に応答します。

Jupyterの仕事は、カーネル(Pythonカーネル、スパークカーネル..)とWebインターフェイス(ノートブック)の間で通信することです。あなたのために運転手とエグゼクティブが走っているフード・スパークの下で、ジュピターはスパーク・ドライバーとのコミュニケーションに役立ちます。

1)。すべてのデータセットがローカルマシンに配布される場所。同様に は、CPUなどの異なるコアを使用してデータセットを配布しますか?それを見つける方法は ですか?

スパーク--num-executors使用して、指定された、エグゼキュータはスパークドライバ(スパークエンジン上ジョブを実行する責任プログラム/プロセス)によって管理されているようにエグゼキュータのn個(タスクを実行する責任プロセス)出現します。 sparkプログラムを実行している間、エグゼキュータの数が指定されているので、このカーネルconfディレクトリが見つかります。

2)。 Jupiterのノートブック を使ってコードと計算を実行することは、Pysparkを使ってJupiterのノートブックを実行することと異なりますか? 最初のものは、マシンのコアを1つだけ使用し、 のスレッドを使用して実行しますが、PupparkのJupyterノートブックはコードを実行し、 マルチスレッド/処理の異なるCPUコアでコンピューティングしますか? これは正しいのでしょうか?

はい、私が説明したように、Jupyterはコードを実行する単なるインターフェイスです。フードの下で、Jupyterは通常のPythonやApache Sparkであればカーネルに接続します。

スパークは、それはあなたのケースではポート4040でスパークマスターサーバー上で実行され、デフォルトでジョブを監視するためにそれ自身の良いUI、私が使用してJupyterノートブックを開くたびに、それはそうちょうど、http://localhost:4040

+0

で利用できる理解するだろうを持っていますPyspark、私はSpark Kernelを使用しているので、ローカルのMacでコードを実行しても、Pythonのノートブックとは異なり、分散コンピューティングを使用していますか? 第2に、Sparkカーネルを使用していても、Spark RDDまたはSpark DataFramesを使用しない限り、分散コンピューティングは正しく行われません。私もSparkでPandas DataFrameを使うことができます。しかし、Spark DataFrameに変換されるまで、データセットを異なるエグゼキュータに配布することはありません。あれは正しいですか? – Baktaawar

+0

分散コンピューティングでは、複数のコアを使用するように設定すると、--master local [*]はすべてのコアを使用します。 第2の質問 - スパークを学ぼうとしてください、あなたがスパークの基礎に欠けているようです。 –

関連する問題