我正在运行spark with yarn作为资源管理器(rm)。我提交的申请,最大尝试2即。 spark.yarn.maxAppAttempts=2
。其中一个应用程序正在处理大约3 tb的数据,因为内存问题,attempt1失败(在处理10个表中的5个表之后),尝试2开始。即使attempt1失败,也不会释放资源(执行器)以将其用于尝试2。不明白为什么不释放资源。下面是形态图。
spark.executor.memory=30G
spark.executor.cores=5
spark.executor.instances=95
spark.yarn.executor.memoryOverhead=8G
可用的执行器总数为100个,其中我尝试使用95个,尝试1尝试使用所有95个执行器。尝试1失败后,尝试2由5个执行者开始。根据我的理解,尝试2应该以95个执行者开始,比如尝试1,因为尝试1失败了,所有的资源应该可以用于尝试2。
暂无答案!
目前还没有任何答案,快来回答吧!