spark中shuffle的写入磁盘的数量
R为reduce的数量
M为maptask的数量
core 为executor cpu的数量
shuffle中落盘的数量 MR
coreR
2M
SparkEnv
val memoryManager: MemoryManager = UnifiedMemoryManager(conf, numUsableCores) --统一内存管理,(动态内存管理)
UnifiedMemoryManager(
val maxMemory = getMaxMemory(conf){–能够使用的最大内存
val reservedMemory = 预留内存 默认300M
val usableMemory = systemMemory - reservedMemory --可用内存
usableMemory * memoryFraction(默认0.6)
}
onHeapStorageRegionSize =
(maxMemory * 0.5).toLong
)