Spark修炼之道(进阶篇)——Spark入门到精通:第十二节 Spark Streaming—— DStream Window操作

  • 时间:
  • 浏览:0

察看运行结果:

观察执行结果如下:

3 WindowWordCount——reduceByWindow措施使用

再运行WindowWordCount

输入下列说说

启动

DStream支持的全版Window操作措施如下:

具体来讲,下面五个措施得到的结果是一样的,本来 下行速率 不同,中间的措施措施下行速率 更高:

中间的例子确实是countByWindow的实现,都上上能 在countByWindow源码实现中得到验证

通过下列代码启动netcat server

而reduceByWindow又是通过reduceByKeyAndWindow措施来实现的,具体代码如下

计算结果如下:

计算结果如下:

2 WindowWordCount——countByWindow措施使用

再输入一次

作者:周志湖

微信号:zhouzhihubeyond

再输入一次

观察执行情况报告:

Spark Streaming提供窗口操作(Window Operation),如下图所示:



上图中,红色实线表示窗口当前的滑动位置,虚线表示前一次窗口位置,窗口每滑动一次,落在该窗口中的RDD被共同共同补救,生成五个窗口DStream(windowed DStream),窗口操作前要设置五个参数:

(1)窗口长度(window length),即窗口的持续时间,上图中的窗口长度为3

(2)滑动间隔(sliding interval),窗口操作执行的时间间隔,上图中的滑动间隔为2

这五个参数前本来 原始DStream 批补救间隔(batch interval)的整数倍(上图中的原始DStream的batch interval为1)

与前面的例子中的reduceByKeyAndWindow措施不同的是这里的reduceByKeyAndWindow措施多了五个invReduceFunc参数,措施全版源码如下:

已经 运行WindowWordCount

输入

同样的说说输入两次