【问题标题】:nifi pyspark - "no module named boto3"nifi pyspark - “没有名为 boto3 的模块”
【发布时间】:2018-10-03 01:45:09
【问题描述】:

我正在尝试运行我创建的 pyspark 作业,该作业使用 boto3 库从 s3 下载和上传数据。虽然作业在 pycharm 中运行良好,但当我尝试使用此模板在 nifi 中运行它时https://github.com/Teradata/kylo/blob/master/samples/templates/nifi-1.0/template-starter-pyspark.xml

ExecutePySpark 出现“没有名为 boto3 的模块”的错误。

我确保它已安装在我的活动 conda 环境中。

任何想法,我肯定我错过了一些明显的东西。

这是 nifi spark 处理器的图片。

谢谢, 时间

【问题讨论】:

  • 您需要将该库添加到集群中的所有 Spark 执行器。它可以在本地工作,因为您有可用的库
  • 谢谢你——我不完全确定怎么做——我只是在 1 个 ubuntu 虚拟机上运行它?
  • 好的,那么,你如何告诉 Nifi(一个 Java 应用程序)它需要激活一个特定的 conda 环境?
  • 您是否已将spark-defaults.conf 配置为使用安装了所有必要库的 conda 环境?在这种情况下,boto3
  • 我不认为我是 - 我认为它只会使用活动环境

标签: amazon-s3 pyspark boto3 apache-nifi kylo


【解决方案1】:

PySpark 应该运行的 Python 环境是通过 PYSPARK_PYTHON 变量配置的。

  • 进入 Spark 安装目录
  • 转到conf
  • 编辑spark-env.sh
  • 添加此行:export PYSPARK_PYTHON=PATH_TO_YOUR_CONDA_ENV

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-03
    • 2021-01-18
    • 2020-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-31
    • 1970-01-01
    相关资源
    最近更新 更多