Flink是最接近於谷歌Dataflow大數據分析平臺的設計的開源分佈式計算引擎,其核心設計理念與Spark有很大的不一樣。網絡
從設計出發點,Flink是一個流計算處理計算引擎,把批處理視爲無限流計算的一種特例,Spark是批處理計算引擎,把流處理視爲迷你批處理,由於設計上的差別,致使在對處理時延要求高的場景中,Flink更加合適。架構
從生態上來講,兩者都有SQL、機器學習、圖計算等基本的組件,可是Spark在豐富程度、成熟度方面比Flink有優點。機器學習
關於Flink的資料已經至關多了,筆者就不作多此一舉寫了,要掌握Flink的精妙,必需要了解其底層的基本原理,如下是必讀的資料:異步
理解Flink的設計原則
Google Stream 101越了批處理的流處理世界分佈式
Google Stream 102超越了批處理的流處理世界學習
Flink原理和實現
Flink的架構和拓撲概覽大數據
理解 Flink 中的計算資源優化
Flink如何生成ExecutionGraph及物理執行圖設計
Flink 生成StreamGraph事件
Flink Window的實現原理
Flink中的狀態管理
Flink中的反壓Back-Pressure
Flink Operator Chain原理
Flink內存管理
Flink異步快照機制-Failover
數據流的類型和操做
Flink Async IO(異步IO)
Flink SQL
Flink SQL的大部分代碼實現是阿里巴巴的Blink團隊貢獻給Apache的。
Flink SQL 核心功能解密
Flink SQL維表Join和異步優化
Flink SQL 異步IO設計
Flink SQL數據去重的技巧和思考
Flink SQL TOP N的挑戰與實現
Flink SQL 流計算「撤回(Retraction)」案例分析
Flink SQL 解決熱點問題的大殺器MiniBatch
Flink Table API&SQL的概念和通用API
Flink CEP復瑣事件處理
Flink-CEP論文與源碼解讀之狀態與狀態轉換
Flink之CEP-API簡介
Flink之CEP案例分析-網絡攻擊檢測
Flink-CEP之NFA
Flink-CEP之NFA編譯器
Flink-CEP之模式流與運算符
Flink事務
Flink Streaming Ledger 支持流式處理ACID事務!
Flink源碼解析
Apache Flink源碼解析 DataStream API
Flink Exactly Once語義
flink的兩階段提交協議-實現端到端的Exactly Once語義
Flink案例
Flink在惟品會的實踐
Flink在美團的實踐應用
Flink在G7的實踐
Flink在餓了麼的應用
基於Flink的實時特徵平臺在Flink的應用
未完待續!