《大數據實時計算系統實踐》

799

 

課程名稱: 

 

《大數據實時計算系統實踐》第一期 

 

主講老師:

 

余海琳 原阿里巴巴資深研發工程師

曾就職于阿里巴巴任資深研發工程師,從事分布式網絡系統研發,包括內核TCP/IP網絡協議、DDOS攻擊防御、負載均衡、RPC網絡通訊以及分布式系統開發維護,對系統開發有比較深入的理解。現任某大型互聯網公司,從事大數據分布式實時流計算引擎Flink研發工作、業務支撐,負責維護公司內部Flink版本,跟進新技術點落地實戰。

 

羅江宇  新浪微博資深研發工程師

研究生畢業于浙江大學,曾就職于新浪微博,目前就職于某大型互聯網公司,從事Flink集群維護,業務支撐和研發工作, 有Flink 大規模生產經驗。

 

文俊  資深研發工程師

畢業于南京理工大學,目前就職于某大型互聯網公司,從事Flink集群維護,業務支撐和研發優化工作,有Flink大規模生產經驗。

 

劉博宇  資深研發工程師

就職于某大型互聯網公司,從事大數據基礎平臺建設相關工作,負責Druid集群維護與研發工作。

 

課程簡介:


本次的課程主要包括三大部分:
1. Flink基本原理概述。指導學員了解并掌握Flink使用過程中設計到的基本概念和簡要API,介紹大數據實時流計算相關生態體系,著重梳理清楚Flink上下游體系,掌握Flink的核心技術原理,建立大數據實時流計算的方法論思維。
2. Flink實戰生產技術。從實戰出發,圍繞實時流計算業務場景分析、基本編程模型、高級特性等系統性介紹Flink實時流計算的實戰技術,使得學員具備研發Flink實時流計算相關應用的基礎能力。
3.  Druid是一款支持數據實時寫入、低延時、高性能的OLAP引擎,具有優秀的數據聚合能力與實時查詢能力。在大數據分析、實時計算、監控等領域都有特定的應用場景,是大數據基礎架構建設中重要的一環。本次課程我們將介紹Druid的核心特性與原理,以及在性能調優以及最佳實踐經驗。

面向人群:

 

1.  希望學習大數據實時流計算和實時OLAP的學生;
2.  希望了解大數據實時流計算和OLAP實戰技術的IT從業人員;
3.  未來希望成為大數據實時流計算的求職者;
4.  想在大數據實時流計算方向和OLAP方面進行深入研究者。

 

學習收益:

通過本課程的學習,學員將會收獲:

1. 學員將系統性的了解并掌握大數據實時流計算的基本技術原理,結合Flink的生產技術案例,可基本實現獨立開發、業務場景分析能力;
2. 了解大數據實時流計算上下游生態;
3. 理解Druid基礎特性與正確使用方式,基本工作原理,并了解Druid面向的問題域以及典型的使用場景;
4. 對有志于從事大數據實時流計算以及OLAP研發的學員,提供系統實現原理的講解與指導。

 

課程大綱:

 

第一課: Flink基本概念與部署            

1. Flink 簡介
2. 編程模型
3. 運行時概念
4. 應用部署與原理

a. 部署模式

b. On-Yarn 啟動設置與原理

c. Job 啟動設置與原理
 
第二課: DataStream        
1. DataStreamContext環境
2. 數據源(DataSource)
  3. 轉化(Transformation)
4. 數據Sink
 

第三課:Window & Time

    1. Window介紹

a. 為什么要有Window

b. Window類型

2. Window API的使用

a. Window的三大組件

b. Time&watermark

c. 時間語義

d. 亂序問題解決WaterMark

e. AllowLateness正確設置與理解

f. Sideoutput在Window中的使用

3. Window的內部實現原理

a. Window的處理流程

b. Window中的狀態存儲

4. 生產環境中的Window使用遇到的一些問題

 

第四課: Connector

1. 基本Connnector

2. 自定義Source 與 Sink

3. Kafka-connecotor      

a. Kafka 簡介
b. Kafka Consumer 與Sink 的正確使用方式        

c. Kafka-Connector 內部機制與實現原理 
 

