Spark Streaming 执行流程
2014-08-30 13:32
309 查看
Spark Streaming 是基于spark的流式批处理引擎,其基本原理是把输入数据以某一时间间隔批量的处理,当批处理间隔缩短到秒级时,便可以用于处理实时数据流。
本节描述了Spark Streaming作业的执行流程。
图1 Spark Streaming作业的执行流程
具体流程:
客户端提交作业后启动Driver,Driver是park作业的Master。
每个作业包含多个Executor,每个Executor以线程的方式运行task,Spark Streaming至少包含一个receiver task。
Receiver接收数据后生成Block,并把BlockId汇报给Driver,然后备份到另外一个Executor上。
ReceiverTracker维护Reciver汇报的BlockId。
Driver定时启动JobGenerator,根据Dstream的关系生成逻辑RDD,然后创建Jobset,交给JobScheduler。
JobScheduler负责调度Jobset,交给DAGScheduler,DAGScheduler根据逻辑RDD,生成相应的Stages,每个stage包含一到多个task。
TaskScheduler负责把task调度到Executor上,并维护task的运行状态。
当tasks,stages,jobset完成后,单个batch才算完成。
本节描述了Spark Streaming作业的执行流程。
图1 Spark Streaming作业的执行流程
具体流程:
客户端提交作业后启动Driver,Driver是park作业的Master。
每个作业包含多个Executor,每个Executor以线程的方式运行task,Spark Streaming至少包含一个receiver task。
Receiver接收数据后生成Block,并把BlockId汇报给Driver,然后备份到另外一个Executor上。
ReceiverTracker维护Reciver汇报的BlockId。
Driver定时启动JobGenerator,根据Dstream的关系生成逻辑RDD,然后创建Jobset,交给JobScheduler。
JobScheduler负责调度Jobset,交给DAGScheduler,DAGScheduler根据逻辑RDD,生成相应的Stages,每个stage包含一到多个task。
TaskScheduler负责把task调度到Executor上,并维护task的运行状态。
当tasks,stages,jobset完成后,单个batch才算完成。
相关文章推荐
- Spark streaming 执行流程源码图
- Spark学习之15:Spark Streaming执行流程(1)
- Spark学习之16:Spark Streaming执行流程(2)
- spark1.2.0源码分析之spark streaming执行工作流程
- Spark sc.textFile(...).map(...).count() 执行完整流程
- SparkStreaming的运行流程
- Spark算子执行流程详解之六
- 基于Flume+Kafka+Spark-Streaming的实时流式处理完整流程
- Spark Streaming生成RDD并执行Spark Job源码内幕解密
- Spark Streaming生成RDD并执行Spark Job源码内幕解密
- Spark Streaming工作流程源码解析
- Spark架构与作业执行流程
- Spark算子执行流程详解之二
- 【转】Spark架构与作业执行流程简介
- spark集群的任务提交执行流程
- Spark架构与作业执行流程简介
- spark-streaming系列------- 4. Spark-Streaming Job的生成和执行
- spark内核执行流程简单说明
- [置顶] 基于Flume+Kafka+Spark-Streaming的实时流式处理完整流程
- [spark] Task执行流程