我在默認設置的8節點Google dataproc羣集上運行pyspark
。啓動後 幾秒鐘我看到運行(如預期)30個執行內核:啓動後一分鐘火花丟失所有執行者
>>> sc.defaultParallelism 30
一分鐘後:
>>> sc.defaultParallelism 2
從這一點所有的動作上只有2個內核上運行:
>>> rng = sc.parallelize(range(1,1000000)) >>> rng.cache() >>> rng.count() >>> rng.getNumPartitions() 2
如果我運行rng.cache()
核心仍然連接時,他們保持連接和作業分佈。
檢查監測應用程序(主節點上的端口4040)顯示執行人被刪除:
Executor 1
Removed at 2016/02/25 16:20:14
Reason: Container container_1456414665542_0006_01_000002 exited from explicit termination request."
有一些設置,可以繼續使用,無需連接解決方法內核?
如果設置這個值越低,工作是否完成,可能需要更長的時間?換句話說,如果你不使用動態分配,如果他們試圖請求比設置更多的執行者,作業會失敗嗎? – Davos