本文介绍了KafkaStreaming中的三种窗口类型:Hopping Time Window,Tumbling Time Window和Session Windows。Hopping Time Window有数据重合,每5秒输出过去1小时的网站流量。Tumbling Time Window无数据重合,窗口之间不相交。Session Windows基于业务事件定义,如用户登录和退出来计算会话时长和活动指标。
Hopping Time Window (滑动窗口,有重合部分数据) 该窗口定义如下图所示。它有两个属性,一个是Window size,一个是Advance interval。Window size指定了窗口的大小,也即每次计算的数据集的大小。而Advance interval定义输出的时间间隔。一个典型的应用场景是,每隔5秒钟输出一次过去1个小时内网站的PV或者UV。