AWS EMR Spark Submit参数错误致任务失败,求正确配置方案
如何修正AWS EMR Spark集群上spark-submit的参数配置错误?
从你给出的报错日志来看,问题出在参数格式的低级错误上——你写的-- master(双横线和master之间有空格)是无效的Spark命令行参数格式,这直接导致Spark识别到了一个未定义的--选项,从而抛出错误。
具体修正步骤:
- 把参数中的
-- master改成--master(双横线和参数名之间不能有空格)。Spark的所有命令行参数都遵循这个规则,比如你写的--driver-memory、--executor-memory格式是正确的,只有--master这里出了问题。
修正后的完整spark-submit命令示例:
spark-submit --master yarn --driver-memory 4g --executor-memory 2g your_python_task.py
额外提示:
如果你的任务需要以集群模式运行(Driver部署在EMR集群节点上,而非本地提交机器),可以加上--deploy-mode cluster参数,命令会变成:
spark-submit --master yarn --deploy-mode cluster --driver-memory 4g --executor-memory 2g your_python_task.py
以后写Spark提交参数时要注意,所有以--开头的参数,后面直接跟参数名,中间不能有空格,否则都会触发类似的“未识别选项”错误。
内容的提问来源于stack exchange,提问作者Zhang YaoWen
相关产品推荐
相关产品推荐

