2015-11-02 16 views
5

sto provando a lavorare con Pyspark in IntelliJ ma non riesco a capire come installarlo correttamente/configurare il progetto. Posso lavorare con Python in IntelliJ e posso usare la shell pyspark ma non posso dire a IntelliJ come trovare i file Spark (importare risultati pyspark in "ImportError: No module named pyspark").Scrivi ed esegui pyspark in IntelliJ IDEA

Qualsiasi tipp su come includere/importare lo spark in modo che IntelliJ possa funzionare con esso è apprezzato.

Grazie.

UPDATE:

Ho provato questo pezzo di codice:

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') 

con i seguenti messaggi di errore:

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 

risposta

3

Set il percorso env per (SPARK_HOME e PYTHONPATH) nel programma esecuzione/debug configurazione.

Per esempio:

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 

Vedere fotografia istantanea allegata in IntelliJ IDEA

Run/Debug configuration for PySpark

+0

Le variabili sono PYTHONPATH e SPARK_HOME, per quelli di noi dietro firewall tirannici. –

+0

E SPARK_HOME dovrebbe includere il percorso fino alla directory contenente bin, python ecc. E non fino a python. –

1

Per esempio, qualcosa di questo genere:

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')