摘要: 引言 在上两篇文章 spark 源码分析之十九 -- DAG的生成和Stage的划分 和 spark 源码分析之二十 -- Stage的提交 中剖析了Spark的DAG的生成,Stage的划分以及Stage转换为TaskSet后的提交。 如下图,我们在前两篇文章中剖析了DAG的构建,Stage的划分 阅读全文
posted @ 2019-07-29 19:19 JohnnyBai 阅读(3133) 评论(2) 推荐(2)
摘要: 如下,是 spark 相关系列的一些文章汇总,持续更新中...... Spark RPC spark 源码分析之五--Spark RPC剖析之创建NettyRpcEnv spark 源码分析之六--Spark RPC剖析之Dispatcher和Inbox、Outbox剖析 spark 源码分析之七- 阅读全文
posted @ 2019-07-28 16:58 JohnnyBai 阅读(6023) 评论(0) 推荐(5)
摘要: 引言 上篇 spark 源码分析之十九 -- DAG的生成和Stage的划分 中,主要介绍了下图中的前两个阶段DAG的构建和Stage的划分。 本篇文章主要剖析,Stage是如何提交的。 rdd的依赖关系构成了DAG,DAGScheduler根据shuffle依赖关系将DAG图划分为一个一个小的st 阅读全文
posted @ 2019-07-26 19:48 JohnnyBai 阅读(1524) 评论(0) 推荐(1)
摘要: 上篇文章 spark 源码分析之十八 -- Spark存储体系剖析 重点剖析了 Spark的存储体系。从本篇文章开始,剖析Spark作业的调度和计算体系。 在说DAG之前,先简单说一下RDD。 对RDD的整体概括 文档说明如下: RDD全称Resilient Distributed Dataset, 阅读全文
posted @ 2019-07-25 19:08 JohnnyBai 阅读(5505) 评论(1) 推荐(3)
摘要: 本篇文章主要剖析BlockManager相关的类以及总结Spark底层存储体系。 总述 先看 BlockManager相关类之间的关系如下: 我们从NettyRpcEnv 开始,做一下简单说明。 NettyRpcEnv是Spark 的默认的RpcEnv实现,它提供了个Spark 集群各个节点的底层通 阅读全文
posted @ 2019-07-23 19:09 JohnnyBai 阅读(2185) 评论(0) 推荐(2)
摘要: 上篇文章 spark 源码分析之十六 -- Spark内存存储剖析 主要剖析了Spark 的内存存储。本篇文章主要剖析磁盘存储。 总述 磁盘存储相对比较简单,相关的类关系图如下: 我们先从依赖类 DiskBlockManager 剖析。 DiskBlockManager 文档说明如下: 创建并维护逻 阅读全文
posted @ 2019-07-21 20:08 JohnnyBai 阅读(1348) 评论(0) 推荐(0)
摘要: 上篇spark 源码分析之十五 -- Spark内存管理剖析 讲解了Spark的内存管理机制,主要是MemoryManager的内容。跟Spark的内存管理机制最密切相关的就是内存存储,本篇文章主要介绍Spark内存存储。 总述 跟内存存储的相关类的关系如下: MemoryStore是负责内存存储的 阅读全文
posted @ 2019-07-18 21:49 JohnnyBai 阅读(1524) 评论(0) 推荐(0)
摘要: 本篇文章主要剖析Spark的内存管理体系。 在上篇文章 spark 源码分析之十四 -- broadcast 是如何实现的?中对存储相关的内容没有做过多的剖析,下面计划先剖析Spark的内存机制,进而进入内存存储,最后再剖析磁盘存储。本篇文章主要剖析内存管理机制。 整体介绍 Spark内存管理相关类 阅读全文
posted @ 2019-07-17 19:57 JohnnyBai 阅读(2098) 评论(2) 推荐(3)
摘要: 本篇文章主要剖析broadcast 的实现机制。 BroadcastManager初始化 BroadcastManager初始化方法源码如下: TorrentBroadcastFactory的继承关系如下: BroadcastFactory An interface for all the broa 阅读全文
posted @ 2019-07-16 09:05 JohnnyBai 阅读(1857) 评论(0) 推荐(1)
摘要: 对SerializerManager的说明: 它是为各种Spark组件配置序列化,压缩和加密的组件,包括自动选择用于shuffle的Serializer。spark中的数据在network IO 或 local disk IO传输过程中。都需要序列化。其默认的 Serializer 是 org.ap 阅读全文
posted @ 2019-07-15 20:03 JohnnyBai 阅读(1127) 评论(3) 推荐(3)