在 oozie 中添加 pyspark python 路径
Adding pyspark python path in oozie
我正在尝试使用 Hue 在 Oozie 上 运行 一个简单的 python 脚本。我正在使用安装的 anaconda 包裹,所以我还在 Cloudera 管理器中添加了 spark 配置(Spark Service Advanced Configuration Snippet (Safety Valve) for spark-conf/spark-env.sh)
if [ -z "${PYSPARK_PYTHON}" ]; then
export PYSPARK_PYTHON=/opt/cloudera/parcels/Anaconda/bin/python
fi
当 运行 完成作业时,出现 python 错误
导入错误:没有名为 pandas.io.json 的模块
,这意味着 PYSPARK_PYTHON 似乎没有从 anaconda 中获取。
我尝试添加参数
PYSPARK_PYTHON=/opt/cloudera/parcels/Anaconda/bin/python
通过 hue 进行火花操作,但似乎不起作用。
如果我 运行 通过 CLI 和 spark-submit 脚本,它就可以工作。
如果我通过 Hue 在 Oozie 上 运行 其他 python 脚本(没有来自 anaconda 的包)它可以工作。
我错过了什么? :/
通过 Oozie 使用 spark 时,您需要告知应在启动器容器(启动 spark 会话的容器)上设置哪些环境变量。
尝试使用键 oozie.launcher.mapreduce.map.env
和值 PYSPARK_PYTHON=/opt/cloudera/parcels/Anaconda/bin/python
添加一个新的 属性 火花操作,它应该会按预期工作。
我正在尝试使用 Hue 在 Oozie 上 运行 一个简单的 python 脚本。我正在使用安装的 anaconda 包裹,所以我还在 Cloudera 管理器中添加了 spark 配置(Spark Service Advanced Configuration Snippet (Safety Valve) for spark-conf/spark-env.sh)
if [ -z "${PYSPARK_PYTHON}" ]; then
export PYSPARK_PYTHON=/opt/cloudera/parcels/Anaconda/bin/python
fi
当 运行 完成作业时,出现 python 错误 导入错误:没有名为 pandas.io.json 的模块 ,这意味着 PYSPARK_PYTHON 似乎没有从 anaconda 中获取。
我尝试添加参数
PYSPARK_PYTHON=/opt/cloudera/parcels/Anaconda/bin/python
通过 hue 进行火花操作,但似乎不起作用。
如果我 运行 通过 CLI 和 spark-submit 脚本,它就可以工作。 如果我通过 Hue 在 Oozie 上 运行 其他 python 脚本(没有来自 anaconda 的包)它可以工作。
我错过了什么? :/
通过 Oozie 使用 spark 时,您需要告知应在启动器容器(启动 spark 会话的容器)上设置哪些环境变量。
尝试使用键 oozie.launcher.mapreduce.map.env
和值 PYSPARK_PYTHON=/opt/cloudera/parcels/Anaconda/bin/python
添加一个新的 属性 火花操作,它应该会按预期工作。