Spark Streaming的三种运用场景

Spark Streaming共有三种运用场景,分为:无状态操作、状态操作、window操作。下面分别描述下本人对这三种运用场景的理解。

1、无状态操作

         只关注当前新生成的小批次数据,所有计算都只是基于这个批次的数据进行处理。

         一个批次的数据,我们将这个批次的时间假设得长一些,比如说一天。这样的话,一个批次就是在一天时间内生成的数据,可以理解为银行系统中贷款发放流水表这种流水表中的1天内所产成的流水数据,所有数据基于这一天的数据进行处理。可以统计这一天的贷款发放额、贷款发放笔数等指标。只不过这里是实时数据处理,所以批次的间隔时间非常短,可能只有几秒甚至是1秒,而不是一天,但原理是一样的。

2、状态操作

         关注多个RDD从头到尾累加起来,每个RDD中的某个值进行累加。

         除了当前新生成的小批次数据,但还需要用到以前所生成的所有的历史数据,即相当于流水表的历史数据。新生成的数据与历史数据合并成一份流水表的全量数据,“状态操作”即基于这一全量数据进行操作。可以统计出银行总的贷款发放笔数,总的贷款发放额。

3、window操作

         包含两个参数:window长度,slidinginterval,这两个参数必须为间隔的整数倍。

window长度:个人理解就是指定多少个批次的数据,即多少个RDD。数据积累多长时间后才开始进行数据处理。

sliding interval:滑动间隔,用来指定每隔多长时间对window长度的时间所生成的批次数据进行处理。

    比如说:系统每隔5秒钟生成一个小批次的数据,我们每隔15秒就对最近的20秒所生成的4个小批次的数据(20/5=4)进行处理。如下图,1个蓝色小矩形表示一个小批次数据(即一个RDD)。第一个窗口和第二个窗口都包含了第4个RDD的数据;第二个窗口和第三个窗口都包含了第7个RDD的数据。



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值