Spark Streaming揭秘 Day25 StreamingContext和JobScheduler启动源码详解
2016-08-08 21:23
323 查看
Spark Streaming揭秘 Day25
StreamingContext和JobScheduler启动源码详解
今天主要理一下StreamingContext的启动过程,其中最为重要的就是JobScheduler的启动。StreamingContext启动
我们首先看下start方法的上半部分。
首先进行模式匹配,这是一个标准的条件判断,默认是INITIALIZED状态。这里有三个关键部分:
validate方法,会进行一些前置条件的判断。其中比较关键的是对DStreamGraph进行校验,包括不能为空,outputStreams.size>0等。
启动ThreadUtils,里面都是线程本地操作,最关键的部分,就是启动JobScheduler,这个后面会展开。
启动之后,应用状态就变成active级别的了。
再看下start方法的下半部分:
shutdownHookRef注册安全退出时用到的回调,供应用中止时进行保护。
streamingSource是监控统计指标,默认提供了非常多的统计信息。
uiTab生成了界面元素,支持进行页面操作
JobScheduler启动
SparkStreaming中的事中的管理是通过消息响应来完成的,消息有两种,一种是Local自己给自己发消息,一种是RPC别人个自己发消息,对应就会有两种消息循环器。在JobScheduler中有三个消息循环器,首先是消息循环器JobScheduler,处理调度方面的消息。在ReceiverTracker和JobGenerator内部会分别启动一个消息循环器。
而针对SparkStreaming的事后管理,比较有代表性的是rateController,在这里是基于Listenerbus来实现的。
绘图
最后,让我们深入一下各个消息循环器,用绘图的方式来总结一下。欲知后事如何,且听下回分解!
DT大数据每天晚上20:00YY频道现场授课频道68917580相关文章推荐
- Spark Streaming揭秘 Day25 StreamingContext和JobScheduler启动源码详解
- Spark定制班第25课:Spark Streaming的StreamingContext启动及JobScheduler启动源码图解
- 第25课:Spark Streaming的StreamingContext启动及JobScheduler启动源码图解
- Spark Streaming揭秘 Day23 启动关闭源码图解
- Spark Streaming揭秘 Day23 启动关闭源码图解
- 第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
- 第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
- 第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
- 第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
- Spark Streaming源码分析 – JobScheduler
- 第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
- 第25课:spark streaming的streamingContext启动及Jobschedule启动源码图解
- Spark定制班第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
- spark内核揭秘-13-Worker中Executor启动过程源码分析
- 第128课: Spark Streaming源码经典解读系列之三:JobScheduler工作内幕源
- spark内核揭秘-06-TaskSceduler启动源码解析初体验
- 第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
- Spark Streaming源码解读之Receiver在Driver详解
- 第7课:Spark Streaming源码解读之JobScheduler内幕实现和深度思考
- 第16课:Spark streaming 源码解读之数据清理内幕彻底揭秘