基础设施
SparkConf
RPC(Akka->Netty)
ListenerBus
Metrics
SparkContext(跟job相关)
容器(提供api,隐藏细节)
网络通信
分布式部署
消息通信
存储系统
计算引擎
度量系统
文件服务
web ui等
SparkEnv(跟task运行直接相关)
RPC环境(RpcEnv)
序列化管理器(SerializerManager)
广播管理器(BroadcastManager):负责广播变量的控制与元信息的存储
Map任务输出跟踪器(MapOutputTacker):负责Shuffle元信息的存储
数据块管理器(BlockManager):负责存储管理、创建和查找数据块
度量系统(MetricsSystem):监控运行时性能指标信息
输出提交协调器(OutputCommitCoordinator)
存储体系
内存+磁盘
计算引擎
Tungsten
内存分配器(MemoryAlloctor)
内存管理器(MemoryManager)
执行器内存管理器(ExecutorMemoryManager)
任务内存管理器(TaskMemoryManager)
任务(Task)
外部排序器(ExternalSorter)
洗牌管理器(ShuffleManager)
调度系统
DAGScheduler(rdd->stage->task,批量提交task)
TaskScheduler(fifo/fair调度task,为task分配资源)