在Zeppelin Interpreter

时间:2017-03-16 21:22:24

标签: pyspark apache-zeppelin

除了设置" zeppelin.pyspark.python"我需要做什么?使Zeppelin解释我们一个特定的Python可执行文件?

背景

我使用连接到Spark + Mesos群集的Apache Zeppelin。该集群的工作状态好几年了。 Zeppelin是新的,一般都很好。

但是我无法在pyspark中应用于RDD的函数中导入numpy。当我使用Python子进程来定位Python可执行文件时,它表明代码是在系统的Python中运行的,而不是在它需要的virutalenv中运行。

所以我在这个问题上看到了几个问题,说修复是设置" zeppelin.pyspark.python"指向正确的python。我已经完成了这个并重新启动了解释器几次。但它仍在使用Python系统。

我还需要做些什么吗?这是使用Zeppelin 0.7。

2 个答案:

答案 0 :(得分:0)

在Zeppelin的旧版自定义快照版本中,我一直在EMR集群上使用,我设置了以下两个属性来使用特定的virtualenv:

"zeppelin.pyspark.python": "/path/to/bin/python",
"spark.executorEnv.PYSPARK_PYTHON": "/path/to/bin/python"

答案 1 :(得分:0)

当您在python中激活了venv时:

(my_venv)$ python
>>> import sys
>>> sys.executable


# http://localhost:8080/#/interpreters
# search for 'python'
# set `zeppelin.python` to output of `sys.executable`
相关问题