spark基础、源码分析、杂谈
Next主题优化
发表于
阅读次数:
spark源码-dependency
每个RDD都有 dependencies,分窄依赖和宽依赖(ShuffleDependency)。遇到 ShuffleDependency 划分stage。
spark源码-Broadcast
spark源码-BlockManager
每台节点(driver and executors)的block的总管理者,主要功能就是在本地或者远程的store中(堆内内存、磁盘、堆外内存) put、get、 block。
作为总管理者,BlockManager 依赖众多对象。
spark源码-cache和persist
介绍spark的缓存功能
spark源码-block
首先明确spark有个自己文件系统,block就是里面的一个文件。如:缓存后的RDD的一个分区是一个block;计算产生的临时文件也是block。任何你要存的东西都是block。
因此既然它是文件,它就有文件名、元信息、锁、数据,理解它们,你就理解了block!
spark源码-DiskBlockManager和DiskStore
本文将磁盘文件的存储和管理,注意设计两个类 DiskBlockManager 和 DiskStore
spark源码-MemoryManager和MemoryStore
它俩的对象和方法较多,需要耐心反复看。
我的2019
2019小结,多图慎点