spark 执行流程详解
时间: 2023-10-27 20:26:14 浏览: 122
spark安装步骤详解
Spark的执行流程可以分为以下几个步骤。
首先,任务调度器(TaskScheduler)将序列化好的任务递交给执行器(Executor)。执行器将任务放入线程池中进行运行。
其次,当程序触发Action算子时,就会产生一个作业(Job),并调用DagScheduler中的runjob方法来提交任务。
接着,Master收到应用程序的注册请求后,根据自己的资源调度算法,在Spark集群的worker上启动一个或多个Executor进程。
然后,DagScheduler根据作业的依赖关系生成有向无环图(DAG),确定任务的执行顺序。
之后,任务分发器(TaskSetManager)将任务分发给Executor,并监控任务的执行状态。
每个Executor在执行任务之前会将依赖的数据分片(RDD)从存储节点(如HDFS)中读取到内存中。
任务执行器(TaskRunner)根据任务的类型(如map、reduce等)执行计算并生成结果。
最后,计算结果会被返回给Driver程序,供后续处理或输出。
总结起来,Spark的执行流程包括任务调度、作业提交、资源分配、任务分发、数据读取、任务执行和结果返回等步骤。这些步骤保证了Spark的高效计算和数据处理能力。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [Spark执行流程详解](https://blog.csdn.net/qq_42456324/article/details/124499170)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文