原创 二十五、Flink + Uber AthenaX 平臺化實踐
本篇介紹一下flink在我司的平臺化實踐,講個大概,不能講太詳細。 AthenaX介紹 uber AthenaX https://athenax.readthedocs.io/en/latest/, 這個項目就不詳細介紹了,官
原创 二十四、Flink源碼閱讀--反壓相關源碼實現
本篇我們看下flink以反壓爲問題帶入,查看數據處理相關的源碼 源碼分析 之前再Task啓動的過程中,Task的run方法中是任務執行的相關邏輯代碼,其中有一行 network.registerTask(this); 這行代
原创 七、Flink入門--狀態管理
Flink狀態管理1.狀態概述1.1什麼是狀態?1.2爲什麼要管理狀態?1.3理想的狀態管理2.狀態類型與使用示例2.1 Keyed State & Operator State2.2 Managed State & Raw St
原创 四、Flink入門-- DataStream API
DataStream API1.DataStream 概覽1.1 使用示例1.2 數據源 Data Source1.3 數據輸出 Data Sink1.4 Opeator作用概覽1.5 KeyedStream1.6 物理分組1.7
原创 十四、Flink源碼閱讀--JobGraph生成過程
上篇分析了client整個提交任務過程,最終提交的是一個JobGraph對象,那麼是如何從jar或sql 任務轉爲JobGraph的呢,這篇我們仔細研究一下, 版本爲1.6.3 源碼分析 上篇我們介紹client端提交任務最終
原创 十二、Flink實戰--DataStream、DateSet、TableAPI 、SQL各種實現
Flink API實現1. DataStream 實現2. DataSet 實現3. Table API & SQl實現 今天我們模擬實際生成,從kafka消費數據,利用flink的各種API實現,統計wordcount。 1.
原创 八、Flink入門--TableApi & Sql
TableAPi1. 概述2. Table API編程2.1 word count例子2.2 註冊表的幾種方式2.3輸出表的幾種方式2.4 查詢表2.5 Table to DataStream 或 DataSet2.6 Table
原创 十七、Flink進階-- 數據類型與序列化
flink在數據存儲和數據交換的過程中需要交換大量信息,本篇我們瞭解一些關於flink序列化相關的內容。 常見問題 註冊子類型 :如果函數僅描述了父類型,但執行是指定子類型的話會大大提升性能, 註冊自定義類型 :類似goog
原创 十、Flink進階--Runtime核心架構
1. Flink Runtime 概述 1.1 概述 Flink RunTime是介於底層部署與DataSteamApi或DataSetApi之間的一層,以JobGraph形式接收程序,將任務task提交到集羣上執行,RunTi
原创 十六、Flink進階--Flink checkpoint實現原理
前面我們已經瞭解過flink的狀態,對於這些狀態如何保存,我們一起學習一下flink的checkpoint機制,並瞭解一下rocksdb中的增量checkpoint是怎麼實現的。 Checkpoint實現原理 Flink提供的
原创 十三、Flink源碼閱讀--Client提交任務過程
我們以flink中自帶的wordcount例子作爲提交任務,查看在客戶端Flink提交任務的詳細源碼步驟。 入口分析 首先我們看一下提交命令如下: bin/flink run examples/batch/WordCount
原创 二十、Flink源碼閱讀--JobManager對提交過來的JobGraph處理過程
在client提交任務的源碼分析那篇中我們知道了客戶端提交給JobManager的是一個JobGraph對象,那麼當JobManager的Dispatcher組件接收到JobGraph後做了哪些處理呢,這篇我們從源碼分析一些這個