我有四个节点通过set --num-executors 4运行我的spark程序, 但问题是只有两个正在运行,另外两个计算机不做任何计算,这里是: Executor_ID地址...... Total_Task Task_Time输入 1 slave8 88 21.5s 104MB 2 slave6 0 0 0B 3 slave1 88 1min 99.4MB 4 slave2 0 0 0B
如何让所有这四个节点运行我的火花程序?
答案 0 :(得分:1)
我猜你是在YARN上运行的。在这种情况下,您需要设置
yarn.scheduler.capacity.resource-calculator=org.apache.hadoop.yarn.util.resource.DominantResourceCalculator
--num-executors
标志指定什么,YARN都只会启动2个执行程序。
答案 1 :(得分:0)
我怀疑在您的情况下,可以通过更好地划分数据来解决这个问题。更好并不总是意味着更多。它也意味着在正确的时间,并以某种方式可以避免一些改组。