2016-04-17 24 views
2

我已經安裝並正在運行Scala和Spark,但PySpark無法正常工作。這裏是出把即時得到:設置PySpark

[email protected]:~/spark$ pyspark 
Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
Traceback (most recent call last): 
    File "/home/user/spark/python/pyspark/shell.py", line 30, in <module> 
    import pyspark 
    File "pyspark.py", line 1, in <module> 
NameError: name 'sc' is not defined 

這裏是我的.bashrc

export SPARK_HOME=/home/user/spark 
export PATH=$PATH:$SPARK_HOME/bin:$PATH 
export PYTHONPATH=$SPARK_HOME/python/:$PYTHONPATH 
export PYTHONPATH=$SPARK_HOME/python/lib/py4j-0.9-src.zip:$PYTHONPATH 

我在做什麼錯?

謝謝

回答

2

它看起來像你有一個導入衝突。在你的路徑的某處有pyspark.py文件,這個文件在實際的pyspark包裝之前被選中。

2

我無法重現問題,但仍然沒有明白爲什麼需要設置SPARK_HOME,PATH和PYTHONPATH。如果pyspark以路徑啓動,那麼應該已經創建了SparkContext。
如果從ipython或python開始,可以使用findspark包來查找Spark並創建SparkContext

$ python 
>>> import findspark 
>>> findspark.init('/home/user/spark') 
>>> from pyspark import SparkContext 
>>> sc = SparkContext('local[4]', 'myapp')