注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計其他編程語言/工具Hadoop技術(shù)內(nèi)幕:深入解析YARN架構(gòu)設(shè)計與實現(xiàn)原理

Hadoop技術(shù)內(nèi)幕:深入解析YARN架構(gòu)設(shè)計與實現(xiàn)原理

Hadoop技術(shù)內(nèi)幕:深入解析YARN架構(gòu)設(shè)計與實現(xiàn)原理

定 價:¥69.00

作 者: 董西成 著
出版社: 機械工業(yè)出版社
叢編項:
標(biāo) 簽: 計算機與互聯(lián)網(wǎng) 軟件工程及軟件方法學(xué)

ISBN: 9787111445340 出版時間: 2013-12-01 包裝: 平裝
開本: 16開 頁數(shù): 396 字?jǐn)?shù):  

內(nèi)容簡介

  《Hadoop技術(shù)內(nèi)幕:深入解析YARN架構(gòu)設(shè)計與實現(xiàn)原理》是“Hadoop技術(shù)內(nèi)幕”系列的第3本書,前面兩本分別對Common、HDFS和MapReduce進行了深入分析和講解,贏得了極好的口碑,Hadoop領(lǐng)域幾乎人手一冊,本書則對YARN展開了深入的探討,是首部關(guān)于YARN的專著。仍然由資深Hadoop技術(shù)專家董西成執(zhí)筆,根據(jù)最新的Hadoop 2.0版本撰寫,權(quán)威社區(qū)ChinaHadoop鼎力推薦?!禜adoop技術(shù)內(nèi)幕:深入解析YARN架構(gòu)設(shè)計與實現(xiàn)原理》從應(yīng)用角度系統(tǒng)講解了YARN的基本庫和組件用法、應(yīng)用程序設(shè)計方法、YARN上流行的各種計算框架(MapReduce、Tez、Storm、Spark),以及多個類YARN的開源資源管理系統(tǒng)(Corona和Mesos);從源代碼角度深入分析YARN的設(shè)計理念與基本架構(gòu)、各個組件的實現(xiàn)原理,以及各種計算框架的實現(xiàn)細(xì)節(jié)?!禜adoop技術(shù)內(nèi)幕:深入解析YARN架構(gòu)設(shè)計與實現(xiàn)原理》共四部分13章:第一部分(第1~2章)主要介紹了如何獲取、閱讀和調(diào)試Hadoop的源代碼,以及YARN的設(shè)計思想、基本架構(gòu)和工作流程;第二部分(第3~7章)結(jié)合源代碼詳細(xì)剖析和講解了YARN的第三方開源庫、底層通信庫、服務(wù)庫、事件庫的基本使用和實現(xiàn)細(xì)節(jié),詳細(xì)講解了YARN的應(yīng)用程序設(shè)計方法,深入講解和分析了ResourceManager、資源調(diào)度器、NodeManager等組件的實現(xiàn)細(xì)節(jié);第三篇(第8~10章)則對離線計算框架MapReduce、DAG計算框架Tez、實時計算框架Storm和內(nèi)存計算框架Spark進行了詳細(xì)的講解;第四部分(第11~13章)首先對Facebook Corona和Apache Mesos進行了深入講解,然后對YARN的發(fā)展趨勢進行了展望。附錄部分收錄了YARN安裝指南、YARN配置參數(shù)以及Hadoop Shell命令等非常有用的資料。

作者簡介

  董西成 資深Hadoop技術(shù)實踐者和研究者,對Hadoop技術(shù)有非常深刻的認(rèn)識和理解,有著豐富的實踐經(jīng)驗。曾經(jīng)參與了商用Hadoop原型的研發(fā),以及人民搜索的分布式日志系統(tǒng)、全網(wǎng)圖片搜索引擎、Hadoop調(diào)度器等多個項目的設(shè)計與研發(fā),實踐經(jīng)驗非常豐富。對Hadoop的源代碼有深入的研究,能通過修改Hadoop的源代碼來完成二次開發(fā)和解決各種復(fù)雜的問題。熱衷于分享,撰寫了大量關(guān)于Hadoop的技術(shù)文章并分享在自己的博客上,由于文章技術(shù)含量高,所以非常受歡迎,這使得他在Hadoop技術(shù)圈內(nèi)頗具知名度和影響力。出版有Hadoop領(lǐng)域負(fù)有盛名的專著:《Hadoop技術(shù)內(nèi)幕:深入解析MapReduce架構(gòu)設(shè)計與實現(xiàn)原理》。

