失效链接处理 |
《Hadoop技术内q:深入解析YARN架构设计与实现原理》PDF 下蝲
转蝲自:https://download.csdn.net/download/qq_20064763/10767644
下蝲地址Q?/strong>
版权归出版社和原作者所有,链接已删除,误买正?/b>
?sh)子版仅供预览,支持正版Q喜Ƣ的误买正版书c:《Hadoop技术内q:深入解析YARN架构设计与实现原理?/a>
图书介:
本书?ldquo;Hadoop技术内q?rdquo;pd的第3本书Q前面两本分别对Common、HDFS和MapReduceq行了深入分析和讲解Q赢得了极好的口,Hadoop领域几乎人手一册,本书则对YARN展开了深入的探讨Q是首部关于YARN的专著。仍然由资深Hadoop技术专家董西成执笔Q根据最新的Hadoop2.0版本撰写Q权威社区ChinaHadoop鼎力推荐?/span> 本书从应用角度系l讲解了YARN的基本库和组件用法、应用程序设计方法、YARN上流行的各种计算框架QMapReduce、Tez、Storm、SparkQ,以及多个cYARN的开源资源管理系l(Corona和MesosQ;从源代码角度深入分析YARN的设计理念与基本架构、各个组件的实现原理Q以及各U计框架的实现l节?/span> 全书共四部分13章:W一部分Q第1~2章)主要介绍了如何获取、阅d调试Hadoop的源代码Q以及YARN的设计思想、基本架构和工作程Q第二部分(W?~7章)l合源代码详l剖析和讲解了YARN的第三方开源库、底层通信库、服务库、事件库的基本用和实现l节Q详l讲解了YARN的应用程序设计方法,深入讲解和分析了ResourceManager、资源调度器、NodeManager{组件的实现l节Q第三篇Q第8~10章)则对ȝ计算框架MapReduce、DAG计算框架Tez、实时计框架Storm和内存计框架Sparkq行了详l的讲解Q第四部分(W?1~13章)首先对FacebookCorona和ApacheMesosq行了深入讲解,然后对YARN的发展趋势进行了展望。附录部分收录了YARN安装指南、YARN配置参数以及HadoopShell命o{非常有用的资料?/span>
相关截图Q?br />
![]()
图书目录Q?/strong>
前 a W一部分 准备?/span> W?章 环境准备 2 1.1 准备学习环境 2 1.1.1 基础软g下蝲 2 1.1.2 如何准备Linux环境 3 1.2 获取Hadoop源代?5 1.3 搭徏Hadoop源代码阅ȝ?5 1.3.1 创徏Hadoop工程 5 1.3.2 Hadoop源代码阅L?8 1.4 Hadoop源代码组l结?10 1.5 Hadoop初体?12 1.5.1 搭徏Hadoop环境 12 1.5.2 Hadoop Shell介绍 15 1.6 ~译及调试Hadoop源代?16 1.6.1 ~译Hadoop源代?17 1.6.2 调试Hadoop源代?18 1.7 结 20 W?章 YARN设计理念与基本架?21 2.1 YARN产生背景 21 2.1.1 MRv1的局限?21 2.1.2 轻量U弹性计^?22 2.2 Hadoop基础知识 23 2.2.1 术语解释 23 2.2.2 Hadoop版本变迁 25 2.3 YARN基本设计思想 29 2.3.1 基本框架Ҏ(gu) 29 2.3.2 ~程模型Ҏ(gu) 30 2.4 YARN 基本架构 31 2.4.1 YARN基本l成l构 32 2.4.2 YARN通信协议 34 2.5 YARN工作程 35 2.6 多角度理解YARN 36 2.6.1 q行~程 36 2.6.2 资源理pȝ 36 2.6.3 云计?37 2.7 本书涉及内容 38 2.8 结 38 W二部分 YARN核心设计?/span> W?章 YARN基础?40 3.1 概述 40 3.2 W三方开源库 41 3.2.1 Protocol Buffers 41 3.2.2 Apache Avro 43 3.3 底层通信?46 3.3.1 RPC通信模型 46 3.3.2 Hadoop RPC的特Ҏ(gu)q?48 3.3.3 RPCM架构 48 3.3.4 Hadoop RPC使用Ҏ(gu) 49 3.3.5 Hadoop RPCc详?51 3.3.6 Hadoop RPC参数调优 57 3.3.7 YARN RPC实现 57 3.3.8 YARN RPC应用实例 61 3.4 服务库与事g?65 3.4.1 服务?66 3.4.2 事g?66 3.4.3 YARN服务库和事g库的使用Ҏ(gu) 68 3.4.4 事g驱动带来的变?70 3.5 状态机?72 3.5.1 YARN状态{换方?72 3.5.2 状态机c?73 3.5.3 状态机的用方?73 3.5.4 状态机可视?76 3.6 源代码阅d?76 3.7 结 77 3.8 问题讨论 77 W?章 YARN应用E序设计Ҏ(gu) 78 4.1 概述 78 4.2 客户端设?79 4.2.1 客户端编写流E?80 4.2.2 客户端编E库 84 4.3 ApplicationMaster设计 84 4.3.1 ApplicationMaster~写程 84 4.3.2 ApplicationMaster~程?92 4.4 YARN 应用E序实例 95 4.4.1 DistributedShell 95 4.4.2 Unmanaged AM 99 4.5 源代码阅d?100 4.6 结 100 4.7 问题讨论 100 W?章 ResourceManager剖析 102 5.1 概述 102 5.1.1 ResourceManager基本职能 102 5.1.2 ResourceManager内部架构 103 5.1.3 ResourceManager事g与事件处理器 106 5.2 用户交互模块 108 5.2.1 ClientRMService 108 5.2.2 AdminService 109 5.3 ApplicationMaster理 109 5.4 NodeManager理 112 5.5 Application理 113 5.6 状态机理 114 5.6.1 RMApp状态机 115 5.6.2 RMAppAttempt状态机 119 5.6.3 RMContainer状态机 123 5.6.4 RMNode状态机 127 5.7 几个常见行ؓ分析 129 5.7.1 启动ApplicationMaster 129 5.7.2 甌与分配Container 132 5.7.3 杀死Application 134 5.7.4 Container时 135 5.7.5 ApplicationMaster时 138 5.7.6 NodeManager时 138 5.8 安全理 139 5.8.1 术语介绍 139 5.8.2 Hadoop认证机制 139 5.8.3 Hadoop授权机制 142 5.9 定w机制 144 5.9.1 Hadoop HA基本框架 145 5.9.2 YARN HA实现 148 5.10 源代码阅d?149 5.11 结 151 5.12 问题讨论 152 W?章 资源调度?153 6.1 资源调度器背?153 6.2 HOD调度?154 6.2.1 Torque资源理?154 6.2.2 HOD作业调度 155 6.3 YARN资源调度器的基本架构 157 6.3.1 基本架构 157 6.3.2 资源表示模型 160 6.3.3 资源调度模型 161 6.3.4 资源抢占模型 164 6.4 YARN层队列理机制 169 6.4.1 层队列理机制 169 6.4.2 队列命名规则 171 6.5 Capacity Scheduler 172 6.5.1 Capacity Scheduler的功?172 6.5.2 Capacity Scheduler实现 176 6.6 Fair Scheduler 179 6.6.1 Fair Scheduler功能介绍 180 6.6.2 Fair Scheduler实现 182 6.6.3 Fair Scheduler与Capacity SchedulerҎ(gu) 183 6.7 其他资源调度器介l?184 6.8 源代码阅d?185 6.9 结 186 6.10 问题讨论 187 W?章 NodeManager剖析 188 7.1 概述 188 7.1.1 NodeManager基本职能 188 7.1.2 NodeManager内部架构 190 7.1.3 NodeManager事g与事件处理器 193 7.2 节点健康状况?194 7.2.1 自定义Shell脚本 194 7.2.2 磁盘损坏数?196 7.3 分布式缓存机?196 7.3.1 资源可见性与分类 198 7.3.2 分布式缓存实?200 7.4 目录l构理 203 7.4.1 数据目录理 203 7.4.2 日志目录理 203 7.5 状态机理 206 7.5.1 Application状态机 207 7.5.2 Container状态机 210 7.5.3 LocalizedResource状态机 213 7.6 Container生命周期剖析 214 7.6.1 Container资源本地?214 7.6.2 Containerq行 218 7.6.3 Container资源清理 222 7.7 资源隔离 224 7.7.1 Cgroups介绍 224 7.7.2 内存资源隔离 228 7.7.3 CPU资源隔离 230 7.8 源代码阅d?234 7.9 结 235 7.10 问题讨论 236 W三部分 计算框架?/span> W?章 ȝ计算框架MapReduce 238 8.1 概述 238 8.1.1 基本构成 238 8.1.2 事g与事件处理器 240 8.2 MapReduce客户?241 8.2.1 ApplicationClientProtocol协议 242 8.2.2 MRClientProtocol协议 243 8.3 MRAppMaster工作程 243 8.4 MR作业生命周期及相关状态机 246 8.4.1 MR作业生命周期 246 8.4.2 Job状态机 249 8.4.3 Task状态机 253 8.4.4 TaskAttempt状态机 255 8.5 资源甌与再分配 259 8.5.1 资源甌 259 8.5.2 资源再分?262 8.6 Container启动与释?263 8.7 推测执行机制 264 8.7.1 法介绍 265 8.7.2 推测执行相关c?266 8.8 作业恢复 267 8.9 数据处理引擎 269 8.10 历史作业理?271 8.11 MRv1与MRv2Ҏ(gu) 273 8.11.1 MRv1 On YARN 273 8.11.2 MRv1与MRv2架构比较 274 8.11.3 MRv1与MRv2~程接口兼容?274 8.12 源代码阅d?275 8.13 结 277 8.14 问题讨论 277 W?章 DAG计算框架Tez 278 9.1 背景 278 9.2 Tez数据处理引擎 281 9.2.1 Tez~程模型 281 9.2.2 Tez数据处理引擎 282 9.3 DAG Master实现 284 9.3.1 DAG~程模型 284 9.3.2 MR到DAG转换 286 9.3.3 DAGAppMaster 288 9.4 优化机制 291 9.4.1 当前YARN框架存在的问?291 9.4.2 Tez引入的优化技?292 9.5 Tez应用场景 292 9.6 与其他系l比?294 9.7 结 295 W?0章 实时/内存计算框架Storm/Spark 296 10.1 Hadoop MapReduce的短?296 10.2 实时计算框架Storm 296 10.2.1 Storm~程模型 297 10.2.2 Storm基本架构 302 10.2.3 Storm On YARN 304 10.3 内存计算框架Spark 307 10.3.1 Spark~程模型 308 10.3.2 Spark基本架构 312 10.3.3 Spark On YARN 316 10.3.4 Spark/Storm On YARN比较 317 10.4 结 317 W四部分 高?/span> W?1章 Facebook Corona剖析 320 11.1 概述 320 11.1.1 Corona的基本架?320 11.1.2 Corona的RPC协议与序列化框架 322 11.2 Corona设计特点 323 11.2.1 推式|络通信模型 323 11.2.2 ZHadoop 0.20版本 324 11.2.3 使用Thrift 324 11.2.4 深度集成Fair Scheduler 324 11.3 工作程介绍 324 11.3.1 作业提交 325 11.3.2 资源甌与Q务启?326 11.4 主要模块介绍 327 11.4.1 ClusterManager 327 11.4.2 CoronaJobTracker 330 11.4.3 CoronaTaskTracker 333 11.5 结 335 W?2章 Apache Mesos剖析 336 12.1 概述 336 12.2 底层|络通信?337 12.2.1 libprocess基本架构 338 12.2.2 一个简单示?338 12.3 Mesos服务 340 12.3.1 SchedulerProcess 341 12.3.2 Mesos Master 342 12.3.3 Mesos Slave 343 12.3.4 ExecutorProcess 343 12.4 Mesos工作程 344 12.4.1 框架注册q程 344 12.4.2 Framework Executor注册q程 345 12.4.3 资源分配CQ务运行过E?345 12.4.4 d启动q程 347 12.4.5 d状态更新过E?347 12.5 Mesos资源分配{略 348 12.5.1 Mesos资源分配框架 349 12.5.2 Mesos资源分配法 349 12.6 Mesos定w机制 350 12.6.1 Mesos Master定w 350 12.6.2 Mesos Slave定w 351 12.7 Mesos应用实例 352 12.7.1 Hadoop On Mesos 352 12.7.2 Storm On Mesos 353 12.8 Mesos与YARNҎ(gu) 354 12.9 结 355 W?3章 YARNȝ与发展趋?356 13.1 资源理pȝ设计动机 356 13.2 资源理pȝ架构演化 357 13.2.1 集中式架?357 13.2.2 双层调度架构 358 13.2.3 ׃n状态架?358 13.3 YARN发展势 359 13.3.1 YARN自n的完?359 13.3.2 以YARN为核心的生态系l?361 13.3.3 YARN周边工具的完?363 13.4 结 363 附录A YARN安装指南 364 附录B YARN配置参数介绍 367 附录C Hadoop Shell命o介绍 371 附录D 参考资?374 |