Step1:啓動Spark集羣,這一點在第三講講的極爲細緻,啓動後的WebUI以下:web
Step2:啓動Spark Shell:shell
此時能夠經過以下Web控制檯查看shell的狀況:app
Step3:把Spark安裝目錄「README.md」拷貝到HDFS系統上測試
在Master節點上新啓動一個命令終端,並進入到Spark安裝目錄下:spa
咱們把文件拷貝到HDFS的root文件夾下:orm
此時,咱們觀察一下Web控制檯,會發現該文件已經成功上傳到HDFS上:it
Step4:在Spark shell之下操做編寫代碼,操做咱們上傳的「README.md」:ast
首先,咱們看一下在Shell環境下的「sc」這個自動幫助咱們生產的環境變量:import
能夠看出sc就是SparkContext的實例,這是在啓動Spark Shell的時候系統幫助咱們自動生成的,SparkContext是把代碼提交到集羣或者本地的通道,咱們編寫Spark代碼,不管是要運行本地仍是集羣都必須有SparkContext的實例。集羣
接下來,咱們讀取「README.md」這個文件:
咱們把讀取的內容保存給了file這個變量,其實file是一個MappedRDD,在Spark的代碼編寫中,一切都是基於RDD操做的;
再接下來,咱們從讀取的文件中過濾出全部的「Spark」這個詞
此時生成了一個FilteredRDD;
再接下來,咱們統計一下「Spark」一共出現了多少次:
從執行結果中咱們發現「Spark」這個詞一共出現了15次。
此時,咱們查看Spark Shell的Web控制檯:
發現控制檯中顯示咱們提交了一個任務併成功完成,點擊任務能夠看到其執行詳情:
那咱們如何驗證Spark Shell對README.md這個文件中的「Spark」出現的15次是正確的呢?其實方法很簡單,咱們能夠使用Ubuntu自帶的wc命令來統計,以下所示:
發現此時的執行結果也是15次,和Spark Shell的計數是同樣同樣的。