1. 程式人生 > >Spark提交引數說明

Spark提交引數說明

  • --master    master 的地址,提交任務到哪裡執行,例如 spark://host:port,  yarn,  local
  • --deploy-mode    在本地 (client) 啟動 driver 或在 cluster 上啟動,預設是 client
  • --class   應用程式的主類,僅針對 java 或 scala 應用
  • --jars    用逗號分隔的本地 jar 包,設定後,這些 jar 將包含在 driver 和 executor 的 classpath 下
  • --name   應用程式的名稱
  • --conf    指定 spark 配置屬性的值,例如 -conf spark.executor.extraJavaOptions="-XX:MaxPermSize=256m"
  • --driver-memory    Driver記憶體,預設 1G
  • --driver-cores    Driver 的核數,預設是1。在 yarn 或者 standalone 下使用
  • --excutor-core    每個 executor 的核數。在yarn或者standalone下使用     
  • --excutor-memory   每個 executor 的記憶體,預設是1G
  • --total-excutor-cores   所有 executor 總共的核數。僅僅在 mesos 或者 standalone 下使用
  • --driver-class-path    傳給 driver 的額外的類路徑
  • --num-excutors   啟動的 executor 數量。預設為2。在 yarn 下使用

資源排程時,

  • Executor在叢集中分散啟動;
  • 提交Spark任務時如果不指定引數,叢集中每個Worker為當前的Application都會啟動一個Executor,這個Executor會使用當前節點的所有的core和1G記憶體;
  • 如果想在一臺Worker上啟動多個Executor,提交任務要指定--executor-cores
  • 啟動executor不僅和core有關,海域Executor有關
  • 提交Appplication要指定--total-executor-cores,否則一個Application會使用叢集所有資源;