Flink 实现动态时间窗口

目前常用的有基于处理时间以及基于时间时间的滑动窗口以及滚动窗口,不过这些窗口时间是固定的不可改变,当有需求要求调整时间窗口大小的时候就得重新启动,然后发布程序,这种方式在变更频率小的时候无所谓,当变更频率大的时候就很耗时间,那么接下来介绍一种可以动态更改窗口时间的方法:

Flink 窗口实现语法为:

Keyed Windows

stream
       .keyBy(...)               <-  keyed versus non-keyed windows
       .window(...)              <-  required: "assigner"
      [.trigger(...)]            <-  optional: "trigger" (else default trigger)
      [.evictor(...)]            <-  optional: "evictor" (else no evictor)
      [.allowedLateness(...)]    <-  optional: "lateness" (else zero)
      [.sideOutputLateData(...)] <-  optional: "output tag" (else no side output for late data)
       .reduce/aggregate/apply()      <-  required: "function"
      [.getSideOutput(...)]      <-  optional: "output tag"

Non-Keyed Windows

s

你可能感兴趣的:(Flink,那些事,flink,linq,大数据)