Spark3.3源码分析课程

大数据开发工程师、数仓工程师(希望提升自己的coding能力的)
不甘心只做一个SQL Boy,想要去更大的平台,更高的发展空间

熟悉Scala语言、对Spark有一定的使用经验

Scala、Netty、NIO、多线程、分布式原理、设计模式等

提升代码阅读能力同时大大提升自己的编码能力、螺旋式教学方式逢山开路,遇水搭桥,事先会铺垫一些要用的的知识点,通过这些知识点,自己动手编写程序,然后在回过头阅读Spark的源码

  • 熟练阅读Spark的源码、深入掌握Spark内核原理、自己动手写一个简化版的Spark
  • 有能力参与Spark二次开发、甚至参与Spark社区贡献代码
  • 有潜力成为Spark技术领域小能手、小专家

课程视频(共分成14大模块),章节目录如下:

1.1 SparkRPC简介
1.2 SparkRPC入门案例
1.3 实现Master和Worker相互通信
1.4 完善Master和Worker通信案例
1.5 Netty简介和入门案例
1.6 Netty的Handler的定义
1.7 Netty的Pipeline中的Handler执行顺序
1.8 SparkRPC原理和工作流行介绍
1.9 定义RpcEndpoint的RpcEndpointRef
1.10 实现NettyRpcEnvFactory和NettyRpcEnv
1.11 创建Dispatcher和TransportServer
1.12 实现TransportServer并将服务启动
1.13 实现NettyRpcEndpointRef
1.14 将RpcEndpoint和RpcEndpointRef进行绑定
1.15 实现Inbox和MessageLoop
1.16 创建TransportClient
1.17 实现OutBox
1.18 发送异步消息和同步消息

2.1手写SparkContext
2.2手写RDD
2.3 手写NarrowDependency
2.4 手写MapPartitionsRDD
2.5 手写ShuffledRDD
2.6 手写PairRDDFunctions
2.7 手写HashPartitioner
2.8 手写Aggregator
2.9 手写ShuffleDependency
2.10 手写DAGScheduler
2.11 手写ShuffleMapStage
2.12 手写ResultStage
2.13 手写ShuffleMapTask
2.14 手写ResultTask
2.15 手写TaskRunner
2.16 手写TaskScheduler
2.17 手写SchedulerBackend
2.18 手写ShuffleManager
2.18 手写ShuffleReader
2.19 手写ShuffleWriter
2.20手写BlockManager
2.21 手写ShuffleBlockFetcherIterator

3.1 map、flatMap、filter精讲和源码分析
3.2 mapPartitions和mapPartitionsWithIndex精讲和源码分析
3.3 MapPartitionsRDD源码分析
3.4 reduceByKey、combineByKey精讲和源码分析
3.5 ShuffledRDD精讲和源码分析
3.5 groupBy、groupByKey精讲和源码分析
3.6 sortBy、sortByKey精讲和源码分析
3.7 cogroup精讲和源码分析
3.8 join、leftOuterJoin、rightOuterJoin、fullOuterJoin精讲和源码分析
3.9 intersection、subtract精讲和源码分析

4.1 collect精讲和源码分析
4.2 saveAsTextFile精讲和源码分析
4.3 count、min、max精讲和源码分析
4.4 sum、reduce、fold、aggregate精讲和源码分析
4.5 take、top、takeOrdered精讲和源码分析
4.5 foreach和foreachPartition精讲和源码分析

5.1 Master启动脚本分析
5.2 Master启动流程源码分析
5.3 Worker启动脚本分析
5.4 Worker启动流程源码分析
5.5 Worker向Master注册过程源码分析
5.6 Worker向Master发送心跳源码分析
5.7 Master清除超时Worker源码分析

6.1 spark-submit启动脚本分析
6.2 SparkSubmit提交类源码分析
6.3 SparkEnv源码分析
6.4 Driver向Master申请资源源码分析

7.1 DAGScheduler创建过程源码分析
7.2 DAGScheduler切分Stage源码分析
7.3 DAGScheduler提交Stage源码分析
7.4 DAGScheduler生成ShuffleMapTask和ResultTask源码分析

8.1 TaskScheduler启动过程源码分析
8.2 TaskScheduler将Task序列化源码分析
8.3 TaskScheduler提交task源码分析

9.1Executor启动流程源码分析
9.2Executor内线程池源码分析
9.3 Executor向Driver注册源码分析
9.4 Executor接收Task并反序列化源码分析
9.5 TaskRunner源码分析
9.6 ShuffleMapTask执行流程源码分析
9.7 ResultTask执行流程源码分析

10.1 ShuffleManager启动流程源码分析
10.2 注册ShuffleHandle源码分析
10.3 ShuffleWirter源码分析
10.4 ShuffleWriteProcessor源码分析
10.5 SortwShuffleManager源码分析
10.6 ExternalSorter源码分析
10.7 ShuffleExternalSorter源码分析
10.8 SortShuffleWriter源码分析
10.9 BypassMergeSortShuffleHandle源码分析
10.10 SerializedShuffleHandle源码分析

11.1 BlockManager启动流程源码分析
11.2 BlockManager通信流程源码分析
11.4 DiskBlockObjectWriter源码分析
11.5 DiskBlockManager源码分析
11.6 ShuffleBlockFetcherIterator源码分析

12.1 YarnSchedulerBackend源码分析
12.2 YarnClusterApplication源码分析
12.3 YarnClusterManager源码分析
12.4 ApplicationMaster源码分析
12.5 YarnClusterSchedulerBackend源码分析
12.6 ApplicationMaster向ResourceManager注册流程源码分析
12.7 ApplicationMaster申请到资源源码分析
12.8 ApplicationMaster向NodeManager发送启动容器源码分析
12.9 YarnCoarseGrainedSchedulerBackend源码分析
12.10 YarnCoarseGrainedExecutorBackend源码分析

13.1 SparkSQL执行流程总览分析
13.2 SparkSQL编译器Parser源码分析
13.3 SparkSQL逻辑计划源码分析
13.4 SparkSQL的Optimizer源码分析
13.5 SparkSQL的Planner源码分析
14.6 SparkSQL的CodGenerator源码分析

敬请期待

  • 课程源码
  • 课程文档
  • 上课所用的虚拟机环境
  • 交流答疑微信群

视频形式离线加密视频,也可用播放器在线播放
播放器大黄蜂播放器,有win,mac,安卓,iphone等各平台app
课程进度尚未完结,持续更新
课程价格更新完成前1399元 更新完成后 1999
购买方式1. 加客服微信,付款后开通账号
2. 下载安装大黄蜂播放器
3. 登录开通的账号己开启学习
(26)

相关推荐

  • FlinkSQL1.18源码精讲

    敬请期待 学习本课程: 课程视频(共分成7天内容),视频目录如下: 视频形式 离线加密视频,也可用播放器在线播放 播放器 大黄蜂播放器,有win,mac,安卓,iphone等各平台…

    2024年 1月 6日
  • FlinkCore1.18源码精讲

    学习本课程: 课程视频(共分成5天内容),视频目录如下: 视频形式 离线加密视频,也可用播放器在线播放 播放器 大黄蜂播放器,有win,mac,安卓,iphone等各平台app 课…

    2024年 1月 6日