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