Flink高階(二 ) Time 深度解析

2021-09-29 18:53:10 字數 764 閱讀 2993

一、flink中的時間語義

1.processing time:

2.event time(row time):

二 、watermark

1.針對上面提到的,資料存在的亂序的處理方式

2. watermark 生成

a.源需要呼叫sourcecontext中的collectwithtimestamp(...)方法。

b.為了生成watermark,源需要呼叫emitwatermark(watermark)方法

override def run(ctx: sourcecontext[mytype]): unit = } }

3. watermark 型別

1.定期生成器

2.根據一些在流處理資料流中遇到的一些特殊記錄生成器

4.watermark 傳播

1.首先,watermark 會以廣播的形式在運算元之間進行傳播

2.如果在程式裡面收到了乙個 long.max_value 這個數值的 watermark,就表示對應的那一條流的乙個部分不會再有資料發過來了,它相當於就是乙個終止的乙個標誌

3.對於單流而言,這個策略比較好理解,而對於有多個輸入的運算元,watermark 的計算就有講究了,乙個原則是:單輸入取其大,多輸入取小

三、table中指定時間

1.獲取table的兩種方式

(1)可以從乙個 datastream 轉化成乙個 table;

(2)直接通過 tablesource 去生成這麼乙個 table;

Flink學習系列之二 Flink批處理

此時我們可以使用flink的批處理,我的data目錄下有a.txt檔案,輸入任意的單詞,然後我們開始統計。如下 public class batchhandler groupby 0 sum 1 filepath 檔案輸出結果檔案 n 以換行符作為每行結束條件 以空格分割單詞 setparallel...

Flink學習(二) Flink安裝與簡單使用

最近在學習flink流處理框架,自己試著在機子上部署了個flink,這裡以簡單的local模式為例,安裝方式較為簡單,僅供學習之用,正式生產上使用的話主要有standalone集群模式,yarn模式以及k8s部署這幾種模式 這裡以最新的flink 1.11.2版本為例 官網 wgettar zxf ...

python高階之time模組詳解

time模組包含了一下內建的函式,既有時間處理的,也有轉換時間格式的 序號 函式及描述 1 time.altzone 返回格林威治西部的夏令時地區的偏移秒數。如果該地區在格林威治東部會返回負值 如西歐,包括英國 對夏令時啟用地區才能使用。2 time.asctime tupletime 接受時間元組...