我想用 yarn 提交多个 spark-submit 作业。当我运行时
spark-submit --class myclass --master yarn --deploy-mode cluster blah blah
现在,我必须等待作业完成才能提交更多作业。我看到了心跳:
16/09/19 16:12:41 INFO yarn.Client:application_1474313490816_0015 的申请报告(状态:RUNNING)
16/09/19 16:12:42 INFO yarn.Client:application_1474313490816_0015 的申请报告(状态:RUNNING)
我怎样才能让 yarn 从同一个终端选择另一份工作。最终,我希望能够从一个脚本中运行,我可以一次性发送数百个作业。
谢谢。
最佳答案
每个用户都有一个在 yarn 配置中指定的固定容量。如果你被分配了 N 个执行器(通常,你会被分配到一些固定数量的 vcores
),并且你想要运行 100 个作业,你需要为每个作业指定分配:
spark-submit --num-executors N/100 --executor-cores 5
否则,作业将循环接受。
您可以在每次调用的最后使用 &
并行启动多个作业。
for i in
seq 20;执行 spark-submit --master yarn --num-executors N/100 --executor-cores 5 blah blah &;完成
关于hadoop - yarn 上的 Spark 提交 - 多项工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39581388/