這是一本從使用和定制開發雙重視角,循序漸進地講解Flink的分布式繫統架構設計、流計算API設計、時間處理、狀態管理等核心技術的原理和實現的著作。
它面向Flink的初學者,內容沿著基礎知識、實際問題和解決方案這條主線展開,不僅層層剖析了Flink學習中的重點和難點,而且還通過大量案例展示了如何快速獲得工程化實踐能力。
全書共11章,主要內容如下:
(1)Flink基礎知識(第1、2章)
主要介紹了Flink的定位、核心特性、API分類,演示了如何搭建Flink作業的基礎環境、如何創建一個Flink項目以及如何開發入門應用程序WordCount,並結合該應用程序說明了常見Flink作業的骨架結構。
(2)Flink分布式架構及核心概念(第3章)
內容簡介
這是一本從使用和定制開發雙重視角,循序漸進地講解Flink的分布式繫統架構設計、流計算API設計、時間處理、狀態管理等核心技術的原理和實現的著作。
它面向Flink的初學者,內容沿著基礎知識、實際問題和解決方案這條主線展開,不僅層層剖析了Flink學習中的重點和難點,而且還通過大量案例展示了如何快速獲得工程化實踐能力。
全書共11章,主要內容如下:
(1)Flink基礎知識(第1、2章)
主要介紹了Flink的定位、核心特性、API分類,演示了如何搭建Flink作業的基礎環境、如何創建一個Flink項目以及如何開發入門應用程序WordCount,並結合該應用程序說明了常見Flink作業的骨架結構。
(2)Flink分布式架構及核心概念(第3章)
主要內容包括Flink作業的運行時架構、部署模式、資源提供框架,以及開發 Flink作業時涉及的核心概念,對於後續學習Flink DataStream API和Flink SQL API很有幫助。
(3)Flink DataStream API(第4~6章)
講解了Flink DataStream API的核心知識,包括執行環境、數據源、數據簡單轉換、數據分組與聚合、數據彙等,並講解了Flink DataStream API中的時間語義、時間窗口、有狀態計算和檢查點這四大“王*牌武器”的由來與實現原理。
(4)Flink有狀態流處理API(第7章)
Flink DataStream API不能優雅地解決窗口使用不靈活和分流成本高這兩個問題,於是Flink提供了有狀態流處理API。本章主要講解了Flink有狀態流處理API解決上述兩個問題的方法。
(5)Flink Table API與SQL API(第8~11章)
Flink Table API和Flink SQL API的底層原理相同,可以相互轉換,但Flink SQL API更為簡單和常用。這4章分別介紹了Flink Table API、Flink SQL API 的功能,以及使用SQL實現流處理的核心技術,結合大量代碼示例著重介紹了Flink SQL API的語法、函數、參數配置及性能優化方法。