Spark UI中红色Executor标识代表什么含义?
Spark历史服务器里Executor标红的真相
嘿,这个问题我之前排查Spark任务的时候也纠结过!先给你明确结论:红色Executor标识和运行时长完全没关系,它的核心含义是:
- 这个Executor在运行过程中出现过任务(Task)失败,但Executor本身并没有被集群终止。
你说的ID16标红、ID15耗时更长却没标红的情况很好解释:
- ID16上至少有一个Task执行失败了(比如抛出业务异常、数据文件损坏、内存溢出但没触发Executor崩溃等),不过Spark的任务重试机制让这个Executor继续存活,去处理其他任务,所以历史UI会用红色标记它来提醒你这里有过任务失败记录;
- 而ID15虽然运行了2.2小时,但上面所有的Task都成功完成了,没有任何失败情况,所以不会被标红。
你可以去验证一下:点击红色的Executor进入详情页,查看Failed Tasks这一项,肯定能看到对应的失败任务统计;而ID15的详情页里这个数值应该是0。
另外补充个小知识点:如果Executor是被集群主动杀死的(比如YARN因为资源不足回收、OOM导致Executor直接崩溃退出),历史UI里会显示为灰色,或者直接标注“Killed”,和红色标记的场景完全不一样。
内容的提问来源于stack exchange,提问作者irbull
相关产品推荐
相关产品推荐

