滑动时间指每隔多长时间进行一次计算,脑海里可以想象一个时间块在移动,每到滑动时间到了我们设置的值,就会提交一次计算
开窗时间是指一次计算覆盖当前提交计算开始之前多长时间的数据
滚动窗口指的是开窗时间与滑动时间相等,此时数据以普通的顺序时间线去处理数据,不会发生时间线的重叠,数据理论上不会丢失
滑动窗口不常用,且一般指的是滑动时间小于开窗时间,在时间线上,存在时间的重叠,每次计算数据会重复
某些特殊的情况下会出现滑动时间大于开窗时间的滑动窗口,不过很少见,一般只是做数据抽样的时候做,因为有一部分数据不会被计算
在当前数据处理框架中
如果你用的是spark流,只传第二位时间参数时是滚动窗口,第二、三位一起传时,在理论上是滑动窗口,第二位是开窗时间,第三位是滑动时间
而你如果用的是flink,那么对于窗口你可以不设置,这时flink将为你从头算到尾,没有时间块的概念,你如果想用flink的开窗功能那么调用timeWindow开启时间窗口,时间参数的意义和spark一样,你也可以用countWindow开启数据量窗口