你想成為Spark高手嗎?只要這6步!

伴隨Spark技術(shù)的普及推廣,對專業(yè)人才的需求日益增加。Spark專業(yè)人才在未來也是炙手可熱,輕而易舉可以拿到百萬的薪酬。而要想成為Spark高手,也需要一招一式,從內(nèi)功練起:以下6個階段,高手必經(jīng)之路。

1.熟練掌握Scala語言

Spark框架是采用Scala語言編寫的,精致而優(yōu)雅。要想成為Spark高手,你就必須閱讀Spark的源代碼,就必須掌握Scala;

雖然說現(xiàn)在的Spark可以采用多語言Java、Python等進(jìn)行應(yīng)用程序開發(fā),但是最快速的和支持最好的開發(fā)API依然并將永遠(yuǎn)是Scala方式的API,所以你必須掌握Scala來編寫復(fù)雜的和高性能的Spark分布式程序;

尤其要熟練掌握Scala的trait、apply、函數(shù)式編程、泛型、逆變與協(xié)變等;

2.精通Spark平臺API

掌握Spark中面向RDD的開發(fā)模式,掌握各種transformation和action函數(shù)的使用;

掌握Spark中的寬依賴和窄依賴以及l(fā)ineage機(jī)制;

掌握RDD的計算流程,例如Stage的劃分、Spark應(yīng)用程序提交給集群的基本過程和Worker節(jié)點基礎(chǔ)的工作原理等。

3.深入Spark內(nèi)核

此階段主要是通過Spark框架的源碼研讀來深入Spark內(nèi)核部分:

通過源碼掌握Spark的任務(wù)提交過程;

通過源碼掌握Spark集群的任務(wù)調(diào)度;

尤其要精通DAGScheduler、TaskScheduler和Worker節(jié)點內(nèi)部的工作的每一步的細(xì)節(jié);

4.掌握基于Spark的核心框架

Spark作為云計算大數(shù)據(jù)時代的集大成者,在實時流處理、圖技術(shù)、機(jī)器學(xué)習(xí)、NoSQL查詢等方面具有顯著的優(yōu)勢,我們使用Spark的時候大部分時間都是在使用其上的框架例如Shark、Spark Streaming等:

Spark Streaming是非常出色的實時流處理框架,要掌握其DStream、transformation和checkpoint等;

Spark的離線統(tǒng)計分析功能,Spark1.0.0版本在Shark的基礎(chǔ)上推出了SparkSQL,離線統(tǒng)計分析的功能的效率有顯著的提升,需要重點掌握;

對于Spark的機(jī)器學(xué)習(xí)和GraphX等要掌握其原理和用法;

5.做商業(yè)級別的Spark項目

通過一個完整的具有代表性的Spark項目來貫穿Spark的方方面面,包括項目的架構(gòu)設(shè)計、用到的技術(shù)的剖析、開發(fā)實現(xiàn)、運維等,完整掌握其中的每一個階段和細(xì)節(jié),這樣就可以讓您以后可以從容面對絕大多數(shù)Spark項目。

6.提供Spark解決方案

徹底掌握Spark框架源碼的每一個細(xì)節(jié);

根據(jù)不同的業(yè)務(wù)場景的需要提供Spark在不同場景的下的解決方案;

根據(jù)實際需要,在Spark框架基礎(chǔ)上進(jìn)行二次開發(fā),打造自己的Spark框架;

前面所述的成為Spark高手的六個階段中的第一和第二個階段可以通過自學(xué)逐步完成,隨后的三個階段最好是由高手或者專家的指引下一步步完成,最后一個階段,基本上就是到"無招勝有招"的時期,很多東西要用心領(lǐng)悟才能完成。

原文地址:http://www.dashengzb.cn/articles/a-224.html

(更多大數(shù)據(jù)與商業(yè)智能領(lǐng)域干貨、兼職機(jī)會請關(guān)注大圣眾包平臺,或添加大圣花花個人微信號(dashenghuaer),拉你入bigdata&BI交流群330648564。)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容