8.2.2 Spark Streaming架构
Spark Streaming的整体架构如图8-11所示。
组件介绍如下。
·Network Input Tracker:通过接收器接收流数据,并将流数据映射为输入DStream。
图8-11 Spark Streaming架构图
·Job Scheduler:周期性地查询DStream图,通过输入的流数据生成Spark Job,将Spark Job提交给Job Manager执行。
·JobManager:维护一个Job队列,将队列中的Job提交到Spark执行。
通过图8-11可以看到Job Scheduler负责作业调度,Taskscheduler负责分发具体的任务,Block tracker进行块管理。在从节点,如果是通过网络输入的流数据,则将数据存储两份进行容错。Input receiver源源不断地接收输入流,Task execution负责执行主节点分发的任务,Block manager负责块管理。Spark Streaming的整体架构和Spark很相近,很多思想是可以迁移理解的。