pyspark スクリプトで SparkContext にアクセスする方法 質問する

pyspark スクリプトで SparkContext にアクセスする方法 質問する

次のSOFの質問Pyspark でスクリプトを実行し、完了したら IPython シェルにドロップするにはどうすればよいでしょうか?pyspark スクリプトを起動する方法を説明します。

 %run -d myscript.py

しかし、既存の Spark コンテキストにはどのようにアクセスするのでしょうか?

新しいものを作成するだけでは機能しません。

 ---->  sc = SparkContext("local", 1)

 ValueError: Cannot run multiple SparkContexts at once; existing 
 SparkContext(app=PySparkShell, master=local) created by <module> at 
 /Library/Python/2.7/site-packages/IPython/utils/py3compat.py:204

しかし、既存のものを使用しようとすると...まあ既存のものはありますか?

In [50]: for s in filter(lambda x: 'SparkContext' in repr(x[1]) and len(repr(x[1])) < 150, locals().iteritems()):
    print s
('SparkContext', <class 'pyspark.context.SparkContext'>)

つまり、SparkContextインスタンスには変数がない

ベストアンサー1

以下のものが含まれます:

from pyspark.context import SparkContext

そしてSparkContext次のように静的メソッドを呼び出します。

sc = SparkContext.getOrCreate()

おすすめ記事