2015-11-02 225 views
5

我正嘗試在IntelliJ中使用Pyspark,但我無法弄清楚如何正確安裝它/設置項目。我可以在IntelliJ中使用Python,我可以使用pyspark shell,但是我不能告訴IntelliJ如何找到Spark文件(導入pyspark結果到「ImportError:No module named pyspark」)。在IntelliJ IDEA中編寫並運行pyspark

有關如何包含/導入spark的任何tipps,以便IntelliJ可以與它一起工作的讚賞。

謝謝。

UPDATE:

我想這一段代碼:

from pyspark import SparkContext, SparkConf 
spark_conf = SparkConf().setAppName("scavenge some logs") 
spark_context = SparkContext(conf=spark_conf) 
address = "C:\test.txt" 
log = spark_context.textFile(address) 

my_result = log.filter(lambda x: 'foo' in x).saveAsTextFile('C:\my_result') 

與以下錯誤消息:

Traceback (most recent call last): 
File "C:/Users/U546816/IdeaProjects/sparktestC/.idea/sparktestfile", line 2, in <module> 
spark_conf = SparkConf().setAppName("scavenge some logs") 
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\conf.py", line 97, in __init__ 
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\context.py", line 221, in _ensure_initialized 
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\java_gateway.py", line 35, in launch_gateway 

File "C:\Python27\lib\os.py", line 425, in __getitem__ 
return self.data[key.upper()] 
KeyError: 'SPARK_HOME' 

Process finished with exit code 1 

回答

3

設置您的程序運行/調試 配置中的(SPARK_HOMEPYTHONPATH)的env路徑。

例如:

SPARK_HOME=/Users/<username>/javalibs/spark-1.5.0-bin-hadoop2.4/python/ 
PYTHON_PATH=/Users/<username>/javalibs/spark-1.5.0-bin-hadoop2.4/python/pyspark 

見IntelliJ IDEA的附加快照

Run/Debug configuration for PySpark

+0

的變量PYTHONPATH和SPARK_HOME,對於我們這些強橫的防火牆後面。 –

+0

SPARK_HOME應該包含路徑,直到包含bin,python等目錄,直到python。 –

1

例如,這種東西:

from pyspark import SparkContext, SparkConf 
spark_conf = SparkConf().setAppName("scavenge some logs") 
spark_context = SparkContext(conf=spark_conf) 
address = "/path/to/the/log/on/hdfs/*.gz" 
log = spark_context.textFile(address) 

my_result = (log. 

...here go your actions and transformations... 

).saveAsTextFile('my_result')