2016-04-28 4 views
0

sparkで実行する必要があるいくつかのpythonジョブがあります。しかし、Pythonコードはspark固有の分散ライブラリを使用しません。これは、パンダ、scipy、およびsklearnを使用してデータを操作するだけです。マスターでのみ実行されているスパークジョブ

私はコマンドで火花ジョブを送信: spark-submit --master spark://ip:7077 python_code.py

私は、このような仕事のいくつかを送信すると、すべてのジョブが唯一のマスター上で実行されます。マスターのCPUは100%になりますが、ワーカーノードはすべてアイドルです。私が考えることは、sparkのリソースマネージャがクラスタ全体に負荷を分散させるということです。

私のコードでは、sparkが提供する分散ライブラリは使用していませんが、完全なジョブを別のノードに配布する方法はありますか?

答えて

0

スパークアクションAPI(collect/take/first/saveAsTextFile)がなければ、エグゼキュータでは何も実行されません。スパークするだけで、単純なPythonコードを配布することはできません。

dask(https://github.com/dask/dask)のような他の並列処理ライブラリをチェックすることができます。

関連する問題