Spark Streaming揭秘 Day1
三大不解之谜
引子
今天是第一节课,让我们从头开始
根据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在实际执行过程中消失了,他们到底是做什么的?