Fra*_*ank 5 python apache-spark pyspark
我正在boo.py使用spark-submit(Spark 2.0)在 AWS EMR 上运行脚本。
当我使用时文件成功完成
python boo.py
Run Code Online (Sandbox Code Playgroud)
但是,当我运行时它失败了
spark-submit --verbose --deploy-mode cluster --master yarn boo.py
Run Code Online (Sandbox Code Playgroud)
登录yarn logs -applicationId ID_number显示:
Traceback (most recent call last):
File "boo.py", line 17, in <module>
import boto3
ImportError: No module named boto3
Run Code Online (Sandbox Code Playgroud)
我正在使用的python和boto3模块是
$ which python
/usr/bin/python
$ pip install boto3
Requirement already satisfied (use --upgrade to upgrade): boto3 in /usr/local/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)
如何附加此库路径以便spark-submit可以读取boto3模块?
当您运行 Spark 时,部分代码在驱动程序上运行,部分代码在执行程序上运行。
您是仅在驱动程序上安装 boto3,还是在驱动程序 + 所有可能运行您的代码的执行程序(节点)上安装 boto3?
一种解决方案可能是 - 在所有执行器(节点)上安装 boto3
如何在 Amazon EMR 节点上安装 python 模块:
如何在 Amazon EMR 上引导安装 Python 模块?