分布式文件操作和存儲、分布式數據庫、批處理計算模型、并行計算引擎、流計算模型
講師:尹立慶 瀏(liu)覽次(ci)數(shu):2552
課程描述INTRODUCTION
Hadoop生態系統
日(ri)程安排SCHEDULE
課程(cheng)大綱Syllabus
Hadoop生態系統
培訓目標
1、 深入理解分布式原理與實現技術;
2、 分布式文件系統操作能力,以HDFS為例講解;
3、 從代碼的角度深入剖析MapReduce執行的具體過程;
4、 培養學員具有分布式批處理計算框架的開發MapReduce代碼的能力;
5、 使學員掌握MapReduce內部運行和實現細節并改造MapReduce的能力;
6、 使學員掌握分布式并行計算引擎的使用能力,如Spark、Impala等;
7、 使學員掌握分布式數據庫的使用能力,如HBase、MySQL Cluster、Redis等;
8、 具備分布式流計算的開發能力,如SparkStreaming、Storm等;
培訓對象
1、 對大數據、分布式存儲、分布式計算等感興趣的朋友;
2、 Java、PHP、C等任意一門編程語言的開發者;
3、 大型網站、電商網站等運維人員;
4、 云計算、大數據從業者;
5、 熟悉Hadoop生態體系,想了解和學習Hadoop與Spark整合在企業應用實戰案例的朋友;
6、 系統架構師、系統分析師、高級程序員、資深開發人員;
7、 牽涉到大數據處理的數據中心運行、規劃、設計負責人;
8、 政府機關,金融保險、移動互聯網等大數據單位的負責人;
9、 高校、科研院所大數據研究人員,涉及到大數據與分布式數據處理的人員;
10、 數據倉庫管理人員、建模人員,分析和開發人員、系統管理人員、數據庫管理人員以及對數據倉庫感興趣的其他人員;
課程大綱
第1個主題: 分布式基礎理論知識(深入剖析分布式原理與理論,并為分布式學習奠定基礎)
1、 大數據技術
2、 分布式技術
3、 CAP理
4、 BASE思想
5、 消息機制
6、 分布式協調器
7、 心跳機制
8、 日志結構文件系統
9、 RWN理論
10、 跨操作系統調度資源
第2個主題: Hadoop大數據分布式平臺概述(系統性介紹Hadoop大數據分布式平臺)
1、 Hadoop是大數據架構的事實標準
2、 Hadoop工作原理及架構
3、 Hadoop生態體系介紹
4、 Hadoop應用現狀
5、 Hadoop發展趨勢
6、 Hadoop優勢
7、 實例分享:雙十一億背后的開源技術
第3個主題: Hadoop分布式集群部署與運維(動手搭建Hadoop集群及運維)
1、 SaltStack
2、 Maven
3、 禁用IPV6
4、 SSH無密碼登錄
5、 Hadoop HA部署介紹
6、 Hadoop集群部署
7、 Hadoop集群的監控
8、 Hadoop集群的運維
第4個主題: 分布式文件操作和存儲(深入理解大數據分布式文件系統的原理與機制)
1、 HDFS架構剖析
2、 NameNode、DataNode、SecondaryNameNode介紹
3、 NodeName高可靠性*實踐
4、 DataNode中Block劃分的原理和具體存儲方式
5、 修改Namenode、DataNode數據存儲位置
6、 CLI操作HDFS
7、 Java操作HDFS
8、 RESTful操作HDFS
9、 動態修改Hadoop的Replication數目
10、 Hadoop序列化
11、 Hadoop流壓縮
12、 Hadoop RPC
13、 SequenceFile與MapFile
14、 Hadoop Avro
第5個主題: 分布式資源調度框架剖析(深入剖析和使用分布式資源調度框架的能力)
1、 YARN介紹
2、 YARN的設計思想
3、 YARN的核心組件
4、 YARN為核心的生態系統
5、 Yarn的 HA機制
6、 YARN應用程序編寫
7、 ResourceManager深入剖析
8、 ClientRMService與AdminService
9、 NodeManager深入剖析
10、 Container
第6個主題: 分布式批處理計算模型MapReduce(深入剖析MapReduce原理及開發MapReduce程序能力思維方法論)
1、 MapReduce算法剖析
2、 MapReduce編程思想
3、 MapReduce常用算法
4、 MapReduce命令操作
5、 wordcount運行過程解析
6、 MapReduce如何將HDFS文件轉化為Key-Value供Map解析與處理
7、 Hadoop的調度器介紹
8、 Combiner的使用原則
9、 Partitioner的使用*實踐
10、 MapReduce排序算法剖析
11、 自定義排序算法
12、 Hadoop內置的分組算法
13、 自定義分組算法
14、 MapReduce常見場景和算法實現
15、 MapReduce新舊API的區別以及如何使用API
16、 MapReduce程序打包并在命令行運行
17、 Hadoop Streaming
18、 動態增加Hadoop的Slave節點
19、 學員動手編寫MapReduce程序
第7個主題: 分布式內存數據庫(介紹當前主流的分布式內存數據庫,深入剖析分布式內存庫系統的原理與機制)
1、 業界主要應用的分布式內存庫有哪些
2、 分布式內存庫的應用情況
a) 大數據非結構化數據的應用場景(TFS)
b) 大數據歷史明細查詢的應用場景
c) 秒殺高并發的應用場景
d) 實時高并發業務的應用場景
e) 在線實時統計分析的應用場景
3、 應用的具體案例
a) 分布式內存庫在運營商話單詳單查詢系統中的應用
b) 分布式內存庫在金融行業流水業務查詢系統中的應用
c) 分布式內存庫在微博自媒體業務中應用
4、 分布式內存庫的特性
5、 CAP理論
6、 BASE思想
7、 RWN理論
8、 分布式關系型內存庫
a) MySQL Cluster
9、 分布式NoSQL列式內存庫
a) HBase
b) Cassandra
c) GemFire
10、 分布式文檔內存庫
a) MongoDB
11、 案例:GemFire在實時交易系統12306的使用案例分享
第8個主題: 分布式協調器(深入剖析分布式協調器技術原理和實現技術)
1、 Zookeeper介紹
2、 Paxos算法
3、 Paxos 算法應用場景
4、 Zookeeper的數據模型
5、 Zookeeper的節點
6、 Zookeeper的角色
7、 Zookeeper工作原理
8、 Leader選舉
9、 部署ZooKeeper
10、 Shell操作Zookeeper
11、 Java程序操作Zookeeper
12、 Zookeeper典型使用場景
第9個主題: 分布式數據庫NoSQL技術(深入剖析分布式NoSQL技術及原理并實操)
1、 分布式數據庫概述
2、 HBase介紹
3、 HBase的特點
4、 HBase邏輯模型
5、 HBase列族與列
6、 HBase時間戳
7、 行式數據庫 vs 列式數據庫
8、 HBase物理模型
9、 數據存儲結構:LSM
10、 HBase的REST接口
11、 HBase安裝部署
12、 HBase Shell
13、 倒排索引
14、 開發實踐分享:微博
15、 HBase應用
16、 HBase Filter
17、 HBase Coprocessor
第10個主題: 分布式NoSQL數據庫編程思維訓練(老師帶領學員用HBase在課上親自動手完成微博項目的開發過程,使學員掌握分布式NoSQL編程思維方法)
1、 HBase開發環境搭建過程介紹
2、 倒排索引
3、 案例實戰:微博項目
4、 微博業務概述
5、 微博業務功能說明
6、 微博邏輯架構設計
7、 微博開發使用的組件
8、 HBase表結構設計
9、 基于HBase的微博表結構設計
10、 基于HBase的微博項目代碼開發
11、 基于HBase的微博項目的總結
12、 HBase API剖析
13、 HBase研發案例分享
14、 HBase應用
15、 基于HTable的MapReduce分析
16、 HBase Filter
17、 HBase Filters
18、 SingleColumnValueFilter示例
第11個主題: 分布式內存數據庫庫Redis(深入剖析Redis的技術原理)
1、 Redis數據庫原理
2、 Redis數據庫應用
3、 Redis開發實踐(倒排索引)
4、 Redis開發調試
5、 Redis優化
6、 Redis發布訂閱機制剖析
7、 Redis集群搭建
8、 Codis介紹
9、 Codis整體設計
10、 Codis架構
11、 Codis組件介紹
第12個主題: 分布式文檔內存庫MongoDB(深入剖析分布式內存庫MongoDB文檔數據庫功能與項目應用案例)
1、 什么是MongoDB
2、 MongoDB發展現狀與趨勢
3、 介紹MongoDB基礎概念
4、 MongoDB架構剖析
5、 MongoDB文檔與集合
6、 MongoDB集群搭建
7、 MongoDB狀態監控
8、 MongoDB安全認證
9、 MongoDB備份和恢復
10、 MongoDB Shell操作
11、 MongoDB數據類型
12、 文檔的增加、修改與刪除
13、 Java訪問MongoDB文檔的調試
14、 MongoDB查詢介紹
15、 MongoDB MapReduce統計分析
16、 MongoDB索引
17、 MongoDB性能優化
18、 MongoDB主從復制
19、 MongoDB Sharding分片
20、 MongoDB項目案例:運營商話務數據分析案例剖析
第13個主題: 關系型分布式內存庫MySQL Cluster(深入剖析關系型分布式內存庫MySQL Cluster數據庫功能與實現原理)
1、 什么是MySQL Cluster
2、 MySQL Cluster發展現狀與趨勢
3、 介紹MySQL Cluster基礎概念
4、 MySQL Cluster架構剖析
5、 NDB Cluster存儲引擎
6、 無共享體系結構
7、 管理(MGM)節點
8、 數據節點
9、 SQL節點
10、 標準MySQL客戶端
11、 MySQL Cluster應用場景
12、 案例分享:MySQL Cluster在電商平臺中的應用
第14個主題: 分布式并行計算引擎(深入剖析分布式并行計算引擎實現原理)
1、 分布式并行計算引擎概述
2、 分布式并行計算引擎原理
3、 Spark介紹
4、 Spark架構剖析
5、 Spark RDD計算模型解析
6、 Spark開發分析
7、 Spark的執行機制解析
8、 Spark的調試與任務分配
9、 Spark與MapReduce對比分析
10、 Spark的容錯機制剖析
11、 Spark集群部署
12、 Spark Shell
13、 構建與運行Spark應用
14、 Spark RDD操作剖析
15、 Shark基于Spark的綜合應用
16、 Spark作業測試解析
17、 Spark的性能調優
18、 Spark生態體系剖析
19、 Spark應用現狀
20、 Spark應用優勢
21、 Spark應用案例
22、 Spark案例解析
第15個主題: 分布式流計算模型(深入剖析分布式流計算模型的實現原理及開發實戰)
1、 Spark Streaming概述
2、 Spark Streaming原理剖析
3、 Spark Streaming流數據處理框架介紹
4、 Spark Streaming編程剖析
5、 初始化StreamingContext
6、 Discretized Streams (DStreams)
7、 輸入DStreams與Receivers
8、 基于DStreams的Transformations
9、 基于DStreams的輸出操作
10、 Accumulators和Broadcast Variables
11、 DataFrame和SQL操作
12、 MLlib操作
13、 Caching與Persistence
14、 Checkpointing
15、 運行Spark Streaming程序
16、 性能調優:減少批處理時間
17、 性能調優:設置正確的批處理間隔時間
18、 內存調優
19、 容錯元語
20、 實戰案例:Spark Streaming與Kafka整合實現數據實時數據分析處理設計與分析
第16個主題: 分布式流計算模型(深入剖析分布式流計算模型的實現原理)
1、 Storm基礎知識
2、 Storm集群安裝
3、 Storm打包運行測試
4、 Storm基本api介紹
5、 Storm Topology的并發度
6、 Storm消息機制原理講解
7、 Storm DRPC實戰講解
8、 Storm Transaction原理
9、 Strom Trident編程
10、 Storm案例實戰
第17個主題: Storm架構原理剖析與開發實戰(深入剖析Storm架構原理與實現技術)
1、 Storm基本概念
2、 Storm邏輯架構
3、 Storm Topology的并發度
4、 進程拓撲關系
5、 Storm序列化
6、 Storm Topology并發度配置
7、 Storm核心API介紹
8、 Storm核心API編程
9、 Storm的Ack框架
10、 Storm消息機制原理講解
11、 Spout的Tail特性
12、 Stream Groupings策略
13、 實例講解Grouping策略及并發
14、 Storm在高壓力場景下高可靠性實現
15、 Storm記錄級容錯的基本原理
16、 Storm DRPC整體工作流程
17、 DRPC實現框架
18、 Storm DRPC實戰講解
19、 Storm Windowing原理與實現
20、 滑動Windowing
21、 滾動Windowing
22、 Join Streams
23、 Storm RESTful API
24、 Storm多語言支持
25、 Storm Transaction原理
26、 Transactional Topology框架功能
27、 Storm事務API及案例分析
28、 Storm事務案例實戰
第18個主題: Strom Trident剖析與開發實戰(深入剖析Storm Trident實現原理及開發方法)
1、 Strom Trident介紹
2、 Trident API介紹
3、 Strom Trident消息
4、 Strom TridentTopology的構建器
5、 Strom Trident的SpoutNode
6、 Trident Spout類型
7、 Strom Trident的容錯Spout
8、 Strom Trident操作與處理節點
9、 Strom Trident中的Bolt
10、 Strom Trident的存儲
11、 Strom Trident流的基本操作
12、 Strom Trident中流的交互操作
13、 Strom Trident的執行優化
14、 Strom Trident與DRPC
15、 Strom Trident編程實戰
第19個主題: 分布式并行計算引擎Impala(分布式計算引擎Impala的工作原理)
1、 分布式并行計算引擎概述
2、 Impala介紹
3、 Impala是什么
4、 Impala與Hive、Pig有何不同
5、 Impala與關系數據庫有何不同
6、 Impala的限制和未來發展方向
7、 運用 Impala Shell
8、 Impala分布式集群部署
9、 Impala分布式架構原理
10、 Impala數據模型
11、 Impala作業基本運行原理
12、 Impala使用注意事項
13、 Impala DDL、DML、SQL、函數
14、 Impala作業資源占用
15、 案例:銀行在線支付統計的案例
16、 Impala調優可概述
17、 Impala參數調優
18、 Impala SQL調優
19、 Impala分區調優
20、 其他常用調優方法
21、 數據傾斜處理方法
22、 Impala與Shark、Hive、Pig區別剖析
23、 案例:Impala調優案例
第20個主題: 如何研發分布式系統?(本主題強調一個好的分布式系統離不開真實的業務需求)
1、 深入分析企業業務數據特點
2、 TFS思想的應用
3、 事務剖析
4、 分布式事務剖析
5、 分布式系統的職責分離思想
6、 大數據+簡單算法
7、 精準小數據+復雜算法
第21個主題: 分布式系統架構設計(介紹分布式系統架構設計需要遵循原則與設計技巧)
1、 CAP理論
2、 BASE思想
3、 日志結構文件系統
4、 RWN理論
5、 分布式系統遷移策略
a) 數據遷移
b) 計算遷移
6、 冷熱分離原則
7、 算法優化策略
a) 讀取+計算+顯示
b) 讀取+顯示
8、 數據序列化
9、 RESTful架構剖析
Hadoop生態系統
轉載://citymember.cn/gkk_detail/253104.html
已開課時間Have start time
- 尹立慶
[僅限會員]
IT相關內訓
- CISSP認證培訓課程 張勝生
- 軟件安全意識加強與技能提高 張(zhang)勝生
- Python高效辦公自動化 張曉如
- 云計算的應用領域和實踐 武威
- 滲透測試與攻防實戰高級課程 張勝生(sheng)
- 互聯網新技術在銀行的應用 武威
- IT崗位數智化能力提升路徑 甄文智
- 電力信息化:價值和建設分析 劉宇佳(jia)
- 網安管理崗培訓 張(zhang)勝生
- 信息安全風險評估與加固技能 張勝生
- Fine BI 數據分析與 張曉如
- 大模型技術與應用培訓 葉梓