第五課: 狀態管理與恢復機制 
1. 基本概念
    2.  KeyState 基本類型及用法
a.  ValueState

b.  ListState

c.  ReduceState

d.  FoldState

e.  AggregatingState

3.  OperatorState基本用法

4.  Checkpoint

         a.  概念

    b. 開啟checkpoint

        c.  基本原理

 

第六課: Metrics 與監控 

1.  Metrics的種類

2.  Metrics的獲取方式

a. Web Ui

b. Rest API

c. MetricReporter

3.  用戶自定義Metric指標方式

4.  監控和診斷:Metric和Druid 實時OLAP聯合使用

a. Metric上報

b. Metric指標聚合

c. Metric的分類和格式定義

5. Druid查詢和指標系統

a. Flink作業反壓監控

b. Flink作業的延遲監控

c. 其他

6. Metric系統的內部實現

7. 生產環境中的案例分析 -- 通過指標來排查應用問題

 
第七課: Flink應用案例介紹

1. 數據清洗:map/flatmap等

2. 監控告警系統

a. 數據拉平

b. 基礎窗口計算等

3. 線上運營系統

4. 風控系統    

第八課: Druid基本概念與架構設計 
1. Druid與OLAP VS Kylin、ES等
2. Druid與指標系統 VS 各種時序數據庫

3. Druid特性

4. 基本架構:角色節點與基本職責

a.  角色行為

b. 角色暴露的API

5. 基本架構:外部依賴

a. MySQL數據結構

b. ZK數據結構

c. HDFS數據結構

       
第九課: Druid數據寫入與查詢 
1. 數據流向與存儲格式
a. 數據寫入流程

b. 存儲與索引格式

2. 實時數據寫入

a. Firehose

b. Realtime Node

c. Index-Service原理介紹

d. Tranquility原理介紹

e. Kafka-index-service原理
3. 離線數據寫入
a. Indexer

b. MR Indexer 

4. 查詢模式與查詢類型介紹

 

第十課: Druid實踐介紹

  1. 容錯設計

2. 指標監控

  a. 基于Graphite搭建指標監控系統

b. 重要的指標項

3. 運維實踐

a. 數據修復

b. 集群升級實踐

c. Segment元數據管理

d. JVM調優

c. 資源隔離

 

 

 

 

常見問題:
  

Q: 會有實際上機演示和動手操作嗎?
A: 有,幾乎每節課,老師均會準備上機演示部分,學員可以學習老師的實踐經驗。
Q: 參加本門課程有什么要求?
A: 有一定Java或Scala編程能力。

Q: 有課外學習資料嗎?

A: 有,老師會根據情況提供講義,并給出進階學習資源與項目的建議。

Q: 本課程怎么答疑?
A: 推薦大家到小象問答社區(wenda.epicabrazil.com)提問,方便知識的沉淀,老師會集中回答,不會因為QQ群信息刷屏而被老師錯過。也會有專門的QQ班級群,同學們可以針對課上知識的問題,或者自己學習與動手實踐中的問題,向老師提問,老師會進行相應解答。

Q:在哪里上課?

A:課程直播和回放都在小象學院官網(http://epicabrazil.com)上進行,不需要其他直播軟件;如果希望上下班路上觀看,可以下載小象學院app進行緩存

 

聯系方式:

 

參團后,請加客服微信:13126576580

手機:13126576580

郵件:admin@epicabrazil.com

網站:

 

授課教師

你懂的网址曾就職于阿里巴巴任資深研發工程師,從事分布式網絡系統研發,包括內核TCP/IP網絡協議、DDOS攻擊防御、負載均衡、RPC網絡通訊以及分布式...

你懂的网址研究生畢業于浙江大學,曾就職于新浪微博,目前就職于某大型互聯網公司,從事Flink集群維護,業務支撐和研發工作, 有Flink 大規模生產經...

你懂的网址畢業于南京理工大學,目前就職于某大型互聯網公司,從事Flink集群維護,業務支撐和研發優化工作,有Flink大規模生產經驗。

資深研發工程師 就職于某大型互聯網公司,從事大數據基礎平臺建設相關工作,負責Druid集群維護與研發工作。