總述:
Spark Streaming的流式處理可以在線的處理圖計算,機器學習,等等
Spark Streaming 很像Spark Core上的一個應用程序
如果你想做一個最好的應用程序的話,他提供了最好的參考
任何事物都有他的興奮點、轉折點. 就如獨孤九劍贏在轉折點的趨勢點上,因爲它是在你要做之前就在那等你。
小技巧:
把Spark Streaming 中的batch interval 放到足夠大,例如5分鐘
------------------------------案例開始---------------------------
下面是演示此技巧的過程:
1.修改一支Spark Stream的程序,將時間改爲300秒(即5分鐘)
2.導出執行Jar包
3.將執行Jar包從本機拷貝到集羣文件目錄下
4.編寫程序運行的shell腳本
5.重啓spark集羣,開啓運行環境
6.查看底層文件系統是否OK
7.啓動 ./start-history-server.sh (圖略),方便監控
8.運行shell腳本運行程序
9.啓動nc 日誌採集窗口(圖略)
10.看下運行結果:我們到底過濾了什麼?
11.下面我們一步步觀察運行過程
而且數據接收器運行了1.5分鐘 why?
但是Receiver是在Executor中運行的,且在這個地方就是以一個Task去接收數據
Receiver接收數據和普通的Job沒有區別,啓示:不能得Job之間可以相互配合
爲你寫複雜的程序奠定了良好的基礎。是黃金切入點。
複雜的程序一定是多個Job構成的。
接收數據是在一個worker中接收的,但是Executor發生在4個worker裏面
真正的Job的執行只有一個,但是產生了很多個Job
他爲了一個批處理做了這麼多工作. 4個Job,前面一個Job,後面3個Job
----------------------------案例結束------------------------
Spark Streaming 運行過程圖解:
Spark Streaming 官網說明解讀:
備註:
這是我的Spark版本定製班學習筆記
更多私密內容,請關注微信公衆號:DT_Spark
如果您對大數據Spark感興趣,可以免費聽由王家林老師每天晚上20:00開設的Spark永久免費公開課,地址YY房間號:68917580