如何從菜鳥成長成spark大數據高手(轉載+自我筆記)

如何從菜鳥成長成spark大數據高手(轉載+自我筆記)
以後會出各種關於hadoop,spark,機器學習專題,新手筆記,大家多多提意見。

Spark採用了一個統一的技術堆棧解決了雲計算大數據的如流式處理,圖技術,機器學習,nosql查詢等方面的核心問題,RDD。
具有完整的生態系統,這奠定了一統雲計算大數據領域的霸主地位。
要成爲高手,需要經歷以下幾個階段。

第一階段:熟練掌握Scala語言
1,spark框架是採用scala語言寫的,精緻優雅。想要成爲spark高手,你就必須閱讀spark源碼,就必須掌握scala。
2,雖然現在的spark可以使用多種語言開發,java,python,但是最快速和支持最好的API依然並將永遠是Scala的API,所以必須掌握scala來編寫複雜的和高性能的spark分佈式程序。
3尤其是熟練掌握Scala的trait,apply,函數式編程,泛型,逆變,與協變等。

第二階段:精通spark平臺本身提供給開發折的API
1,掌握spark中面向RDD的開發模式,掌握各種transformation和action函數的使用。
2,掌握Spark中的款依賴和窄依賴,lineage機制
3,掌握RDD的計算流程,如Stage的劃分,spark應用程序提交給集羣的基礎過程和Work節點基礎的工作原理。

第三階段:深入Spark內核
此階段主要是通過Spark框架的源碼研讀來深入Spark內核部分:
1,通過源碼掌握Spark的任務提交,
2,通過源碼掌握Spark的集羣的任務調度,
3,尤其要精通DAGScheduler,TaskScheduler和Worker節點內部的工作的每一步細節。

第四階段:掌握Spark上的核心框架的使用
Spark作爲雲計算大數據時代的集大成者,在實時流式處理,圖技術,機器學習,nosql查詢等方面具有明顯的優勢,我們使用Spark的時候大部分時間都是在使用其框架:
sparksql,spark streaming等
1,spark streaming是出色的實時流失處理框架,要掌握,DStream,transformation和checkpoint等。
2,spark sql是離線統計分析工具,shark已經沒落。
3,對於spark中的機器學習和Graphx等要掌握其原理和用法。

第五階段:做商業級的spark項目
通過一個完整的具有代表性的spark項目來貫穿spark的方方面面,包括項目的框架設計,用到的技術的剖析,開始實現,運維等,完善掌握其中的每一個階段和細節,以後你就可以從容的面對絕大多數spark項目。

第六階段:提供spark解決方案
1,徹底掌握spark框架源碼的每一個細節,
2,根據步同的業務場景的需要提供spark在不同場景的解決方案,
3,根據實際需要,在spark框架基礎上經行2次開發,打造自己的spark框架。

前兩個階段可以自學,隨後三個框架需要高手或者專家帶,才能完成,最後一個階段,基本也就到了無招勝有招了。

本文來自數學科學,做學習使用。

發佈了26 篇原創文章 · 獲贊 20 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章