elasticsearch入門系列">elasticsearch入門系列
1334
2022-05-30
大家好,我是不溫卜火,是一名計算機學院大數據專業大二的學生,昵稱來源于成語—不溫不火,本意是希望自己性情溫和。作為一名互聯網行業的小白,博主寫博客一方面是為了記錄自己的學習過程,另一方面是總結自己所犯的錯誤希望能夠幫助到很多和自己一樣處于起步階段的萌新。但由于水平有限,博客中難免會有一些錯誤出現,有紕漏之處懇請各位大佬不吝賜教!暫時只有csdn這一個平臺,博客主頁:https://buwenbuhuo.blog.csdn.net/
此篇為大家帶來的是Spark 運行模式之Local本地模式。
目錄
一. 解壓 Spark 安裝包
二. 運行官方求PI的案例
2.1 `spark-submit`語法
2.2 關于 `Master URL` 的說明
2.3 結果展示
2.4 另一種方法
三. 使用 `Spark-shell`
3.1 創建 2 個文本文件
3.2 打開 Spark-shell
3.3 查看進程和通過 web 查看應用程序運行情況
3.4 運行 `wordcount` 程序
3.5 登錄hadoop102:4040查看程序運行
四. 提交流程
五. wordcount 數據流程分析
Local 模式就是指的只在一臺計算機上來運行 Spark.
通常用于測試的目的來使用 Local 模式, 實際的生產環境中不會使用 Local 模式.
一. 解壓 Spark 安裝包
1. 把安裝包上傳到/opt/software/
2. 把安裝包上傳到/opt/module/
[bigdata@hadoop002 software]$ tar -zxvf spark-2.1.1-bin-hadoop2.7.tgz -C /opt/module
1
3. 重命名為spark-local(為了方便復制一個并重新命名)
[bigdata@hadoop002 module]$ cp -r spark-2.1.1-bin-hadoop2.7 spark-local
1
4. 注意
如果有權限問題,可以修改為root,方便學習時操作,實際中使用運維分配的用戶和權限即可。
chown -R root /opt/module/spark-local chgrp -R root /opt/module/spark-local
1
2
5. 解壓目錄說明
bin 可執行腳本 conf 配置文件 data 示例程序使用數據 examples 示例程序 jars 依賴 jar 包 python pythonAPI R R 語言 API sbin 集群管理命令 yarn 整合yarn需要的文件
1
2
3
4
5
6
7
8
9
10
二. 運行官方求PI的案例
[bigdata@hadoop002 spark-local]$ bin/spark-submit \ --class org.apache.spark.examples.SparkPi \ --master local[2] \ ./examples/jars/spark-examples_2.11-2.1.1.jar 100
1
2
3
4
5
注意:
如果你的shell是使用的zsh, 則需要把local[2]加上引號:'local[2]'
說明:
使用spark-submit來發布應用程序.
2.1 spark-submit語法
./bin/spark-submit \ --class
1
2
3
4
5
6
7
8
9
–master 指定 master 的地址,默認為local. 表示在本機運行.
–class 你的應用的啟動類 (如 org.apache.spark.examples.SparkPi)
–deploy-mode 是否發布你的驅動到 worker節點(cluster 模式) 或者作為一個本地客戶端 (client 模式) (default: client)
–conf: 任意的 Spark 配置屬性, 格式key=value. 如果值包含空格,可以加引號"key=value"
application-jar: 打包好的應用 jar,包含依賴. 這個 URL 在集群中全局可見。 比如hdfs:// 共享存儲系統,
如果是 file:// path, 那么所有的節點的path都包含同樣的jar
application-arguments: 傳給main()方法的參數
–executor-memory 1G 指定每個executor可用內存為1G
–total-executor-cores 6 指定所有executor使用的cpu核數為6個
–executor-cores 表示每個executor使用的 cpu 的核數
2.2 關于 Master URL 的說明
2.3 結果展示
2.4 另一種方法
也可以使用run-examples來運行
[bigdata@hadoop002 spark-local]$bin/run-example SparkPi 100
1
三. 使用 Spark-shell
Spark-shell 是 Spark 給我們提供的交互式命令窗口(類似于 Scala 的 REPL)
本案例在 Spark-shell 中使用 Spark 來統計文件中各個單詞的數量.
3.1 創建 2 個文本文件
mkdir input cd input touch 1.txt touch 2.txt
1
2
3
4
3.2 打開 Spark-shell
[bigdata@hadoop002 spark-local]$ bin/spark-shell
1
3.3 查看進程和通過 web 查看應用程序運行情況
地址: http://hadoop002:4040
3.4 運行 wordcount 程序
scala> sc.textFile("./input").flatMap(_.split(" ")).map((_, 1)).reduceByKey(_ + _).collect
1
3.5 登錄hadoop102:4040查看程序運行
四. 提交流程
五. wordcount 數據流程分析
textFile("input"):讀取本地文件input文件夾數據;
flatMap(_.split(" ")):壓平操作,按照空格分割符將一行數據映射成一個個單詞;
map((_,1)):對每一個元素操作,將單詞映射為元組;
reduceByKey(_+_):按照key將值進行聚合,相加;
collect:將數據收集到Driver端展示。
本次的分享就到這里了,
好書不厭讀百回,熟讀課思子自知。而我想要成為全場最靚的仔,就必須堅持通過學習來獲取更多知識,用知識改變命運,用博客見證成長,用行動證明我在努力。
如果我的博客對你有幫助、如果你喜歡我的博客內容,請“” “評論”“”一鍵三連哦!聽說的人運氣不會太差,每一天都會元氣滿滿呦!如果實在要白嫖的話,那祝你開心每一天,歡迎常來我博客看看。
碼字不易,大家的支持就是我堅持下去的動力。后不要忘了關注我哦!
Hadoop spark
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。