Apache Flink是由Apache軟件基金開發的開源流處理框架,其核心是用Java和Scala編寫的分佈式流數據流引擎。Flink以數據並行和流水線方式執行任意流數據程序,Flink的流水線運行時系統可以執行批處理和流處理程序。此外,Flink的運行時本身也支持迭代算法的執行
在大數據的學習過程中,FIink框架也是必學的知識點。今天分享的課程,可以讓你瞭解Flink,瞭解集羣環境搭建運維,學習Flink中重要概念,通過知識點 + 案例教學法幫助小白快速掌握Flink。
課程內容:
1、Flink框架簡介
2、Flink集羣搭建運維
3、Flink Dataset開發
4、Flink 廣播變量,分佈式緩存,累加器
5、Flink Datastream開發
6、Flink Window操作
7、Flink watermark與側道輸出
8、Flink狀態計算
9、Flink容錯checkpoint與一致性語義
10、Flink進階 異步IO,背壓,內存管理
11、Flink Table API與SQL
課程目錄介紹
第一章 Flink簡介
01.Flink的引入
02.什麼是Flink
03.Flink流處理特性
04.Flink基石
05.批處理與流處理
第二章 Flink架構體系
01.Flink中重要角色
02.無界數據流與有界數據流
03.Flink數據流編程模型
04.Libraries支持
第三章 Flink集羣搭建
01.環境準備工作
02.local模式
03.Standalone集羣模式
04.Standalone-HA集羣模式
05.Flink On Yarn模式-介紹
06.Flink On Yarn模式-準備工作
07.Flink On Yarn模式-提交方式-Session會話模式
08.Flink On Yarn模式-提交方式-Job分離模式
09. Flink運行架構-Flink程序結構
10. Flink運行架構-Flink並行數據流
11. Flink運行架構-Task和Operator chain
12. Flink運行架構-任務調度與執行
13. Flink運行架構-任務槽與槽共享
第四章 Dataset開發
01.入門案例
02.入門案例-構建工程、log4j.properties
03.入門案例-代碼運行yarn模式運行
04.DataSource-基於集合
05.DataSource-基於文件
06.Transformation開發
07.Datasink-基於集合
08.Datasink-基於文件
09.執行模式-本地執行
10.執行模式-集羣執行
11.廣播變量
12.累加器
13.分佈式緩存
14.擴展並行度的設置
第五章 DataStream開發
01.入門案例-流處理流程
02.入門案例-示例、參考代碼
03.流處理常見Datasource
04.Datasource基於集合
05.Datasource基於文件
06.Datasource基於網絡套接字
07.Datasource-自定義source-SourceFunction
08.Datasource-自定義source-ParallelSourceFunction
09.Datasource-自定義source-RichParallelSourceFunction
10.Datasource-自定義source-MysqlSource
11.Datasource-自定義source-KafkaSource
12.DataStream-transformations
13.DataSink-輸出數據到本地文件
14.DataSink-輸出數據到本地集合
15.DataSink-輸出數據到HDFS
16.DataSink-輸出數據到mysql,kafka,Redis
第六章 Flink中Window
01.爲什麼需要window
02.什麼是window
03.Flink支持的窗口劃分方式
04.Time-window之tumbling-time-window
05.Time-window之sliding-time-window
06.Time-window之session-window
07.Count-window之tumbling-count-window
08.Count-window之sliding-count-window
09.window-Apply函數
第七章 Eventime-watermark
01.時間分類
02.watermark之數據延遲產生
03.watermark之解決數據延遲到達
04.watermark綜合案例
05.watermark之數據丟失
06.watermark+側道輸出保證數據不丟失
第八章 Flink狀態管理
01.狀態管理概述之無狀態計算
02.狀態管理概述之有狀態計算
03.狀態管理概述之有狀態計算場景
04.狀態的類型之Managed State&Raw State
05.狀態的類型之Keyed State&Operator State
06.API演示之ValueState
07.API演示之MapState
08.案例之OperatorState
09.案例之BroadcastState
第九章 Flink容錯&重啓策略
01.checkpoint是什麼
02.checkpoint執行流程
03.checkpoint持久化存儲
04.案例之checkpoint設置演示
05.Flink重啓策略之重啓策略配置
06.案例之重啓策略演示
07.Savepoint與checkpoint區別
08.案例之savepoint演示
09.端到端一致性語義解釋
10.案例之kafka實現EndToEnd一致性語義
11.案例之Mysql實現EndToEnd一致性語義
第十章 Flink擴展_異步IO_反壓_內存管理
01.異步IO之使用前提
02.異步IO之核心API Async IO
03.案例之異步IO案例
04.什麼是反壓問題
05.Flink如何解決反壓問題
06.Flink內存管理
07.定製化內存管理
08.定製化序列化框架
09.使用堆外內存
第十一章 Flink-sql開發
01.Flink sql背景
02.sql常用算子之select
03.sql常用算子之where
04.sql常用算子之distinct
05.sql常用算子之group by
06.sql常用算子之union_union all
07.sql常用算子之join
08.sql常用算子之group window
09.案例之批處理sql案例
10.案例之流處理sql案例