为什么齐柏林飞艇不支持pyfiles?

2024-06-06 13:07:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python包,其中有许多模块被构建到一个.egg文件中,我想在zeppelin笔记本中使用这个。根据zeppelin文档,要将这个包传递给zeppelin spark解释器,可以通过conf/zeppelin中的spark_SUBMIT_OPTIONS中的--files选项导出它-环境sh。关于这一点,我有以下问题:

  1. 在pyspark shell中,带有--py files的.egg文件正在工作(即我能够将模块导入到pyspark shell中的包中),而带有--files选项的同一个.egg文件不起作用(ImportError:没有名为的模块二十、 二十)

  2. 在zeppelin的SPARK_SUBMIT_选项中通过--py files选项添加.egg文件会导致错误: Error: --py-files given but primary resource is not a Python script. 根据我的理解,SPARK_SUBMIT_选项中给出的任何内容都会传递给SPARK SUBMIT命令,但为什么--py files会抛出错误?

  3. 当我通过SPARK_SUBMIT_选项中的--files选项添加.egg时,zeppelin笔记本不会抛出错误,但我无法将模块导入zeppelin笔记本。

传递.egg文件的正确方法是什么?在

Spark版本为1.6.2,zeppelin版本为0.6.0

齐普莱因-环境sh文件包含以下内容:

export SPARK_HOME=/home/me/spark-1.6.1-bin-hadoop2.6
export SPARK_SUBMIT_OPTIONS="--jars /home/me/spark-csv-1.5.0-s_2.10.jar,/home/me/commons-csv-1.4.jar --files /home/me/models/Churn-zeppelin/package/build/dist/fly_libs-1.1-py2.7.egg"

Tags: 模块文件pyhomeegg选项错误笔记本