一文理清ApacheSpark内存管理脉络
Spark作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解conSpark内存管理的基本原理,有助于更好地开发Spark应用程序和进行性能调优。在执行Spark的应用程序时,Spark集群会启动Driver和Executor两种JVM进程,前者为主控进程,负责创建Spark上下文,提交Spark作业(Job),并将作业转化为计算任务(Task),在各个Executor进程间协调任务的调度,后者负责在工作节点上执行具体的计算任务,并将结果返回给Driver,同时为需要持久化的RDD提供存储功能[1]。由于Driver的内存管理相对来说较为简单,本文主要对Ex