目录:
- 1、StreamingContext
- 2、ReceiveTracker 组件
- 3、DStreamGraph组件
- 4、JobGenerator 组件
- 5、JobScheduler 组件
1、StreamingContext
streamingContext 是 spark steaming 程序入口,类似 spark core 程序 创建 sparkContext。streamingContext 中主要有四个重要的组件,即:DStreamGraph、ReceiveTracker、JobGenerator、JobScheduler。详情如下:
2、ReceiveTracker 组件
streamingContext.start() 方法调用后,实际上会调用spark集群中某个worker节点上的 Executor ,去启动输入DStream 的 Receiver ,例如:JavaReceiverDStream,这个Receiver 从外部了(kafka)拉取数据,收到数据之后,就会先将数据保存到它所运行的 Executor 关联的 BlockManager 中,该数据默认采用MEMORY_ONLY_SER_2存储级别,还会发送一份数据信息到 streamingContext 中的 ReceiveTracker组件中。
3、DStreamGraph组件
DStreamGraph 将定义多个DStream 操作串联起来,即它构建了多个DStream之间的依赖关系。