在 Spark 2 解释器下使用 Python 和 Zeppelin

Using Python with Zeppelin under the Spark 2 Interpreter

我已经在虚拟机上部署了 HDP: 2.6.4

我可以看到 spark2 没有指向正确的 python 文件夹。我的问题是

1) 我怎样才能找到我的 python 所在的位置?

解决方案:输入whereis python,你会得到一个列表

2) 如何更新现有 python 库并将新库添加到该文件夹​​?例如,相当于 CLI 上的 'pip install numpy'。

3) 如何让 Zeppelin Spark2 指向包含我可以更新的 python 文件夹的特定目录? - 在 Zeppelin 上,有一个小 'edit' 按钮,我可以将路径更改为包含 python.

的目录

解决方案:去zeppelin的解释器,找到spark2,让zeppelin.pyspark.python指向python已经存在的地方

现在,如果您需要 python 3.4+,则必须执行一整套不同的步骤,首先将 python 3.4.+ 放入 HDP 沙箱。

谢谢,

对于像您这样的沙盒环境,沙盒图像是在 Linux OS (CentOS) 上制作的。 Zeppelin Notebook 很可能指向每个 Linux OS 随附的 Python 安装。 如果您希望自己安装 Python 和自己的数据分析库集,例如 SciPy 堆栈中的库。您需要在虚拟机上安装 Anaconda。您的 VM 需要连接到 Internet,以便您可以下载并安装 Anaconda 包进行测试。

然后您可以将 Zeppelin 指向 anaconda 的目录,直到以下路径:/home/user/anaconda3/bin/python 其中 user 是您的用户名

Zeppelin Configuration 也证实了它在 /usr/bin/python 使用默认 python 安装的事实。您可以查看其文档以获取更多信息

更新

你好 Joseph,Spark 安装,默认情况下,使用 Python 解释器和 python 库,它们已安装在你的 OS 上。您显示的文件夹结构仅告诉您 PySpark 模块的位置。这个模块是一个类似于 Pandas ior NumPy 的库。

您可以通过命令 pip install package name 安装 SciPy Stack[NumPy、Pandas、MatplotLib 等..],然后将这些库直接导入您的 Zeppelin Notebook。

在你的snadbox的终端中使用命令whereis python,结果会是这样的 /usr/bin/python /usr/bin/python2.7 ....

在您的 Zeppelin 配置中,对于 属性 zeppelin.pyspark.python,您可以设置上一个命令输出的第一个值,即 /usr/bin/python。所以现在您通过 pip install 命令安装的所有库都可以在 zeppelin 中使用。

此过程仅适用于您的沙盒环境。在真正的生产集群中,您的管理员需要在您的 Spark 集群的所有节点上安装所有这些库。