題記部分
一、Local模式
1.1、概述
Local模式就是執行在一臺計算機上的模式,通常就是用於在本機上練手和測試的。
可以透過以下幾種方式設定Master
(1)local:所欲計算都執行在一個執行緒當中,沒有任何平行計算,通常我們在本機執行一些測試程式碼,或者練手,就用這種模式。
(2)local[K]:指定使用幾個執行緒來執行計算,比如local[4]就是執行4個Worker執行緒。通常我們的CPU有幾個Core,就指定幾個執行緒,最大化利用CPU的計算能力。
(3)local[*]:這種模式直接幫你按照CPU最多Cores來設定執行緒數了。
1.2、安裝使用及測試
(1)將Spark的tar包上傳到叢集的任意節點的合適目錄並解壓
(2)使用spark-submit求SparkPi
bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--executor-memory 1G \
--total-executor-cores 2 \
./exemples/jars/spark-examples_2.11-2.2.1.jar \
100
1.3、spark-submit 引數說明
引數名 | 引數說明 |
--master |
master的地址,提交任務到哪裡執行(spark://host:port,yarn,local) |
--deploy-mode |
在本地(client)啟動 driver 或在 cluster 上啟動,預設是 client |
--class |
應用程式的主類,僅針對 java 或 scala 應用 |
--name |
應用程式的名稱 |
--jars |
用逗號分隔的本地jar包,設定後,這些jar將包含在 driver 和 executor 的classpath下 |
--packages |
包含在 driver 和 executor 的 classpath 中的 jar 的 maven 座標 |
--execlude-packages |
為了避免衝突而指定不包含的 package |
--repositories |
遠端 repository
|
--conf PROP=VALUE |
指定 spark 的配置屬性,例如 --conf spark.executor.extraJavaOptions="-XX:MaxPermSize=256m" |
--properties-file |
載入的配置檔案,預設為 conf/spark-defaults.conf
|
--driver-memory |
Driver 記憶體,預設 1G
|
--driver-java-options |
傳給 driver 的額外的 Java 選項
|
--driver-library-path |
傳給 driver 的額外的庫路徑
|
--driver-class-path |
傳給 driver 的額外的類路徑
|
--executor-memory |
每個 executor 的記憶體,預設是 1G
|
--total-executor-cores |
所有 executor 總共的核數。僅僅在 mesos 或者 standalone 下使用
|
--num-executors |
啟動的 executor 數量。預設為 2。在 yarn 下使用
|
--executor-core |
每個 executor 的核數。在 yarn 或者 standalone 下使用
|
二、Standalone模式
三、HA
四、Yarn模式
五、Mesos模式
— 業精於勤荒於嬉,行成於思毀於隨 —