如何在运行jupyter笔记本服务器时启动时设置pythonpath

时间:2018-02-11 10:00:11

标签: python-3.x pyspark jupyter-notebook config py4j

我正在运行Jupyter笔记本公共服务器,如本教程:http://jupyter-notebook.readthedocs.io/en/stable/public_server.html

我想在这台服务器上使用pyspark-2.2.1。我pip-installed py4j并从存储库下载了spark-2.2.1。

在本地,我在.bashrc中添加了命令行

export SPARK_HOME='/home/ubuntu/spark-2.2.1-bin-hadoop2.7'  
export PATH=$SPARK_HOME:$PATH  
export PYTHONPATH=$SPARK_HOME/python:$PYTHONPATH

当我在本地运行python时,一切正常。

然而,当使用笔记本服务器时,我无法导入pyspark,因为上述命令尚未在jupyter笔记本的启动时执行。

我部分(并且非优雅地)通过键入

解决了这个问题
import sys
sys.path.append("/home/ubuntu/spark-2.2.1-bin-hadoop2.7/python")

在笔记本的第一个单元格中。但是

from pyspark import SparkContext
sc = SparkContext()
myrdd = sc.textFile('exemple.txt')
myrdd.collect()  # Everything works find util here
words = myrdd.map(lambda x:x.split())
words.collect()

返回错误

Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.collectAndServe.
: org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 0.0 failed 1 times, most recent failure: Lost task 0.0 in stage 0.0 (TID 0, localhost, executor driver): java.io.IOException: Cannot run program "python": error=2, No such file or directory

我知道如何设置正确的路径(手动或启动时)?

由于

0 个答案:

没有答案