在 EMR Jupyter/JupiterHub 上将库添加到 PySpark 内核
Adding libraries to PySpark kernel on Jupyter/JupiterHub on EMR
我正在尝试在 AWS EMR (5.20) 上的 docker 上将 Matplotlib 与 PySpark3 和 JupyterHub (0.9.4) 运行 结合使用。该 JupyterHub 上预装了 4 个内核:Python、PySpark、PySpark3 和 Spark。
使用 Python 内核导入 Matplotlib 没有问题。但是,当我尝试 "import matplotlib as plt" 使用 PySpark 或 PySpark3 内核时,我收到了消息 "matplotlib not found"。一直试图找到一个人,但没有运气。
你能帮忙吗?
感谢和问候,
阿夫雷尔
进一步阅读表明我错了:使用 PySpark 内核实际上将在 Spark 集群(EMR 本身)上具有代码 运行,而使用 Python 内核将具有代码运行 在 JupyterHub 服务器上(docker 图片)。
Matplotlib 预装在 docker 图像上,而不是 EMR。
在 EMR 主节点上安装 matplotlib 将解决 PySpark 内核中的导入问题。但是,这对使用 Spark 的数据帧绘制图形没有进一步的帮助(至少现在对我而言)。
我终于可以按照本指南得到我想要的东西 - 将结果传输到 "local"(这里 "local" 表示 JupyterHub 服务器 - docker 图像)并在本地使用 matplotlib使用 %%local 魔法:https://github.com/jupyter-incubator/sparkmagic/blob/master/examples/Pyspark%20Kernel.ipynb
我正在尝试在 AWS EMR (5.20) 上的 docker 上将 Matplotlib 与 PySpark3 和 JupyterHub (0.9.4) 运行 结合使用。该 JupyterHub 上预装了 4 个内核:Python、PySpark、PySpark3 和 Spark。 使用 Python 内核导入 Matplotlib 没有问题。但是,当我尝试 "import matplotlib as plt" 使用 PySpark 或 PySpark3 内核时,我收到了消息 "matplotlib not found"。一直试图找到一个人,但没有运气。
你能帮忙吗?
感谢和问候, 阿夫雷尔
进一步阅读表明我错了:使用 PySpark 内核实际上将在 Spark 集群(EMR 本身)上具有代码 运行,而使用 Python 内核将具有代码运行 在 JupyterHub 服务器上(docker 图片)。
Matplotlib 预装在 docker 图像上,而不是 EMR。 在 EMR 主节点上安装 matplotlib 将解决 PySpark 内核中的导入问题。但是,这对使用 Spark 的数据帧绘制图形没有进一步的帮助(至少现在对我而言)。
我终于可以按照本指南得到我想要的东西 - 将结果传输到 "local"(这里 "local" 表示 JupyterHub 服务器 - docker 图像)并在本地使用 matplotlib使用 %%local 魔法:https://github.com/jupyter-incubator/sparkmagic/blob/master/examples/Pyspark%20Kernel.ipynb