課程簡介
本課程的大綱設(shè)置,注重的是Flink基礎(chǔ)和核心技術(shù)的梳理和掌握,之后會(huì)對(duì)其中幾個(gè)重要的技術(shù)點(diǎn)做深入分析。針對(duì)企業(yè)內(nèi)訓(xùn)的需求,我們對(duì)大綱的設(shè)置,特別增加了學(xué)以致用的實(shí)戰(zhàn)環(huán)節(jié),讓企業(yè)學(xué)員能夠在學(xué)習(xí)完Flink技術(shù)知識(shí)后,具備將Flink應(yīng)用到實(shí)際生產(chǎn)環(huán)境中的能力,通過短時(shí)間的技術(shù)學(xué)習(xí),為公司創(chuàng)造價(jià)值和提高技術(shù)生產(chǎn)的效率。
本課程理論和實(shí)戰(zhàn)相結(jié)合,能夠通過實(shí)踐學(xué)習(xí)Flink的核心知識(shí)點(diǎn)和應(yīng)用場景
本課程的最大亮點(diǎn)是“Flink實(shí)時(shí)數(shù)據(jù)倉庫項(xiàng)目實(shí)戰(zhàn)”模塊,通過真實(shí)的實(shí)時(shí)數(shù)倉項(xiàng)目,幫助學(xué)員能夠快速進(jìn)入Flink項(xiàng)目的開發(fā)。
目標(biāo)收益
-深入了解流批一體數(shù)據(jù)攝取、整合、處理和應(yīng)用的解決方案和技術(shù)體系架構(gòu)
-了解Flink的典型應(yīng)用場景和Flink在大型互聯(lián)網(wǎng)的典型應(yīng)用
-深入了解Flink技術(shù)棧的功能和應(yīng)用場景,對(duì)流批一體的解決方案和落地有深入的理解,并且能夠落地
-深入了解Flink編程模型及核心原理、DataSet API編程、DataStream API編程、Flink Table API&SQL編程、Time及Window操作、Flink 常用Connectors介紹、Flink監(jiān)控和調(diào)優(yōu)
-Flink實(shí)時(shí)數(shù)據(jù)倉庫項(xiàng)目實(shí)戰(zhàn),了解實(shí)時(shí)數(shù)據(jù)倉庫的技術(shù)架構(gòu)、從數(shù)據(jù)攝取到數(shù)據(jù)展示的全鏈路數(shù)據(jù)實(shí)時(shí)處理的過程
-學(xué)員能夠自主獨(dú)立的使用Flink進(jìn)行實(shí)時(shí)數(shù)倉平臺(tái)的開發(fā)工作
培訓(xùn)對(duì)象
-大數(shù)據(jù)平臺(tái)架構(gòu)師
-一線大數(shù)據(jù)開發(fā)人員
-對(duì)Flink流批一體數(shù)據(jù)平臺(tái)感興趣的人員
課程大綱
第一天 流批一體架構(gòu)案例分享 |
離線數(shù)倉技術(shù)架構(gòu)和技術(shù)棧介紹 實(shí)時(shí)數(shù)倉架構(gòu)架構(gòu)和技術(shù)棧介紹 流批一體架構(gòu)的優(yōu)點(diǎn) 流批一體架構(gòu)解決方案 流批一體架構(gòu)技術(shù)棧詳解 流批一體數(shù)據(jù)架構(gòu)的設(shè)計(jì) 流批一體數(shù)據(jù)攝取、整合、處理和應(yīng)用的解決方案 流批一體平臺(tái)架構(gòu)在互聯(lián)的實(shí)戰(zhàn) 美團(tuán)流批一體平臺(tái)架構(gòu)分享 |
基于Flink流批一體數(shù)倉案例實(shí)戰(zhàn) |
滴滴基于Flink實(shí)現(xiàn)復(fù)雜事件處理的案例分享 —Flink+CEP —Flink狀態(tài)管理 —Flink運(yùn)維和優(yōu)化 —Flink容錯(cuò)機(jī)制 —Flink反壓機(jī)制 —Flink任務(wù)的雙鏈路備用 阿里巴巴基于Flink實(shí)時(shí)統(tǒng)計(jì)案例分享 —阿里雙十一實(shí)時(shí)架構(gòu)分享 —雙流數(shù)據(jù)Join處理 —Flink流失實(shí)倉架構(gòu)詳解 Flink CEP實(shí)時(shí)規(guī)則引擎詳解 |
Flink 技術(shù)棧介紹 |
Flink Table API介紹 Flink SQL介紹 Flink CDC Connect介紹 Flink CEP復(fù)雜事件處理 Flink Gelly圖計(jì)算應(yīng)用 Flink ML機(jī)器學(xué)習(xí)應(yīng)用 PyFlink數(shù)據(jù)分析和挖掘介紹 Flink Metrics 與監(jiān)控 |
Flink on yarn原理 |
Flink的運(yùn)行模式介紹 Flink on standalone運(yùn)行模式介紹 Flink on yarn運(yùn)行模式 —Session mode模式介紹和實(shí)戰(zhàn) —Per-job mode模式介紹和實(shí)戰(zhàn) —Application mode模式和實(shí)戰(zhàn) 三種模式的優(yōu)缺點(diǎn)比較 |
Flink有狀態(tài)的計(jì)算、狀態(tài)管理和容錯(cuò) |
什么是有狀態(tài)計(jì)算 有狀態(tài)計(jì)算中的數(shù)據(jù)一致性挑戰(zhàn) 理解state狀態(tài) Operator State 的使用及Redistribute Keyed State的使用與Redistribute Broadcast State的使用 Checkpoint核心原理剖析 Checkpoint使用條件及使用步驟 Checkpoint相關(guān)配置及重啟策略 Savepoint的觸發(fā)、Job恢復(fù)及刪除 |
Flink DataStream API原理和實(shí)戰(zhàn) |
DataStream API介紹與使用 DataStream編程模型 DataStream類型與轉(zhuǎn)換 Pipeline與StreamGraph轉(zhuǎn)換 Transformation 時(shí)間概念與Watermark Windows窗口計(jì)算和多流合并 作業(yè)鏈和資源組 Asynchronous I/O異步API Asynchronous I/O異步原理 |
Flink DataSet API介紹和實(shí)戰(zhàn) |
DataSet API,Transformation 迭代計(jì)算 廣播變量與分布式緩存 語義注解 DataSetUtils工具類 |
第二天 Flink Table API & SQL實(shí)戰(zhàn) |
Flink table API原理和使用 Flink SQL原理和使用 TableEnviroment原理和使用 Table Connector注冊(cè)機(jī)制和使用 TimeStamp與Watermark原理和實(shí)戰(zhàn) Temporal Tables原理實(shí)戰(zhàn) 多表關(guān)聯(lián)實(shí)戰(zhàn) 與Hive的集成實(shí)戰(zhàn) 自定義TableSource、Table Sink和Table Factory實(shí)戰(zhàn) Flink SQL Catalog原理 項(xiàng)目實(shí)戰(zhàn):基于Flink SQL實(shí)現(xiàn)數(shù)據(jù)統(tǒng)計(jì)分析 |
Flink Connector介紹和實(shí)戰(zhàn) |
Flink Connector數(shù)據(jù)源 FlinkKafkaSource序列化、消費(fèi)模式 FlinkKafkaSource容錯(cuò)、動(dòng)態(tài)分區(qū)及topic FlinkKafkaSink序列化、配置、分區(qū)與容錯(cuò) 自定義Source和Sink |
Flink CDC介紹 |
傳統(tǒng)CDC工具介紹 CDC工具介紹和比較 Flink CDC支持的功能 基于日志CDC的數(shù)據(jù)同步流程 ETL—傳統(tǒng)CDC ETL分析 ETL—基于Flink CDC 聚合分析 Flink CDC 數(shù)據(jù)寬表 Flink SQL如何集成CDC Flink CDC 作為數(shù)據(jù)采集層的優(yōu)勢(shì) |
項(xiàng)目實(shí)戰(zhàn)RDBMS+Kafka+Flink CDC+FlinkSQL+ES+Kibana項(xiàng)目實(shí)戰(zhàn) |
RDBMS+Kafka+Flink CDC+FlinkSQL+ES+Kibana項(xiàng)目實(shí)戰(zhàn): Docker演示環(huán)境介紹 Flink CDC mysql實(shí)戰(zhàn) Flink CDC postgres實(shí)戰(zhàn) Flink CDC Kafka實(shí)戰(zhàn) Flink CDC ES實(shí)現(xiàn) Kibana結(jié)果展示 RDBMS+Kafka+Flink CDC+FlinkSQL+ES+Kibana完整項(xiàng)目實(shí)戰(zhàn) |
Flink監(jiān)控和優(yōu)化 |
Flink Metric使用介紹 Flink RestAPI介紹和使用 Backpressure監(jiān)控與優(yōu)化 Checkpointing監(jiān)控與優(yōu)化 Flink內(nèi)存管理和優(yōu)化 窗口和事件事件調(diào)試 HistoryServer服務(wù)介紹 |
第一天 流批一體架構(gòu)案例分享 離線數(shù)倉技術(shù)架構(gòu)和技術(shù)棧介紹 實(shí)時(shí)數(shù)倉架構(gòu)架構(gòu)和技術(shù)棧介紹 流批一體架構(gòu)的優(yōu)點(diǎn) 流批一體架構(gòu)解決方案 流批一體架構(gòu)技術(shù)棧詳解 流批一體數(shù)據(jù)架構(gòu)的設(shè)計(jì) 流批一體數(shù)據(jù)攝取、整合、處理和應(yīng)用的解決方案 流批一體平臺(tái)架構(gòu)在互聯(lián)的實(shí)戰(zhàn) 美團(tuán)流批一體平臺(tái)架構(gòu)分享 |
基于Flink流批一體數(shù)倉案例實(shí)戰(zhàn) 滴滴基于Flink實(shí)現(xiàn)復(fù)雜事件處理的案例分享 —Flink+CEP —Flink狀態(tài)管理 —Flink運(yùn)維和優(yōu)化 —Flink容錯(cuò)機(jī)制 —Flink反壓機(jī)制 —Flink任務(wù)的雙鏈路備用 阿里巴巴基于Flink實(shí)時(shí)統(tǒng)計(jì)案例分享 —阿里雙十一實(shí)時(shí)架構(gòu)分享 —雙流數(shù)據(jù)Join處理 —Flink流失實(shí)倉架構(gòu)詳解 Flink CEP實(shí)時(shí)規(guī)則引擎詳解 |
Flink 技術(shù)棧介紹 Flink Table API介紹 Flink SQL介紹 Flink CDC Connect介紹 Flink CEP復(fù)雜事件處理 Flink Gelly圖計(jì)算應(yīng)用 Flink ML機(jī)器學(xué)習(xí)應(yīng)用 PyFlink數(shù)據(jù)分析和挖掘介紹 Flink Metrics 與監(jiān)控 |
Flink on yarn原理 Flink的運(yùn)行模式介紹 Flink on standalone運(yùn)行模式介紹 Flink on yarn運(yùn)行模式 —Session mode模式介紹和實(shí)戰(zhàn) —Per-job mode模式介紹和實(shí)戰(zhàn) —Application mode模式和實(shí)戰(zhàn) 三種模式的優(yōu)缺點(diǎn)比較 |
Flink有狀態(tài)的計(jì)算、狀態(tài)管理和容錯(cuò) 什么是有狀態(tài)計(jì)算 有狀態(tài)計(jì)算中的數(shù)據(jù)一致性挑戰(zhàn) 理解state狀態(tài) Operator State 的使用及Redistribute Keyed State的使用與Redistribute Broadcast State的使用 Checkpoint核心原理剖析 Checkpoint使用條件及使用步驟 Checkpoint相關(guān)配置及重啟策略 Savepoint的觸發(fā)、Job恢復(fù)及刪除 |
Flink DataStream API原理和實(shí)戰(zhàn) DataStream API介紹與使用 DataStream編程模型 DataStream類型與轉(zhuǎn)換 Pipeline與StreamGraph轉(zhuǎn)換 Transformation 時(shí)間概念與Watermark Windows窗口計(jì)算和多流合并 作業(yè)鏈和資源組 Asynchronous I/O異步API Asynchronous I/O異步原理 |
Flink DataSet API介紹和實(shí)戰(zhàn) DataSet API,Transformation 迭代計(jì)算 廣播變量與分布式緩存 語義注解 DataSetUtils工具類 |
第二天 Flink Table API & SQL實(shí)戰(zhàn) Flink table API原理和使用 Flink SQL原理和使用 TableEnviroment原理和使用 Table Connector注冊(cè)機(jī)制和使用 TimeStamp與Watermark原理和實(shí)戰(zhàn) Temporal Tables原理實(shí)戰(zhàn) 多表關(guān)聯(lián)實(shí)戰(zhàn) 與Hive的集成實(shí)戰(zhàn) 自定義TableSource、Table Sink和Table Factory實(shí)戰(zhàn) Flink SQL Catalog原理 項(xiàng)目實(shí)戰(zhàn):基于Flink SQL實(shí)現(xiàn)數(shù)據(jù)統(tǒng)計(jì)分析 |
Flink Connector介紹和實(shí)戰(zhàn) Flink Connector數(shù)據(jù)源 FlinkKafkaSource序列化、消費(fèi)模式 FlinkKafkaSource容錯(cuò)、動(dòng)態(tài)分區(qū)及topic FlinkKafkaSink序列化、配置、分區(qū)與容錯(cuò) 自定義Source和Sink |
Flink CDC介紹 傳統(tǒng)CDC工具介紹 CDC工具介紹和比較 Flink CDC支持的功能 基于日志CDC的數(shù)據(jù)同步流程 ETL—傳統(tǒng)CDC ETL分析 ETL—基于Flink CDC 聚合分析 Flink CDC 數(shù)據(jù)寬表 Flink SQL如何集成CDC Flink CDC 作為數(shù)據(jù)采集層的優(yōu)勢(shì) |
項(xiàng)目實(shí)戰(zhàn)RDBMS+Kafka+Flink CDC+FlinkSQL+ES+Kibana項(xiàng)目實(shí)戰(zhàn) RDBMS+Kafka+Flink CDC+FlinkSQL+ES+Kibana項(xiàng)目實(shí)戰(zhàn): Docker演示環(huán)境介紹 Flink CDC mysql實(shí)戰(zhàn) Flink CDC postgres實(shí)戰(zhàn) Flink CDC Kafka實(shí)戰(zhàn) Flink CDC ES實(shí)現(xiàn) Kibana結(jié)果展示 RDBMS+Kafka+Flink CDC+FlinkSQL+ES+Kibana完整項(xiàng)目實(shí)戰(zhàn) |
Flink監(jiān)控和優(yōu)化 Flink Metric使用介紹 Flink RestAPI介紹和使用 Backpressure監(jiān)控與優(yōu)化 Checkpointing監(jiān)控與優(yōu)化 Flink內(nèi)存管理和優(yōu)化 窗口和事件事件調(diào)試 HistoryServer服務(wù)介紹 |