【課程目標】
1、深入理解Spark計算原理和編程模型,掌握Spark Core和SparkSql、SparkStreaming等上層系統(tǒng)的結合方式
2、深入掌握SparkCore、SparkSql使用調優(yōu)技巧
3、深入掌握SparkStreaming和SparkMllib使用和調優(yōu)技巧
4、深入掌握Spark和其他組件的結合使用
5、了解Spark與MapReduce分布式計算模型的區(qū)別和各自適合的使用場景。
6、能夠使用java、python和scala進行spark應用開發(fā)(如果要講解三種語言開發(fā)spark,工作量會非常大,建議只講解一種(可以根據(jù)企業(yè)的要求來定,)
7、熟練使用spark、spark streaming、spark SQL、spark mllib
8、深入了解spark在大型互聯(lián)網(wǎng)的架構和使用場景
【培訓對象】
各地企事業(yè)單位大數(shù)據(jù)產(chǎn)業(yè)相關人員,運營商 IT信息化和運維工程師相關人員,金融業(yè)信息化相關人員,或對大數(shù)據(jù)spark感興趣的相關人員。
【師資介紹】
張老師:阿里大數(shù)據(jù)專家,國內的Spark、Hadoop技術專家、虛擬化專家,對HDFS、MapReduce、HBase、Hive、Mahout、Storm、spark和openTSDB等Hadoop生態(tài)系統(tǒng)中的技術進行了多年的深入的研究,更主要的是這些技術在大量的實際項目中得到廣泛的應用,因此在Hadoop開發(fā)和運維方面積累了豐富的項目實施經(jīng)驗。近年主要典型的項目有:某電信集團網(wǎng)絡優(yōu)化、中國移動某省移動公司請賬單系統(tǒng)和某省移動詳單實時查詢系統(tǒng)、中國銀聯(lián)大數(shù)據(jù)數(shù)據(jù)票據(jù)詳單平臺、某大型銀行大數(shù)據(jù)記錄系統(tǒng)、某大型通信運營商全國用戶上網(wǎng)記錄、某省交通部門違章系統(tǒng)、某區(qū)域醫(yī)療大數(shù)據(jù)應用項目、互聯(lián)網(wǎng)公共數(shù)據(jù)大云(DAAS)和構建游戲云(Web Game Daas)平臺項目等。
【頒發(fā)證書】
參加相關培訓并通過考試的學員,可以獲得:
1.工業(yè)和信息化部全國網(wǎng)絡與信息技術項目管理中心頒發(fā)的-大數(shù)據(jù)工程師職業(yè)技能證書。該證書可作為專業(yè)技術人員職業(yè)能力考核的證明,以及專業(yè)技術人員崗位聘用、任職、定級和晉升職務的重要依據(jù)。
【培訓特色】
本課程基于新的spark 2講解,內容涵蓋了企業(yè)中大數(shù)據(jù)處理的四大場景:
離線批處理、流式計算、SQL處理、機器學習。Spark是一個廣泛應用的分布式內存計算模型,旨在大幅提升的迭代算法和交互低延遲數(shù)據(jù)挖掘的性能。Spark更適合于迭代運算比較多的ML和DM運算,one stack rule them all!Spark號稱一個平臺可以適合所有的應用,如SparkSql可以處理結構化數(shù)據(jù),SparkStreaming旨在提供實時的計算能力,而SparkMllib則提供了豐富機器學習算法庫
【培訓大綱】
模塊一 Spark 2.1概述
1、Spark產(chǎn)生背景,包括mapreduce缺陷,多計算框架并存等
2、Spark 基本特點
3、Spark版本演化
4、Spark核心概念,包括RDD, transformation, action, cache等
5、Spark生態(tài)系統(tǒng),包括Spark生態(tài)系統(tǒng)構成,以及與Hadoop生態(tài)系統(tǒng)關系
6、Spark在互聯(lián)網(wǎng)公司中的地位與應用
7、介紹當前互聯(lián)網(wǎng)公司的Spark應用案例
8、Spark集群搭建,包括測試集群搭建和生產(chǎn)環(huán)境中集群搭建方法,并親手演示整個過程
9、背景知識補充介紹
模塊二 Spark Core
Spark 程序設計與企業(yè)級應用案例
1、Spark運行模式介紹
Spark運行組件構成,spark運行模式(local、standalone、mesos/yarn等)
2、Spark開發(fā)環(huán)境構建
集成開發(fā)環(huán)境選擇,親手演示spark程序開發(fā)與調試,spark運行
3、常見transformation與action用法
介紹常見transformation與action使用方法,以及代碼片段剖析
4、常見控制函數(shù)介紹
包括cache、broadcast、accumulator等
5、Spark 應用案例:點擊流日志分析
包括:背景介紹,數(shù)據(jù)導入,數(shù)據(jù)分析,常見Spark transformation和action用法在線演示
模塊三 Spark內部原理剖析與源碼閱讀
1、Spark運行模式剖析
深入分析spark運行模式,包括local,standalone以及spark on yarn
2、Spark運行流程剖析
包括spark邏輯查詢計劃,物理查詢計劃以及分布式執(zhí)行
3、Spark shuffle剖析
深入介紹spark shuffle的實現(xiàn),主要介紹hash-based和sort-based兩種實現(xiàn)
4、Spark 源碼閱讀
Spark源碼構成以及閱讀方法
模塊四 Spark sql 2.1
Spark SQL基本原理
1、Spark SQL是什么
2、Spark SQL基本原理
3、Spark Dataframe與DataSet
4、Spark SQL與Spark Core的關系
模塊五 Spark SQL程序設計與企業(yè)級應用案例
1、Spark SQL程序設計
a. 如何訪問MySQL、HDFS等數(shù)據(jù)源,如何處理parquet格式數(shù)據(jù)
b. 常用的DSL語法有哪些,如何使用
c. Spark SQL調優(yōu)技巧
d. 數(shù)據(jù)傾斜解決方案
模塊六 Spark Streaming程序設計及應用案例
1、Spark Streaming基本原理
a. Spark Streaming是什么
b. Spark Streaming基本原理
c. Structured Streaming
d. Spark Streaming 編程接口介紹
e. Spark Streaming應用案例
2、Spark Streaming程序設計與企業(yè)級應用案例
a. 常見流式數(shù)據(jù)處理模式
b. Spark Streaming與Kafka 交互
c. Spark Streaming與Redis交互
d. Spark Streaming部署與運行
e. Spark Streaming企業(yè)級案例:用戶行為實時分析系統(tǒng)
模塊七 Spark MLlib企業(yè)級案例
1. Spark MLlib簡介
2. 數(shù)據(jù)表示方式
3. MLlib中的聚類、分類和推薦算法
4. 如何使用MLlib的算法
5. Spark MLLib企業(yè)級案例:用戶畫像之性別預測
模塊八 Spark綜合案例信用評分實時分析系統(tǒng)
1. 背景介紹
2. 什么是Lambda architecture
3. 利用Spark Core+MLlib+構建離線處理
4. 利用flume+Spark Streaming+Redis構建實時處理線
5. 整合批處理和實時處理線