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

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

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

定 價(jià):¥69.00

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

購(gòu)買(mǎi)這本書(shū)可以去


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

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

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

圖書(shū)目錄

前 言
第一部分 準(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初體驗(yàn)
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è)計(jì)理念與基本架構(gòu)
2.1 YARN產(chǎn)生背景
2.1.1 MRv1的局限性
2.1.2 輕量級(jí)彈性計(jì)算平臺(tái)
2.2 Hadoop基礎(chǔ)知識(shí)
2.2.1 術(shù)語(yǔ)解釋
2.2.2 Hadoop版本變遷
2.3 YARN基本設(shè)計(jì)思想
2.3.1 基本框架對(duì)比
2.3.2 編程模型對(duì)比
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 云計(jì)算
2.7 本書(shū)涉及內(nèi)容
2.8 小結(jié)
第二部分 YARN核心設(shè)計(jì)篇
第3章 YARN基礎(chǔ)庫(kù)
3.1 概述
3.2 第三方開(kāi)源庫(kù)
3.2.1 Protocol Buffers
3.2.2 Apache Avro
3.3 底層通信庫(kù)
3.3.1 RPC通信模型
3.3.2 Hadoop RPC的特點(diǎn)概述
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實(shí)現(xiàn)
3.3.8 YARN RPC應(yīng)用實(shí)例
3.4 服務(wù)庫(kù)與事件庫(kù)
3.4.1 服務(wù)庫(kù)
3.4.2 事件庫(kù)
3.4.3 YARN服務(wù)庫(kù)和事件庫(kù)的使用方法
3.4.4 事件驅(qū)動(dòng)帶來(lái)的變化
3.5 狀態(tài)機(jī)庫(kù)
3.5.1 YARN狀態(tài)轉(zhuǎn)換方式
3.5.2 狀態(tài)機(jī)類
3.5.3 狀態(tài)機(jī)的使用方法
3.5.4 狀態(tài)機(jī)可視化
3.6 源代碼閱讀引導(dǎo)
3.7 小結(jié)
3.8 問(wèn)題討論
第4章 YARN應(yīng)用程序設(shè)計(jì)方法
4.1 概述
4.2 客戶端設(shè)計(jì)
4.2.1 客戶端編寫(xiě)流程
4.2.2 客戶端編程庫(kù)
4.3 ApplicationMaster設(shè)計(jì)
4.3.1 ApplicationMaster編寫(xiě)流程
4.3.2 ApplicationMaster編程庫(kù)
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 問(wèn)題討論
第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)機(jī)管理
5.6.1 RMApp狀態(tài)機(jī)
5.6.2 RMAppAttempt狀態(tài)機(jī)
5.6.3 RMContainer狀態(tài)機(jī)
5.6.4 RMNode狀態(tài)機(jī)
5.7 幾個(gè)常見(jiàn)行為分析
5.7.1 啟動(dòng)ApplicationMaster 
5.7.2 申請(qǐng)與分配Container
5.7.3 殺死Application
5.7.4 Container超時(shí)
5.7.5 ApplicationMaster超時(shí)
5.7.6 NodeManager超時(shí)
5.8 安全管理
5.8.1 術(shù)語(yǔ)介紹
5.8.2 Hadoop認(rèn)證機(jī)制
5.8.3 Hadoop授權(quán)機(jī)制
5.9 容錯(cuò)機(jī)制
5.9.1 Hadoop HA基本框架
5.9.2 YARN HA實(shí)現(xiàn) 
5.10 源代碼閱讀引導(dǎo)
5.11 小結(jié)
5.12 問(wèn)題討論
第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層級(jí)隊(duì)列管理機(jī)制
6.4.1 層級(jí)隊(duì)列管理機(jī)制
6.4.2 隊(duì)列命名規(guī)則
6.5 Capacity Scheduler
6.5.1 Capacity Scheduler的功能
6.5.2 Capacity Scheduler實(shí)現(xiàn)
6.6 Fair Scheduler
6.6.1 Fair Scheduler功能介紹
6.6.2 Fair Scheduler實(shí)現(xiàn)
6.6.3 Fair Scheduler與Capacity Scheduler對(duì)比
6.7 其他資源調(diào)度器介紹
6.8 源代碼閱讀引導(dǎo)
6.9 小結(jié)
6.10 問(wèn)題討論
第7章 NodeManager剖析
7.1 概述
7.1.1 NodeManager基本職能
7.1.2 NodeManager內(nèi)部架構(gòu)
7.1.3 NodeManager事件與事件處理器
7.2 節(jié)點(diǎn)健康狀況檢測(cè)
7.2.1 自定義Shell腳本
7.2.2 檢測(cè)磁盤(pán)損壞數(shù)目
7.3 分布式緩存機(jī)制
7.3.1 資源可見(jiàn)性與分類
7.3.2 分布式緩存實(shí)現(xiàn)
7.4 目錄結(jié)構(gòu)管理
7.4.1 數(shù)據(jù)目錄管理
7.4.2 日志目錄管理
7.5 狀態(tài)機(jī)管理
7.5.1 Application狀態(tài)機(jī)
7.5.2 Container狀態(tài)機(jī)
7.5.3 LocalizedResource狀態(tài)機(jī)
7.6 Container生命周期剖析
7.6.1 Container資源本地化
7.6.2 Container運(yùn)行
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 問(wèn)題討論
第三部分 計(jì)算框架篇
第8章 離線計(jì)算框架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)機(jī)
8.4.1 MR作業(yè)生命周期
8.4.2 Job狀態(tài)機(jī)
8.4.3 Task狀態(tài)機(jī)
8.4.4 TaskAttempt狀態(tài)機(jī)
8.5 資源申請(qǐng)與再分配
8.5.1 資源申請(qǐng)
8.5.2 資源再分配
8.6 Container啟動(dòng)與釋放
8.7 推測(cè)執(zhí)行機(jī)制
8.7.1 算法介紹
8.7.2 推測(cè)執(zhí)行相關(guān)類
8.8 作業(yè)恢復(fù)
8.9 數(shù)據(jù)處理引擎
8.10 歷史作業(yè)管理器
8.11 MRv1與MRv2對(duì)比
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 問(wèn)題討論
第9章 DAG計(jì)算框架Tez
9.1 背景
9.2 Tez數(shù)據(jù)處理引擎
9.2.1 Tez編程模型
9.2.2 Tez數(shù)據(jù)處理引擎
9.3 DAG Master實(shí)現(xiàn)
9.3.1 DAG編程模型
9.3.2 MR到DAG轉(zhuǎn)換
9.3.3 DAGAppMaster
9.4 優(yōu)化機(jī)制
9.4.1 當(dāng)前YARN框架存在的問(wèn)題
9.4.2 Tez引入的優(yōu)化技術(shù)
9.5 Tez應(yīng)用場(chǎng)景
9.6 與其他系統(tǒng)比較
9.7 小結(jié)
第10章 實(shí)時(shí)/內(nèi)存計(jì)算框架Storm/Spark
10.1 Hadoop MapReduce的短板
10.2 實(shí)時(shí)計(jì)算框架Storm 
10.2.1 Storm編程模型
10.2.2 Storm基本架構(gòu)
10.2.3 Storm On YARN
10.3 內(nèi)存計(jì)算框架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é)
第四部分 高級(jí)篇
第11章 Facebook Corona剖析
11.1 概述
11.1.1 Corona的基本架構(gòu)
11.1.2 Corona的RPC協(xié)議與序列化框架
11.2 Corona設(shè)計(jì)特點(diǎn)
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 資源申請(qǐng)與任務(wù)啟動(dòng)
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ò)通信庫(kù)
12.2.1 libprocess基本架構(gòu)
12.2.2 一個(gè)簡(jiǎn)單示例
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 框架注冊(cè)過(guò)程
12.4.2 Framework Executor注冊(cè)過(guò)程
12.4.3 資源分配到任務(wù)運(yùn)行過(guò)程
12.4.4 任務(wù)啟動(dòng)過(guò)程
12.4.5 任務(wù)狀態(tài)更新過(guò)程
12.5 Mesos資源分配策略
12.5.1 Mesos資源分配框架
12.5.2 Mesos資源分配算法
12.6 Mesos容錯(cuò)機(jī)制
12.6.1 Mesos Master容錯(cuò)
12.6.2 Mesos Slave容錯(cuò)
12.7 Mesos應(yīng)用實(shí)例
12.7.1 Hadoop On Mesos
12.7.2 Storm On Mesos
12.8 Mesos與YARN對(duì)比
12.9 小結(jié)
第13章 YARN總結(jié)與發(fā)展趨勢(shì)
13.1 資源管理系統(tǒng)設(shè)計(jì)動(dòng)機(jī)
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ā)展趨勢(shì) 
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 ? 讀書(shū)網(wǎng) www.stefanvlieger.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)