Flink WaterMark 的了解 更新

2021-10-05 11:18:54 字數 593 閱讀 5533

我來講下 我理解的watermark (一起**)

/***

* 如果要去了解乙個東西 : 我認為需要從以下幾個點去分析

* 1. 是什麼(概念一點)

* 2. 解決了什麼問題以及是如何解決的

* 3. 如果去使用 如何下手

* 4. 他會牽扯的一些問題

* * 好了 讓我們去**這個東西

* 1. 首先 watermark 是乙個全域性標籤,本身是乙個時間戳

* 2. 其次 我認為它解決的問題 就是 視窗的觸發時機以及對於亂序資料的資料保障(或者說資料亂序情況下依然分配進屬於它的視窗中)

*

* * 摘抄 有乙個例子: 就是你在走,後面有乙個小朋友也在走。他和你保持乙個距離,小朋友只前進不後退。你有可能後退。

* 但是如果你比小朋友還慢,就表示你遲到太久了,應該被單獨處理(丟棄/sideoutput)。

* * 3. 關於具體使用的話 只需要去實現 兩種watermark的生成介面 按照自己業務去生成 其他資訊看具體實現

* *

* * 4. 牽扯到的問題

*/

flink watermark原理總結

通過視窗對input按照eventtime進行聚合,使得大體按照event time 發生的順序去處理資料,同時利用watermark來觸發視窗。watermark window機制 watermark是flink為了處理eventtime時間型別 其他時間型別不考慮亂序問題 的視窗計算提出的一種機...

Flink WaterMark機制白話分析

最近遇見乙個流處理的資料嚴重遲到亂序的場景,基於saprk streaming開發的統計使用者頁面停留時間。使用的思想是 遲到資料的時間補償機制。由於spark不支援亂序的支援,所以自行實現了乙個容器儲存一定量的歷史資料,最後對遲到的資料插到歷史容器中,對插入資料的位置進行區域性計算求補償時間最後新...

Flink WaterMark原理與實現

在使用 eventtime 處理 stream 資料的時候會遇到資料亂序的問題,流處理從 event 事 件 產生,流經 source,再到 operator,這中間需要一定的時間。雖然大部分情況下,傳輸到 operator 的資料都是按照事件產生的時間順序來的,但是也不排除由於網路延遲等原因而導致...