Spark 容错

1.driver宕机
(1)如果job运行在client:程序直接挂了

(2)如果job运行在cluster:

-》spark on standalone/mesos:通过spark-submit的参数–supervise可以指定当driver宕机的时候,在其他的节点上重新恢复
-》spark on yarn:自动恢复四次

2.executor宕机
比如executor进程所在机器(worker)宕机、Executor和Driver之间通信超时。则Driver直接把坏掉的executor从Driver列表中移除,然后重新向Resourcemanager/master申请资源,自动在work或者NodeManager上重新启动一个executor重新执行任务

3.task执行失败
Task任务执行过程中产生异常导致Task执行失败,自动进行恢复,最多失败4次
(1)Lineage方式 Task数据恢复/重新运行的机制实质上是RDD的容错机制,即Lineage机制
容错的方式为,当子RDD执行失败的时候,可以直接从父RDD进行恢复操作。
Spark RDD实现基于Lineage的容错机制,基于RDD的各项transformation构成了compute chain,在部分计算结果丢失的时候可以根据Lineage重新恢复计算。
(1)在窄依赖中,在子RDD的分区丢失,要重算父RDD分区时,父RDD相应分区的所有数据都是子RDD分区的数据&


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部