在google dataproc上,我想知道如何確定spark設置?就我而言,我運行一個3節點N1-標準4集羣和自動生成的火花defaults.conf看起來是這樣的:在dataproc上引發默認設置,特別是spark.yarn.am.memory
# User-supplied properties.
#Fri Dec 16 12:01:47 UTC 2016
spark.yarn.am.memoryOverhead=558
spark.executor.memory=5586m
spark.executor.cores=2
spark.driver.memory=3840m
spark.yarn.executor.memoryOverhead=558
spark.driver.maxResultSize=1920m
spark.yarn.am.memory=5586m
爲什麼配置設置這種方式,我很納悶,爲什麼特別火花.yarn.am.memory設置爲高?按照我的理解,該設置僅在客戶端模式下生效,驅動程序在提交機器(主設備)上運行。此外,AM只負責爲工作進程請求資源並協調這些進程。爲什麼am.memory應該那麼高?在我的場景中,這種默認設置實際上意味着我只能在客戶端模式下啓動一個Spark過程,因爲第二個AM中沒有集羣中任何位置可用的RAM。 (這實際上是我觀察到的,爲什麼我首先查看了配置)。
因此,我的問題是:dataproc啓動腳本如何決定如何設置這些值,它背後的理由是什麼,以及爲什麼am.memory應該特別高?