spark集群管理器,目前来说,支持的有spark standalone Yarn Messos,但是目前国内常用的也只有是Spark StandAlone和Yarn
SparkContext,会跟集群管理器去申请资源,申请启动一些executor进程
集群管理器主要就负责在各个节点上,给spark作业启动一批executor进程
driver会将我们的工程jar发送到所有的executor进程中,这样呢,每个进程,就有个我们可以执行的,我们写的spark代码
其实driver,sparkcontext对象,会根据我们写的spark代码,创建一批一批的task,最小计算单元,比如说,1000个task,100个executor进程,会将task分发到executor中去执行,每个executor进程执行10个task
每个task,都会执行本地jar包中的一段相同的代码,但是,每个task处理不同的数据片,每个task处理一个hdfs block,hdfs block会对应rdd的一个partition,一个task就处理一个partition
这样就做到了大量task并行执行,每个task就处理一小片数据,速度很快