我已经使用spark-submit运行这个工作,而那个时候我们丢失了执行者,我们可以恢复或恢复的某个点,如果恢复我们将如何恢复,以及我们如何取回执行者
您无法在应用程序中以编程方式处理执行程序失败,如果这就是您所要求的。您可以配置指导实际作业执行的spark配置属性,包括YARN如何调度作业以及处理任务和执行程序失败。
https://spark.apache.org/docs/latest/configuration.html#scheduling
您可能想要查看的一些重要属性:
spark.task.maxFailures(默认值= 4):放弃作业之前任何特定任务的失败次数。在不同任务中传播的故障总数不会导致作业失败; 一项特定任务必须通过这一次尝试失败。应大于或等于1.允许的重试次数=此值 - 1。
spark.blacklist.application.maxFailedExecutorsPerNode(default = 2):(实验)在将节点列入整个应用程序的黑名单之前,必须将整个应用程序列入多少个不同的执行程序列入黑名单。在spark.blacklist.timeout指定的超时后,列入黑名单的节点将自动添加回可用资源池。但请注意,通过动态分配,节点上的执行程序可能会被标记为空闲并由集群管理器回收。
spark.blacklist.task.maxTaskAttemptsPerExecutor(default = 1):(实验)对于给定任务,在执行者被列入黑名单之前,可以在一个执行程序上重试多少次。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。