Flink基礎 Table API教程

2022-04-29 12:33:11 字數 1806 閱讀 6433

1.table api特點:

使得多宣告的資料處理起來更為容易,擴充套件標準sql更為容易

如何得到乙個表:

1.自己寫table的描述資訊

2.通過自定義tablesouce註冊到env中

3.datastream也可以通過註冊得到乙個表

如何輸出乙個table:

和輸入的三種方式是一致的

如何查詢乙個表:

對列上的一些操作:

addcolumns新增,addorreplacecolumns新增並且覆蓋,renamecolumns重新命名,dropcolumns刪除

withcolumns選擇指定的列,withoutcolumns反選指定的列

cloumns使用的語法:

可以是欄位名,下標,預設下標是從1開始計算的

row-based operation:

map-operation的好處:

比如需要對這個表中的每一列都做一些udf的操作,比如if,cocat這種,

你就需要對每列都寫乙個udf,但是如果在table上使用map運算元就會非常方便

輸入一行-輸出多行

輸入多行-輸出一行

輸入多行-輸出多行:topn

時間語義需要配合視窗操作才能發揮作用

根據時間或行資料,把資料聚合到組中。

滾動視窗:tumbling windows

可以通過時間開窗,也可以通過行數開窗,之所以行數也要時間字段是因為需要對資料進行排序來取。

滑動視窗:sliding windows

會話視窗:session window

針對每個輸入行,計算附近行範圍的聚合。

無界視窗:over windows

有界over windows:

目前flink只支援preceding 到current row,因為如果要支援following需要等待。

總結:

Flink 基礎入門

作為致力於提供 stateful computations over data streams 的 下一代大資料處理引擎 flink 在流式計算領域帶來了諸多全新特性。本場 chat,我們將從 0 開始,幫助讀者入門 flink,主要內容包括 流式計算的目標與傳統架構 flink 基礎結構 flin...

Flink基礎理論

一 分布式大資料處理引擎apache flink 1 可以對有限資料流和無限資料流進行有狀態計算 詳細解釋見下圖 apache flink是一種統一的大資料分析和流計算 批計算及機器學習引擎。2 無界流和有界流 任何型別的資料都是作為事件流產生的,資料可以作為無界或有界流處理。1 無界流有乙個開始但...

flink學習 flink架構

flink結構 graph 2個併發度 source為1個併發度 的sockettextstreamwordcount四層執行圖的演變過程 jobgraph streamgraph經過優化後生成了 jobgraph,提交給 jobmanager 的資料結構。executiongraph jobman...