Spark Streaming揭秘 Day22
架构源码图解
今天主要是通过图解的方式,对SparkStreaming的架构进行一下回顾。
下面这个是其官方标准的流程描述。
SparkStreaming会源源不断的接收数据源,然后根据时间切割成不同的Batch,每个Batch都会产生RDD,RDD运行在Spark的引擎之上,处理会产生运行的结果。
我们对其进行细化,可以分解为8个步骤:
![Spark Streaming架构源码图解](http://o6jujlzry.bkt.clouddn.com/2016-06-08-Spark Streaming架构源码图解.png)
Step1:获取外部数据源,最经典的来源于Kafka,其它例如Flume、数据库、HBase等
Step2、3、4:数据到达集群中,会通过RPC向Driver中的ReceiverTracker汇报
Step5、6、7:Driver中核心是DStream,通过基于时间的计算,产生了RDD
Step8: 下面就是通过基于RDD的调度,直接跑到集群上进行运行
如果对比成人体的不同部分,我们可以更加直观的理解一下:
Step1:获取大自然不同的食物
Step2:食物进入人体的胃中...待消化...
Step3: 发出神经刺激信号...
Step4: 大脑接收到神经系统刺激的信号...开始协调身体消化食物...
Step5: 身体设定好营养提取方式:蛋白质、氨基酸...
Step6: 小肠等蠕动不断加工营养...
Step7: 变成真正的营养...
Step8: 营养支持身体各部分的正常运行,产生各种功能...相当于实际加工不同的业务逻辑和数据产品...
欲知后事如何,且听下回分解
DT大数据每天晚上20:00YY频道现场授课频道68917580