第一节:通过另类试验透视Spark Streaming本质

一 对Spark Streaming的理解

  1. Spark Streaming是流式计算,当今时代是一个流处理时代,一切数据如果不是流式处理, 或者说和流式处理不相关的话,都是无效的数据。

  2. 流式处理才是我们对大数据的初步印象,而不是批处理和数据挖掘,当然Spark强悍的地方在于,他的流式处理可以在线的直接使用机器学习、图计算、SparkSQL、Spark R的成果。

  3. Spark Streaming和其他子框架的不同之处,Spark Streaming很像基于Spark Core之上的应用程序。


二. 如何入手?

通过对Spark Streaming数据的流入,流出和处理的观察来看透内幕!

通过把Batch Interval 放的足够大,比如1分钟1次,或者5分钟1次观察spark UI来观察其运行过程

四. 实验



1 启动nc -lk 9999,将应用发布到Spark集群上运行,并在nc中发送如下数据

2016-05-01 mahout
2016-05-01 scala
2016-05-01 hadoo
2016-05-01 spark


2  在应用收到数据后会有如下输出

2016-05-01 scala
2016-05-01 spark


从Spark 的history server中我们观察到运行了如下jobs

193219_aoK5_2751816.png

4 得出结论:图中我们可知, 有5个完成的job,但是我们从代码以RDD的视角来看只有一个job(print),由此可知,Spark Streaming应用在启动过程中,会自己启动一些job。

    再看看Job 1 receiver的时间是1.5min, 从各个job所花的时间来看,整个应用运行的时间大部分时间是花在了receiver上。

从上面获得的启发:一个Spark应用中能启动多个job,不同的job之间可以相互配合,这是写Spark复杂程序的黄金模板。但是各个job之间的怎么配合还需要进一步深入。

193409_0Vxh_2751816.jpg

转载于:https://my.oschina.net/jfld/blog/669250

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值