Spark 学习笔记大纲
Spark 内核
- 第28课:Spark天堂之门解密 (点击进入博客)
从 SparkContext 创建3大核心对象开始到注册给 Master 这个过程中的源码鉴赏 - 第29课:Master HA彻底解密 (点击进入博客)
从 Master 如何基于 ZooKeeper 来做 HA 的源码鉴赏 - 第30课:Master的注册机制和状态管理解密 (点击进入博客)
从 Master 的角度去分析它是如何接收 Worker, Driver, Application 的注册,以及它是如何管理 Driver 和 Executor 状态变化的源码鉴赏 - 第31课:Spark资源调度分配内幕天机彻底解密:Driver在Cluster模式下的启动、两种不同的资源调度方式源码彻底解析、资源调度内幕总结 (点击进入博客)
从 Spark 资源调度的角度去分析Worker与应用程序是如何获得计算资源的源码鉴赏 - 第32课:Spark Worker 原理和源码剖析解密:Worker工作流程图、Worker启动Driver源码解密、Worker启动Executor源码解密等 (点击进入博客)
从 Worker 的角度去分析它是如何启动 Driver、Executor 和与 Master 交互的源码鉴赏 - 第33课:Spark Executor内幕彻底解密:Executor工作原理图、ExecutorBackend注册源码解密、Executor实例化内幕、Executor具体工作内幕 (点击进入博客)
从 Executor 的角度去分析它是如何注册和 CoarseGrainedExecutorBackend 与 CoarseGrainedSchedulerBackend 两者之间是如何交互的源码鉴赏 - 第34课:Stage划分和Task最佳位置算法源码彻底解密 (点击进入博客)
从 Task 的角度去分析一个任务是如何被划分成不同的 Stage 以及Spark是如何计算出最佳的数据本地性 - 第35课:打通Spark系统运行内幕机制循环流程 (点击进入博客)
再一次介绍和运行从提交作业到程序封装成 Task 运行的机制 - 第36课:TaskScheduler内幕天机解密:Spark shell案例运行日志详解、TaskScheduler和SchedulerBackend、FIFO与FAIR、Task运行时本地性算法详解等 (点击进入博客)
- 第37课:Task执行内幕与结果处理解密 (点击进入博客)
- 第38课:BlockManager架构原理、运行流程图和源码解密 (点击进入博客)
- 第40课:CacheManager彻底解密:CacheManager运行原理流程图和源码详解 (点击进入博客)
- 第41课:Checkpoint彻底解密:Checkpoint的运行原理和源码实现彻底详解 (点击进入博客)
Spark SQL
- SparkSession、DataFrame 和 DataSet 练习 (点击进入博客)
Spark 案例与性能调优目录
- 第一章:性能调优的本质、Spark资源使用原理和调优要点分析 (点击进入博客)
初探大数据性能调优的本质和Spark性能调优要点分析、Spark性能调优之系统资源使用原理和调优最佳实践以及Spark性能调优之使用更高性能算子及其源码剖析 - 第二章:彻底解密 Spark 的 HashShuffle (点击进入博客)
谈谈 Spark旧版本中性能调优之HashShuffle剖析及调优、彻底解密 Shuffle 是如何成为Spark性能杀手的及调优点思考以及 Spark Hash Shuffle 源码解读与剖析 - 第三章 : Spark 2.1.x 中 Sort-Based Shuffle 产生的内幕 (点击进入博客)
从根本上理解 Spark 中 Sort-Based Shuffle 产生的内幕及其 tungsten-sort 背景解密、解密Spark Shuffle令人费解的6大经典问题 - 第四章 : Spark Shuffle 中 JVM 内存使用及配置内幕详情 (点击进入博客)
源码补充 : Spark 2.1.X 中 Unified 和 Static MemoryManager (点击进入博客)
谈谈 JVM 内存使用架构剖析、Spark 1.6.x 以前和 Spark 2.1.x 版本中 JVM 到底可以缓存多少数据、Spark Unified Memory 原理