Standalone运行模式又称独立运行模式,它是是Spark自身实现的资源调度框架,可以单独部署到一个集群中,无依赖任何其他资源管理系统。
不使用其他调度工具时会存在单点故障,使用Zookeeper等可以解决;
该模式由Client、Master节点和 Worker节点组成,其中SparkContext 既可以运行在Master节点上,也可以运行在本地客户端。
当用 Spark-Shell交互式工具提交作业或者直接使用run-example脚本来运行示例时,SparkContext在 Master节点上运行;当使用Spark-Submit工具提交作业或者在Eclipse、IDEA等开发平台上运行Spark作业时,SparkContext是运行在本地客户端。
Worker节点可以通过ExecutorRunner运行在当前节点上的 CoarseGrainedExecutorBackend进程,每个Worker节点上存在一个或多个CoarseGrainedExecutorBackend进程,每个进程包含一个Executor对象。该对象持有一个线程池,每个线程可以执行一个任务。
运行流程如下图
依据上面的运行流程