圖書目錄

前 言
第一部分 準(zhǔn)備篇
第1章 環(huán)境準(zhǔn)備
1.1 準(zhǔn)備學(xué)習(xí)環(huán)境
1.1.1 基礎(chǔ)軟件下載
1.1.2 如何準(zhǔn)備Linux環(huán)境
1.2 獲取Hadoop源代碼
1.3 搭建Hadoop源代碼閱讀環(huán)境
1.3.1 創(chuàng)建Hadoop工程
1.3.2 Hadoop源代碼閱讀技巧
1.4 Hadoop源代碼組織結(jié)構(gòu)
1.5 Hadoop初體驗
1.5.1 搭建Hadoop環(huán)境
1.5.2 Hadoop Shell介紹
1.6 編譯及調(diào)試Hadoop源代碼
1.6.1 編譯Hadoop源代碼
1.6.2 調(diào)試Hadoop源代碼
1.7 小結(jié)
第2章 YARN設(shè)計理念與基本架構(gòu)
2.1 YARN產(chǎn)生背景
2.1.1 MRv1的局限性
2.1.2 輕量級彈性計算平臺
2.2 Hadoop基礎(chǔ)知識
2.2.1 術(shù)語解釋
2.2.2 Hadoop版本變遷
2.3 YARN基本設(shè)計思想
2.3.1 基本框架對比
2.3.2 編程模型對比
2.4 YARN 基本架構(gòu)
2.4.1 YARN基本組成結(jié)構(gòu)
2.4.2 YARN通信協(xié)議
2.5 YARN工作流程
2.6 多角度理解YARN
2.6.1 并行編程
2.6.2 資源管理系統(tǒng)
2.6.3 云計算
2.7 本書涉及內(nèi)容
2.8 小結(jié)
第二部分 YARN核心設(shè)計篇
第3章 YARN基礎(chǔ)庫
3.1 概述
3.2 第三方開源庫
3.2.1 Protocol Buffers
3.2.2 Apache Avro
3.3 底層通信庫
3.3.1 RPC通信模型
3.3.2 Hadoop RPC的特點概述
3.3.3 RPC總體架構(gòu)
3.3.4 Hadoop RPC使用方法
3.3.5 Hadoop RPC類詳解
3.3.6 Hadoop RPC參數(shù)調(diào)優(yōu)
3.3.7 YARN RPC實現(xiàn)
3.3.8 YARN RPC應(yīng)用實例
3.4 服務(wù)庫與事件庫
3.4.1 服務(wù)庫
3.4.2 事件庫
3.4.3 YARN服務(wù)庫和事件庫的使用方法
3.4.4 事件驅(qū)動帶來的變化
3.5 狀態(tài)機庫
3.5.1 YARN狀態(tài)轉(zhuǎn)換方式
3.5.2 狀態(tài)機類
3.5.3 狀態(tài)機的使用方法
3.5.4 狀態(tài)機可視化
3.6 源代碼閱讀引導(dǎo)
3.7 小結(jié)
3.8 問題討論
第4章 YARN應(yīng)用程序設(shè)計方法
4.1 概述
4.2 客戶端設(shè)計
4.2.1 客戶端編寫流程
4.2.2 客戶端編程庫
4.3 ApplicationMaster設(shè)計
4.3.1 ApplicationMaster編寫流程
4.3.2 ApplicationMaster編程庫
4.4 YARN 應(yīng)用程序?qū)嵗?br /> 4.4.1 DistributedShell
4.4.2 Unmanaged AM
4.5 源代碼閱讀引導(dǎo)
4.6 小結(jié)
4.7 問題討論
第5章 ResourceManager剖析
5.1 概述
5.1.1 ResourceManager基本職能
5.1.2 ResourceManager內(nèi)部架構(gòu)
5.1.3 ResourceManager事件與事件處理器
5.2 用戶交互模塊
5.2.1 ClientRMService
5.2.2 AdminService
5.3 ApplicationMaster管理
5.4 NodeManager管理
5.5 Application管理
5.6 狀態(tài)機管理
5.6.1 RMApp狀態(tài)機
5.6.2 RMAppAttempt狀態(tài)機
5.6.3 RMContainer狀態(tài)機
5.6.4 RMNode狀態(tài)機
5.7 幾個常見行為分析
5.7.1 啟動ApplicationMaster 
5.7.2 申請與分配Container
5.7.3 殺死Application
5.7.4 Container超時
5.7.5 ApplicationMaster超時
5.7.6 NodeManager超時
5.8 安全管理
5.8.1 術(shù)語介紹
5.8.2 Hadoop認(rèn)證機制
5.8.3 Hadoop授權(quán)機制
5.9 容錯機制
5.9.1 Hadoop HA基本框架
5.9.2 YARN HA實現(xiàn) 
5.10 源代碼閱讀引導(dǎo)
5.11 小結(jié)
5.12 問題討論
第6章 資源調(diào)度器
6.1 資源調(diào)度器背景
6.2 HOD調(diào)度器
6.2.1 Torque資源管理器
6.2.2 HOD作業(yè)調(diào)度
6.3 YARN資源調(diào)度器的基本架構(gòu)
6.3.1 基本架構(gòu)
6.3.2 資源表示模型
6.3.3 資源調(diào)度模型
6.3.4 資源搶占模型
6.4 YARN層級隊列管理機制
6.4.1 層級隊列管理機制
6.4.2 隊列命名規(guī)則
6.5 Capacity Scheduler
6.5.1 Capacity Scheduler的功能
6.5.2 Capacity Scheduler實現(xiàn)
6.6 Fair Scheduler
6.6.1 Fair Scheduler功能介紹
6.6.2 Fair Scheduler實現(xiàn)
6.6.3 Fair Scheduler與Capacity Scheduler對比
6.7 其他資源調(diào)度器介紹
6.8 源代碼閱讀引導(dǎo)
6.9 小結(jié)
6.10 問題討論
第7章 NodeManager剖析
7.1 概述
7.1.1 NodeManager基本職能
7.1.2 NodeManager內(nèi)部架構(gòu)
7.1.3 NodeManager事件與事件處理器
7.2 節(jié)點健康狀況檢測
7.2.1 自定義Shell腳本
7.2.2 檢測磁盤損壞數(shù)目
7.3 分布式緩存機制
7.3.1 資源可見性與分類
7.3.2 分布式緩存實現(xiàn)
7.4 目錄結(jié)構(gòu)管理
7.4.1 數(shù)據(jù)目錄管理
7.4.2 日志目錄管理
7.5 狀態(tài)機管理
7.5.1 Application狀態(tài)機
7.5.2 Container狀態(tài)機
7.5.3 LocalizedResource狀態(tài)機
7.6 Container生命周期剖析
7.6.1 Container資源本地化
7.6.2 Container運行
7.6.3 Container資源清理
7.7 資源隔離
7.7.1 Cgroups介紹
7.7.2 內(nèi)存資源隔離
7.7.3 CPU資源隔離
7.8 源代碼閱讀引導(dǎo)
7.9 小結(jié)
7.10 問題討論
第三部分 計算框架篇
第8章 離線計算框架MapReduce
8.1 概述
8.1.1 基本構(gòu)成
8.1.2 事件與事件處理器
8.2 MapReduce客戶端
8.2.1 ApplicationClientProtocol協(xié)議
8.2.2 MRClientProtocol協(xié)議
8.3 MRAppMaster工作流程
8.4 MR作業(yè)生命周期及相關(guān)狀態(tài)機
8.4.1 MR作業(yè)生命周期
8.4.2 Job狀態(tài)機
8.4.3 Task狀態(tài)機
8.4.4 TaskAttempt狀態(tài)機
8.5 資源申請與再分配
8.5.1 資源申請
8.5.2 資源再分配
8.6 Container啟動與釋放
8.7 推測執(zhí)行機制
8.7.1 算法介紹
8.7.2 推測執(zhí)行相關(guān)類
8.8 作業(yè)恢復(fù)
8.9 數(shù)據(jù)處理引擎
8.10 歷史作業(yè)管理器
8.11 MRv1與MRv2對比
8.11.1 MRv1 On YARN
8.11.2 MRv1與MRv2架構(gòu)比較
8.11.3 MRv1與MRv2編程接口兼容性
8.12 源代碼閱讀引導(dǎo)
8.13 小結(jié)
8.14 問題討論
第9章 DAG計算框架Tez
9.1 背景
9.2 Tez數(shù)據(jù)處理引擎
9.2.1 Tez編程模型
9.2.2 Tez數(shù)據(jù)處理引擎
9.3 DAG Master實現(xiàn)
9.3.1 DAG編程模型
9.3.2 MR到DAG轉(zhuǎn)換
9.3.3 DAGAppMaster
9.4 優(yōu)化機制
9.4.1 當(dāng)前YARN框架存在的問題
9.4.2 Tez引入的優(yōu)化技術(shù)
9.5 Tez應(yīng)用場景
9.6 與其他系統(tǒng)比較
9.7 小結(jié)
第10章 實時/內(nèi)存計算框架Storm/Spark
10.1 Hadoop MapReduce的短板
10.2 實時計算框架Storm 
10.2.1 Storm編程模型
10.2.2 Storm基本架構(gòu)
10.2.3 Storm On YARN
10.3 內(nèi)存計算框架Spark
10.3.1 Spark編程模型
10.3.2 Spark基本架構(gòu)
10.3.3 Spark On YARN
10.3.4 Spark/Storm On YARN比較
10.4 小結(jié)
第四部分 高級篇
第11章 Facebook Corona剖析
11.1 概述
11.1.1 Corona的基本架構(gòu)
11.1.2 Corona的RPC協(xié)議與序列化框架
11.2 Corona設(shè)計特點
11.2.1 推式網(wǎng)絡(luò)通信模型
11.2.2 基于Hadoop 0.20版本
11.2.3 使用Thrift
11.2.4 深度集成Fair Scheduler
11.3 工作流程介紹
11.3.1 作業(yè)提交
11.3.2 資源申請與任務(wù)啟動
11.4 主要模塊介紹
11.4.1 ClusterManager
11.4.2 CoronaJobTracker
11.4.3 CoronaTaskTracker
11.5 小結(jié)
第12章 Apache Mesos剖析
12.1 概述
12.2 底層網(wǎng)絡(luò)通信庫
12.2.1 libprocess基本架構(gòu)
12.2.2 一個簡單示例
12.3 Mesos服務(wù)
12.3.1 SchedulerProcess
12.3.2 Mesos Master 
12.3.3 Mesos Slave 
12.3.4 ExecutorProcess
12.4 Mesos工作流程
12.4.1 框架注冊過程
12.4.2 Framework Executor注冊過程
12.4.3 資源分配到任務(wù)運行過程
12.4.4 任務(wù)啟動過程
12.4.5 任務(wù)狀態(tài)更新過程
12.5 Mesos資源分配策略
12.5.1 Mesos資源分配框架
12.5.2 Mesos資源分配算法
12.6 Mesos容錯機制
12.6.1 Mesos Master容錯
12.6.2 Mesos Slave容錯
12.7 Mesos應(yīng)用實例
12.7.1 Hadoop On Mesos
12.7.2 Storm On Mesos
12.8 Mesos與YARN對比
12.9 小結(jié)
第13章 YARN總結(jié)與發(fā)展趨勢
13.1 資源管理系統(tǒng)設(shè)計動機
13.2 資源管理系統(tǒng)架構(gòu)演化
13.2.1 集中式架構(gòu)
13.2.2 雙層調(diào)度架構(gòu)
13.2.3 共享狀態(tài)架構(gòu)
13.3 YARN發(fā)展趨勢 
13.3.1 YARN自身的完善
13.3.2 以YARN為核心的生態(tài)系統(tǒng)
13.3.3 YARN周邊工具的完善
13.4 小結(jié)
附錄A YARN安裝指南
附錄B YARN配置參數(shù)介紹
附錄C Hadoop Shell命令介紹
附錄D 參考資料

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號