火花操作机构
构建DAG(驱动程序结束已完成)
操作员操作RDD用于执行各种转换操作,最后触发火花作业运行操作。提交后,Spark会根据转换过程中生成的rdd之间的依赖关系,构建一个有向无环图。
达格切割(在驱动端完成)
DAG切割主要解决根据RDD是否依赖宽度切割节点的问题,遇到宽依赖时将任务划分到新的调度阶段。每个阶段包含一个或多个任务。这些任务将形成一个任务集,该任务集将提交给底层调度程序进行调度和运行。
任务调度(驱动端完成)
每个火花任务计划程序只为一个火花上下文实例服务。任务调度器收到任务集后,负责将任务集分发到Worker节点的Executor进程,以任务任务的形式执行。如果任务失败,任务计划程序负责重新分配任务的计算。
执行任务(由工作人员的执行者执行)。
执行器收到发送的任务后,会以多线程方式执行任务计算(执行器重启时会初始化一个线程池),每个线程负责一个任务。任务完成后,它会根据任务的类型选择相应的返回模式,并将结果返回给任务调度器。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/61495.html