課程簡介
本課程的大綱設(shè)置,注重的是Flink基礎(chǔ)和核心技術(shù)的梳理和掌握,之后會對其中幾個重要的技術(shù)點做深入分析。針對企業(yè)內(nèi)訓(xùn)的需求,我們對大綱的設(shè)置,特別增加了學(xué)以致用的實戰(zhàn)環(huán)節(jié),讓企業(yè)學(xué)員能夠在學(xué)習(xí)完Flink技術(shù)知識后,具備將Flink應(yīng)用到實際生產(chǎn)環(huán)境中的能力,通過短時間的技術(shù)學(xué)習(xí),為公司創(chuàng)造價值和提高技術(shù)生產(chǎn)的效率。
此課程共兩天,第一天為Flink的基礎(chǔ)和進(jìn)階技術(shù)知識點,以及第一個實戰(zhàn)項目。第二天為Flink的高級技術(shù)知識點,包含了第二個實戰(zhàn)項目。
目標(biāo)收益
培訓(xùn)對象
課程大綱
流式處理架構(gòu) |
1.1 流式處理背景及架構(gòu)介紹 1.2 流式處理行業(yè)案例以及Flink的適用場景及應(yīng)用概述 |
Flink概述 |
2.1 什么是Flink 2.2 Flink架構(gòu) 2.3 Flink 與 Spark的比較以及為什么選擇Flink 2.4 Flink開發(fā)環(huán)境配置和搭建 |
Flink編程模型 |
3.1 數(shù)據(jù)集類型 3.2 Flink編程接口 3.3 Flink程序結(jié)構(gòu) 3.4 Flink數(shù)據(jù)類型 |
DataStream API介紹與使用 |
4.1 DataStream編程模型 4.2 Flink Execution 參數(shù) 4.3 Transformation 4.4 時間概念與Watermark 4.5 Windows窗口計算 4.6 作業(yè)鏈和資源組 4.7 Asynchronous I/O異步API 4.8 Asynchronous I/O異步原理 |
Flink Connector數(shù)據(jù)源 |
5.1 FlinkKafkaSource序列化、消費模式 5.2 FlinkKafkaSource容錯、動態(tài)分區(qū)及topic 5.3 FlinkKafkaSink序列化、配置、分區(qū)與容錯 5.4自定義Source和Sink |
DataSet API介紹與使用 |
6.1 DataSet API,Transformation 6.2 迭代計算 6.3 廣播變量與分布式緩存 6.4 語義注解 6.5 DataSetUtils工具類 |
Table API & SQL介紹與使用 |
7.1 TableEnviroment概念 7.2 Flink Table API 7.3 Flink SQL使用 7.4 自定義函數(shù) 7.5 自定義數(shù)據(jù)源 |
兩個完整的Flink實現(xiàn)案例 |
8.1 Kafka 數(shù)據(jù)流處理,寫入HDFS 8.2多源數(shù)據(jù)關(guān)聯(lián)與聚合分析 |
Flink有狀態(tài)的計算、狀態(tài)管理和容錯 |
9.1 什么是有狀態(tài)計算 9.2 有狀態(tài)計算中的數(shù)據(jù)一致性挑戰(zhàn) 9.3 理解state狀態(tài) 9.4 Operator State 的使用及Redistribute 9.5 Keyed State的使用與Redistribute 9.6 Broadcast State的妙用 9.7 Checkpoint核心原理剖析 9.8 Checkpoint使用條件及使用步驟 9.9 Checkpoint相關(guān)配置及重啟策略 9.10 Savepoint的觸發(fā)、Job恢復(fù)及刪除 |
實戰(zhàn)項目1:用Flink實現(xiàn)一個通用、配置化的海量數(shù)據(jù)流、批處理產(chǎn)品 |
10.1實現(xiàn)配置管理 10.2實現(xiàn)數(shù)據(jù)源加載 10.3實現(xiàn)主流程控制 10.4實現(xiàn)任務(wù)管理 |
Flink部署與應(yīng)用 |
11.1 Flink集群部署 11.2 Flink高可用配置 11.3 Flink安全管理 11.4 Flink集群升級 11.5 Flink on Yarn的原理和運行方式 11.6 Flink on Yarn 提交任務(wù)與停止任務(wù) |
Flink監(jiān)控與性能優(yōu)化 |
12.1 監(jiān)控指標(biāo) 12.2 Backpressure監(jiān)控與優(yōu)化 12.3 Checkpointing監(jiān)控與優(yōu)化 12.4 Flink內(nèi)存優(yōu)化 |
Flink組件棧介紹與使用 |
13.1 Flink復(fù)雜事件處理 13.2 Flink Gelly圖計算應(yīng)用 13.3 FlinkML機器學(xué)習(xí)應(yīng)用 13.4 Flink Metrics 與監(jiān)控 |
Flink源碼學(xué)習(xí) |
14.1 Flink源碼編譯 14.2 如何閱讀和學(xué)習(xí)Flink源碼 14.3 Flink源碼實現(xiàn)思路以及依賴管理 14.4 Flink核心模塊源碼帶讀與分析 |
Flink在各大互聯(lián)網(wǎng)公司的典型應(yīng)用剖析 |
14.1Flink在阿里的應(yīng)用 14.2Flink在字節(jié)跳動的應(yīng)用 14.3Flink在騰訊的應(yīng)用 14.4Flink在微博的應(yīng)用 14.5Flink在其他互聯(lián)網(wǎng)公司的應(yīng)用 14.6Flink 最佳實踐 |
實戰(zhàn)項目2:使用Flink實現(xiàn)電商用戶支付行為分析和審計風(fēng)控 |
15.1電商支付數(shù)據(jù)模型(訂單,流水,賬戶余額,發(fā)現(xiàn)表) 15.2用戶行為分析需求與維度指標(biāo)設(shè)計 15.3審計風(fēng)控的需求與實現(xiàn)思路 15.4Flink代碼實現(xiàn)結(jié)構(gòu)與業(yè)務(wù)邏輯細(xì)節(jié)拆解 |
流式處理架構(gòu) 1.1 流式處理背景及架構(gòu)介紹 1.2 流式處理行業(yè)案例以及Flink的適用場景及應(yīng)用概述 |
Flink概述 2.1 什么是Flink 2.2 Flink架構(gòu) 2.3 Flink 與 Spark的比較以及為什么選擇Flink 2.4 Flink開發(fā)環(huán)境配置和搭建 |
Flink編程模型 3.1 數(shù)據(jù)集類型 3.2 Flink編程接口 3.3 Flink程序結(jié)構(gòu) 3.4 Flink數(shù)據(jù)類型 |
DataStream API介紹與使用 4.1 DataStream編程模型 4.2 Flink Execution 參數(shù) 4.3 Transformation 4.4 時間概念與Watermark 4.5 Windows窗口計算 4.6 作業(yè)鏈和資源組 4.7 Asynchronous I/O異步API 4.8 Asynchronous I/O異步原理 |
Flink Connector數(shù)據(jù)源 5.1 FlinkKafkaSource序列化、消費模式 5.2 FlinkKafkaSource容錯、動態(tài)分區(qū)及topic 5.3 FlinkKafkaSink序列化、配置、分區(qū)與容錯 5.4自定義Source和Sink |
DataSet API介紹與使用 6.1 DataSet API,Transformation 6.2 迭代計算 6.3 廣播變量與分布式緩存 6.4 語義注解 6.5 DataSetUtils工具類 |
Table API & SQL介紹與使用 7.1 TableEnviroment概念 7.2 Flink Table API 7.3 Flink SQL使用 7.4 自定義函數(shù) 7.5 自定義數(shù)據(jù)源 |
兩個完整的Flink實現(xiàn)案例 8.1 Kafka 數(shù)據(jù)流處理,寫入HDFS 8.2多源數(shù)據(jù)關(guān)聯(lián)與聚合分析 |
Flink有狀態(tài)的計算、狀態(tài)管理和容錯 9.1 什么是有狀態(tài)計算 9.2 有狀態(tài)計算中的數(shù)據(jù)一致性挑戰(zhàn) 9.3 理解state狀態(tài) 9.4 Operator State 的使用及Redistribute 9.5 Keyed State的使用與Redistribute 9.6 Broadcast State的妙用 9.7 Checkpoint核心原理剖析 9.8 Checkpoint使用條件及使用步驟 9.9 Checkpoint相關(guān)配置及重啟策略 9.10 Savepoint的觸發(fā)、Job恢復(fù)及刪除 |
實戰(zhàn)項目1:用Flink實現(xiàn)一個通用、配置化的海量數(shù)據(jù)流、批處理產(chǎn)品 10.1實現(xiàn)配置管理 10.2實現(xiàn)數(shù)據(jù)源加載 10.3實現(xiàn)主流程控制 10.4實現(xiàn)任務(wù)管理 |
Flink部署與應(yīng)用 11.1 Flink集群部署 11.2 Flink高可用配置 11.3 Flink安全管理 11.4 Flink集群升級 11.5 Flink on Yarn的原理和運行方式 11.6 Flink on Yarn 提交任務(wù)與停止任務(wù) |
Flink監(jiān)控與性能優(yōu)化 12.1 監(jiān)控指標(biāo) 12.2 Backpressure監(jiān)控與優(yōu)化 12.3 Checkpointing監(jiān)控與優(yōu)化 12.4 Flink內(nèi)存優(yōu)化 |
Flink組件棧介紹與使用 13.1 Flink復(fù)雜事件處理 13.2 Flink Gelly圖計算應(yīng)用 13.3 FlinkML機器學(xué)習(xí)應(yīng)用 13.4 Flink Metrics 與監(jiān)控 |
Flink源碼學(xué)習(xí) 14.1 Flink源碼編譯 14.2 如何閱讀和學(xué)習(xí)Flink源碼 14.3 Flink源碼實現(xiàn)思路以及依賴管理 14.4 Flink核心模塊源碼帶讀與分析 |
Flink在各大互聯(lián)網(wǎng)公司的典型應(yīng)用剖析 14.1Flink在阿里的應(yīng)用 14.2Flink在字節(jié)跳動的應(yīng)用 14.3Flink在騰訊的應(yīng)用 14.4Flink在微博的應(yīng)用 14.5Flink在其他互聯(lián)網(wǎng)公司的應(yīng)用 14.6Flink 最佳實踐 |
實戰(zhàn)項目2:使用Flink實現(xiàn)電商用戶支付行為分析和審計風(fēng)控 15.1電商支付數(shù)據(jù)模型(訂單,流水,賬戶余額,發(fā)現(xiàn)表) 15.2用戶行為分析需求與維度指標(biāo)設(shè)計 15.3審計風(fēng)控的需求與實現(xiàn)思路 15.4Flink代碼實現(xiàn)結(jié)構(gòu)與業(yè)務(wù)邏輯細(xì)節(jié)拆解 |