-
一、什么是Spark?
?? ?
1、什么是Spark?
?? ?
2、為什么學(xué)習(xí)Spark?
?? ?
3、Spark的特點(diǎn):快、易用、通用、兼容性
二、Spark 的體系結(jié)構(gòu)與安裝配置
?? ?
1、Spark集群的體系結(jié)構(gòu)
?? ?
2、Spark的安裝與部署
?? ?
3、Spark的HA(high availablity)部署
?? ??? ?
(1)? 基于文件的方式
?? ??? ?
(2? )基于ZooKeeper的方式
三、執(zhí)行Spark Demo 程序
?? ?
1、執(zhí)行Spark Example程序
?? ?
2、使用Spark Shell
?? ?
3、在IDEA中開(kāi)發(fā)WordCount程序(Scala版本,Java 版本)
四、Spark 的運(yùn)行機(jī)制及原理分析
?? ?
1、WordCount執(zhí)行的流程分析
?? ?
2、Spark提交任務(wù)的流程
五、Spark 的RDD和算子
?? ?
1、RDD基礎(chǔ)
?? ?
2、Transformation算子
?? ?
3、Action算子
?? ?
4、RDD的緩存機(jī)制
??? 5、RDD的checkpoint(檢查點(diǎn))機(jī)制:容錯(cuò)機(jī)制
??? 6、RDD的依賴關(guān)系和Spark任務(wù)中的stage
??? 7、RDD 基礎(chǔ)練習(xí)
六、Spark RDD 的高級(jí)算子
?? ?
1、mapPartitionsWithIndex
?? ?
2、aggregate
?? ?
3、aggregateByKey
?? ?
4、coalesce和repartition
?? ?
5、其他高級(jí)算子
七、Spark 基礎(chǔ)編程案例
??? 1、案例一:計(jì)算網(wǎng)站的訪問(wèn)量
?? ?
2、案例二:創(chuàng)建自定義分區(qū)
??? 3、案例三:訪問(wèn)數(shù)據(jù)庫(kù)