火花动态分配执行器失败

时间:2016-05-02 19:34:41

标签: apache-spark

我正在尝试在spark中以独立模式使用动态分配,以允许多个用户同时运行作业。我在spark-defaults.conf文件中启用了动态分配和随机服务:

spark.shuffle.service.enabled true
spark.dynamicAllocation.enabled true
spark.dynamicAllocation.minExecutors 0

当我尝试同时运行两个pyspark shell时,执行程序失败并出现错误:

 ERROR TaskSchedulerImpl: Lost executor 7 on XXXX: 
 Remote RPC client disassociated. Likely due to containers exceeding 
 thresholds, or network issues. Check driver logs for WARN messages.

有关为何可能发生此事的想法或更好地使用动态分配的建议?

非常感谢!

1 个答案:

答案 0 :(得分:1)

spark动态分配用于在需要时减少或增加执行程序的数量,由执行程序的最大和最小数量定义。它与允许多个用户无关。在某些方面,当spark shell持有资源而不使用它时,它会很有用,它将释放这些容器。 请粘贴完整的错误日志,这可能是因为您请求的执行程序多于您在spark-defaults.conf中定义的执行程序