-
1 # 張豆豆童鞋
-
2 # 莫安迪
深圳大資料培訓學校哪裡好?到千鋒教育學習就很好。
Spark效能最佳化的頭一步,就是要在開發Spark作業的過程中注意和應用一些效能最佳化的基本原則。開發調優,就是要讓大家瞭解以下一些Spark基本開發原則,包括:RDD lineage設計、運算元的合理使用、特殊操作的最佳化等。在開發過程中,時時刻刻都應該注意以上原則,並將這些原則根據具體的業務以及實際的應用場景,靈活地運用到自己的Spark作業中。
原則一:避免建立重複的RDD
通常來說,我們在開發一個Spark作業時,首先是基於某個資料來源(比如Hive表或HDFS檔案)建立一個初始的RDD;接著對這個RDD執行某個運算元操作,然後得到下一個RDD;以此類推,迴圈往復,直到計算出我們需要的結果。在這個過程中,多個RDD會透過不同的運算元操作(比如map、reduce等)串起來,這個“RDD串”,就是RDD lineage,也就是“RDD的血緣關係鏈”。
我們在開發過程中要注意:對於同一份資料,只應該建立一個RDD,不能建立多個RDD來代表同一份資料。
原則二:儘可能複用同一個RDD
除了要避免在開發過程中對一份完全相同的資料建立多個RDD之外,在對不同的資料執行運算元操作時還要儘可能地複用一個RDD,這樣可以儘可能地減少RDD的數量,從而儘可能減少運算元執行的次數。
原則三:對多次使用的RDD進行持久化
當你在Spark程式碼中多次對一個RDD做了運算元操作後,恭喜,你已經實現Spark作業頭一步的優化了,也就是儘可能複用RDD。此時就該在這個基礎之上,進行第二步優化了,也就是要確保對一個RDD執行多次運算元操作時,這個RDD本身僅僅被計算一次。
Spark中對於一個RDD執行多次運算元的預設原理是這樣的:每次你對一個RDD執行一個運算元操作時,都會重新從源頭處計算一遍,計算出那個RDD來,然後再對這個RDD執行你的運算元操作。這種方式的效能是很差的。因此對於這種情況,我們的建議是:對多次使用的RDD進行持久化。
原則四:儘量避免使用shuffle類運算元
如果有可能的話,要儘量避免使用shuffle類運算元。因為Spark作業執行過程中,消耗效能的地方就是shuffle過程。shuffle過程,簡單來說,就是將分佈在叢集中多個節點上的同一個key,拉取到同一個節點上,進行聚合或join等操作。比如reduceByKey、join等運算元,都會觸發shuffle操作。
原則五:使用map-side預聚合的shuffle操作
如果因為業務需要,一定要使用shuffle操作,無法用map類的運算元來替代,那麼儘量使用可以map-side預聚合的運算元。
原則六:廣播大變數
有時在開發過程中,會遇到需要在運算元函式中使用外部變數的場景(尤其是大變數,比如100M以上的大集合),那麼此時就應該使用Spark的廣播(Broadcast)功能來提升效能。
以上就是千鋒深圳大資料培訓學校老師的經驗總結,希望每一位同學都能在大資料技術上精益求精!
-
3 # 課工場—武漢
“BIG DATE”大資料 爆發的今天,還有很多人不知道大資料是什麼?只知道它在不停收集我們的資訊、習慣,但是不知道怎麼操作?知道這是一個高薪行業,但是不知道怎麼學?
為什麼要選擇學習北美大資料?
課工場北美專家+教學專家,雙師教學,強強聯合
對於學員來說,進入一個新領域,少走彎路,節省時間成本,獲得真正企業實踐技術和經驗,高起點入行,找對高人是關鍵。某些培訓機構的講師要麼是教學經驗豐富但欠缺企業實戰經驗,學員學不到企業真正應用技術。要麼是不會講課的企業實戰專家,縱有一身經驗,學員聽不懂。
北美大資料聘請一直在大資料開發領域深耕的北美大資料技術專家團隊,該團隊不但實戰經驗豐富,能夠提供企業實際應用的絕對乾貨,而且常年堅持分享技術,教學經驗豐富。看看部分大咖們的從業經歷,可見一斑:
北美大資料專家團隊
以Wayne、Will、Raymond為代表的北美專家只是課工場部分大咖,目前課工場擁有327位專家顧問,在人工智慧、區塊鏈、雲計算等學院進行研發和教學工作。課工場為此專門配備了教學專家,發揮多年教學設計的優勢,和北美團隊強強聯合,共同設計出科學的課程體系。
內容為王國際領先的大資料技術打造學員核心競爭力
當前,市面上大資料培訓魚龍混雜,用 Java 、 PHP 、資料庫內容充數,真正大資料內容所佔比例很小,但真正大資料是 hadoop 、 spark 技術棧、大資料系統管理與最佳化、 Python 、機器學習等內容。
北美大資料課程中獨有的國際領先的大資料技術,如:資料湖、元資料治理 Atlas 、資料安全 Ranger 、 Spark Streaming 、 Flink / Streaming、 NiFi 、 Flume + Kafka + Spark + Redis + Mysql 、 Spark GraphX 、 PySpark 、 Anaconda 、 Spark MLlib 、 NumPy 、 Pandas 、 Confluent 、 Cassandra 等等,實力提升學員的技術能力。
全方位學習服務為就業保駕護航
課為確保學員學習效果,北美大資料教課實行“北美專家直播+中心教員貼身教練+班主任學員管理+就業專員就業服務”一體化服務,教學團隊分工明確,緊密配合,為學員提供全方位服務。
過程精細化管理,結果水到渠成:在授課過程中和結束後,專家、教員在QQ群答疑互動,及時瞭解學員問題。每週教學團隊至少1小時溝通,根據學員反饋及時調整學習進度和課程安排,並透過滿意度調查,及時收集學員反饋,確保學員學會並學以致用。
就業+一年免費技術支援:高薪是基本,順利渡過首年試用和轉正期,在企業站穩腳跟才是真負責。課工場不但提供就業前的服務(簡歷撰寫、面試輔導、企業合作、組織行業專家分享和學哥學姐經驗分享等等),而且就業後,北美專家和中心老師還提供一年免費技術支援,解決新手在工作中遇到的問題,幫助他們快速適應工作。
課工場具有專業性和前瞻性的高質量課程內容在實際的教學過程中達到了超出預期的效果。在課工場北美大資料班中,多名結業學員分別就職於百度、中國聯通、微吼、虎嗅等知名公司,受到了市場的高度認可。
阿里雲大學授權培訓合作伙伴 真正的大資料開發部署
為讓北美大資料班的實習生們掌握真正的大資料開發部署,大家基地學習期間將採用企業真實大資料開發部署環境。
而作為阿里雲大學授權培訓合作伙伴,在基地的實習期間為大家提供針對大資料的黃金認證“阿里雲認證”資格考核,獲得證書的實習生將有機會被阿里雲相關崗位優先聘用!
回覆列表
有很多地方都可以學呀,深圳。武漢。北京等地方都有大資料培訓的,之前我有個朋友在光環國際學的,那裡還挺好的,現在都已經上班了。