Spark Streaming揭秘 Day1
三大谜团
引子
在Spark的众多组件中,Streaming最接近企业级应用程序,学习Spark Streaming,是掌握大数据技术的一条捷径。今天是第一节课,让我们从头开始。本系列内容都是基于Spark1.6.1版本。
根据Quick Example (Batch Interval需设置为30秒)运行一个Spark Streaming程序,然后进行观察。
谜团一:5个Job?
从Demo代码来看,仅调用了print方法,一次action触发应该调用一次Job。
但实际上共运行5个job!!!
除了我们实际运行action的Job以外,其他Job的作用是什么呢?
谜团二:分布化很简单?
深入来看,我们发现Job1是Receiver,主要定位是接收外部数据,但需要注意的是,这个Job仅运行在一台Worker上。
但从Job2来看,实际执行是分布式的,而且都是本地内存运行(Process_local)!!!
通过两个作业的配合,实现了一个完整的分布式处理过程,简单到难以置信,那么单点运行的接收器如何驱动分布式的本地内存运行?
谜团三:消失的Job?
从控制台输出,可以看到Job4实际执行了任务,
但是从执行内容看,Job2、Job3、Job4都执行了Print方法。
Job2、Job3在实际执行过程中消失了,他们到底是做什么的?
欲知后事如何,且听下回分解
DT大数据每天晚上20:00YY频道现场授课频道68917580