開源串流處理框架Apache Flink發布了1.9.0版本,重要新功能包括改進批次恢復,以及加入新的狀態處理器API,而Apache Flink與阿里巴巴貢獻的Blink查詢引擎整合工作,也從這個版本開始,另外,Flink 1.9還使用最新的Angular穩定版,來重新建置WebUI。

以新版Flink來執行任務失敗後的批次工作恢復,使用者將會明顯感受到時間縮短,在之前的版本,批次處理作業的恢復功能,會取消所有任務並重新開始所有工作,而在Flink 1.9中,使用者可以配置Flink,限制恢復工作僅限在同一個故障轉移區域(Failover Region)進行。故障轉移區域是指,由工作管線的資料交換所相連接的一系列任務。

Flink 1.9還加入了一個全新的函式庫,可以使用批次處理DataSet API讀取、寫入和修改狀態快照(Snapshot),而這代表使用者現在可從外部系統,像是外部資料庫讀取Flink資料,並將其轉換成儲存點,用於引導Flink工作狀態。而儲存點中的狀態,可以使用任何Flink批次API查詢,使用者可以分析狀態模式或是狀態的不一致,以審核或是除錯應用程式。

另外,阿里巴巴將內部的Flink專案Blink貢獻給Apache Flink之後,Flink專案現在正進行整合Blink查詢最佳化程式(Optimizer)以及Runtime的工作,目前社群正將flink-table模組重構成更小的模組,而這將明確分離Java、Scala API模組,以及最佳化程式、Runtime模組,讓之間有更明確定義的介面。

Flink 1.9現在同時存在兩個可插拔的查詢處理器,以執行Table API以及SQL敘述,分別為Flink之前版本的處理器以及基於Blink的查詢處理器,雖然Blink查詢處理器提供更好的SQL支援以及功能,但是由於整合尚未完成,Flink 1.9目前的預設仍然使用舊的處理器,官方也建議在正式生產環境,先不要使用Blink的查詢處理器。

經過社群討論之後,Flink WebUI使用Angular最新的穩定版重新建置,從Angular的版本從1.x大跳躍到了7.x,Flink 1.9預設使用新的WebUI,但是用戶想使用舊版本,Flink 1.9中也有提供連結可供切換。

熱門新聞

Advertisement