我安装了Scala和Spark,但是PySpark还没有工作。这是我得到的输出:
user@ubuntu:~/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
我做错了什么?
由于
答案 0 :(得分:2)
看起来你有导入冲突。在您的路径中的某个位置有pyspark.py
文件,该文件在实际pyspark
包之前被选中。
答案 1 :(得分:2)
我无法重现这个问题但是却没有理解为什么需要设置SPARK_HOME,PATH和PYTHONPATH。如果使用path启动pyspark,则应该已经创建了SparkContext 如果你从ipython或python开始,你可以使用findspark包来定位Spark并创建SparkContext
$ python
>>> import findspark
>>> findspark.init('/home/user/spark')
>>> from pyspark import SparkContext
>>> sc = SparkContext('local[4]', 'myapp')