Window(时间窗口)

Window是处理流数据的核心。 Window将流分解成有限大小的“桶”,让我们用来计算。 本节重点介绍如何在Flink中执行窗口。

窗口Flink程序的一般结构如下。 第一个片段指的是有Key的流,而第二个没有Key。 可以看出,唯一的区别是keyBy(...)调用Key和窗口(...),它成为非Key流的windowAll(...)。

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, else zero
       .reduce/fold/apply() <-  required: "function"

Non-Keyed Windows

stream
       .windowAll(...)      <-  required: "assigner"
      [.trigger(...)]       <-  optional: "trigger" (else default trigger)
      [.evictor(...)]       <-  optional: "evictor" (else no evictor)
      [.allowedLateness()]  <-  optional, else zero
       .reduce/fold/apply() <-  required: "function"

results matching ""

    No results matching ""