Spark2 3 1中用各種模式來跑官方Demo

2022-08-26 20:39:10 字數 2269 閱讀 9868

local模式也就是本地模式,也就是在本地機器上單機執行程式。使用這個模式的話,並不需要啟動hadoop集群,也不需要啟動spark集群,只要有一台機器上安裝了jdkscalaspark即可執行。

進入到spark2.1.1的安裝目錄,命令是:

cd  /opt/spark/spark-2.1.1-bin-hadoop2.7
執行命令,用單機模式執行計算圓周率的demo:

./bin/spark-submit  --class   org.apache.spark.examples.sparkpi  --master   local  examples/jars/spark-examples_2.11-2.1.1.jar
如圖:

這種模式也就是standalone模式,使用獨立的spark集群模式提交任務,需要先啟動spark集群,但是不需要啟動hadoop集群。啟動spark集群的方法是進入$spark_home/sbin目錄下,執行start-all.sh指令碼,啟動成功後,可以訪問下面的位址看是否成功:

http://spark的marster機器的ip:8080/

如圖:

執行命令,用standalone模式執行計算圓周率的demo:

./bin/spark-submit   --class   org.apache.spark.examples.sparkpi   --master   spark:   examples/jars/spark-examples_2.11-2.1.1.jar
如圖:

cd   /opt/spark/spark-2.1.1-bin-hadoop2.7
執行命令,用yarn-client模式執行計算圓周率的demo:

./bin/spark-submit   --class  org.apache.spark.examples.sparkpi  --master  yarn-client    examples/jars/spark-examples_2.11-2.1.1.jar
我這裡出現了報錯, 如圖:

解決方法:

echo -e "

export hadoop_conf_dir=/usr/local/hadoop-2.7.3/etc/hadoop

" >> /etc/profile

source /etc/profile

接著執行...

又出現了如下報錯....

經一番gooole, 由於vmware設定了4g記憶體,本地虛機啟動了太多程式導致記憶體不夠引起.

解決方案:

修改yarn-site.xml,新增下列property

cd   /opt/spark/spark-2.1.1-bin-hadoop2.7
執行命令,用yarn-cluster模式執行計算圓周率的demo:

./bin/spark-submit  --class  org.apache.spark.examples.sparkpi  --master  yarn-cluster   examples/jars/spark-examples_2.11-2.1.1.jar

Spark2 3 1 函式傳遞

spark api非常依賴於在驅動器程式傳遞函式到集群上執行,有兩種方式 1 匿名函式 2 全域性單例物件的靜態方法 1 傳遞單例物件的函式 object myfunctions myrdd.map myfunctions.func1 2 在類的方法中有transformation action操作...

Spark2 3 1使用技巧

case class studentinfo id long,name string,age int val example spark.read.json data result.json as studentinfo example.show 在需要根據不同資料定義不同schema val sc...

centos 5 3中用yum安裝MPlayer

centos 5.3中用yum安裝mplayer 1 編輯 etc yum.repos.d centos base.repo 首先備份原來的源配置檔案為 centos base.repo.bak cp etc yum.repos.d centos base.repo etc yum.repos.d ...