本文介绍了纱,客户端上的火花执行人如不采取执行人核心数配置。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
不管火花执行人核心数量,为执行人纱容器不使用超过1个核心。
解决方案
纱线显示每1遗嘱执行人,不论核心 spark.executor.cores
,因为默认情况下, DefaultResourceCalculator 使用。它认为只有内存。
公众诠释computeAvailableContainers(资源可用,需要的资源){
//只考虑内存
返回available.getMemory()/ required.getMemory();
}
使用DominantResourceCalculator,它采用CPU和内存。
设置以下配置在能力scheduler.xml
更多关于
Irrespective of the spark executor core count, yarn container for the executor does not use more than 1 core.
解决方案
YARN is showing 1 core per executor irrespective of spark.executor.cores
because by default DefaultResourceCalculator is used. It considers only memory.
public int computeAvailableContainers(Resource available, Resource required) {
// Only consider memory
return available.getMemory() / required.getMemory();
}
Use DominantResourceCalculator, It uses both cpu and memory.
Set below config in capacity-scheduler.xml
yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DominantResourceCalculator
More about DominantResourceCalculator
这篇关于纱,客户端上的火花执行人如不采取执行人核心数配置。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!