Flink(6)之Window
阿新 • • 發佈:2021-06-29
前言
streaming流式計算是一種被設計用於處理無限資料集的資料處理引擎,而無限資料集是指一種不斷增長的本質上無限的資料集,而window是一種切割無限資料為有限塊進行處理 的手段。
Window型別
Count Window:按照指定的資料條數生成一個Window,與時間無關。
- Time Window:按照時間生成Window
滾動視窗(Tumbling Window)
特點:時間對齊,視窗長度固定,沒有重疊。
滑動視窗(Sliding Window)
特點:時間對齊,視窗長度固定,可以有重疊。
會話視窗(Session Window)
特點:時間無對齊。
Window API
1.Time Window
說明:
TimeWindow是將指定時間範圍內的所有資料組成一個window,一次對一個window裡面的所有資料進行計算。
①.滾動視窗
.timeWindows(Time.seconds(10))//滾動視窗
②滑動視窗
.timeWinodw(Time.seconds(10),Time.seconds(2))//滑動視窗//視窗分配器
2.Count Window
.countWindow(3) //計數視窗
.countWindow(10,2) //滑動視窗
3.Window function
增量聚合函式
incremental aggregation functions
全視窗函式
full window functions
4.其他API
-
trigger()—觸發器
-
evitor()—移除器
-
.allowedLatencess()—允許處理遲到的資料
-
.sideOutputLateData() —— 將遲到的資料放入側輸出流
-
.getSideOutput() —— 獲取側輸出流