阅读 286

Hadoop技术内幕:深入解析YARN架构设计与实现原理 PDF 超清版

给大家带来的一篇关于Hadoop相关的电子书资源,介绍了关于Hadoop、技术内幕、YARN、架构设计、实现原理方面的内容,本书是由机械工业出版社出版,格式为PDF,资源大小120.74MB,董西成编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.3分

资源详情相关推荐
Hadoop技术内幕:深入解析YARN架构设计与实现原理
  • 出版社:机械工业出版社

  • 作者:董西成

  • 大小:120.74MB

  • 类别:Hadoop

  • 热度:896

  • Hadoop基础教程

  • Hadoop权威指南

  • Hadoop权威指南

  • Hadoop大数据平台构建与应用

  • Hadoop技术详解

《Hadoop技术内幕:深入解析YARN架构设计与实现原理》是“Hadoop技术内幕”系列的第3本书,前面两本分别对Common、HDFS和MapReduce进行了深入分析和讲解,赢得了极好的口碑,Hadoop领域几乎人手一册,本书则对YARN展开了深入的探讨,是首部关于YARN的专著。仍然由资深Hadoop技术专家董西成执笔,根据最新的Hadoop 2.0版本撰写,权威社区ChinaHadoop鼎力推荐。

《Hadoop技术内幕:深入解析YARN架构设计与实现原理》从应用角度系统讲解了YARN的基本库和组件用法、应用程序设计方法、YARN上流行的各种计算框架(MapReduce、Tez、Storm、Spark),以及多个类YARN的开源资源管理系统(Corona和Mesos);从源代码角度深入分析YARN的设计理念与基本架构、各个组件的实现原理,以及各种计算框架的实现细节。


《Hadoop技术内幕:深入解析YARN架构设计与实现原理》共四部分13章:第一部分(第1~2章)主要介绍了如何获取、阅读和调试Hadoop的源代码,以及YARN的设计思想、基本架构和工作流程;第二部分(第3~7章)结合源代码详细剖析和讲解了YARN的第三方开源库、底层通信库、服务库、事件库的基本使用和实现细节,详细讲解了YARN的应用程序设计方法,深入讲解和分析了ResourceManager、资源调度器、NodeManager等组件的实现细节;第三篇(第8~10章)则对离线计算框架MapReduce、DAG计算框架Tez、实时计算框架Storm和内存计算框架Spark进行了详细的讲解;第四部分(第11~13章)首先对Facebook Corona和Apache Mesos进行了深入讲解,然后对YARN的发展趋势进行了展望。附录部分收录了YARN安装指南、YARN配置参数以及Hadoop Shell命令等非常有用的资料。

目录

  • 前言

  • 第一部分准备篇

  • 第1章环境准备

  • 1.1准备学习环境

  • 1.1.1基础软件下载

  • 1.1.2如何准备Linux环境

  • 1.2获取Hadoop源代码

  • 1.3搭建Hadoop源代码阅读环境

  • 1.3.1创建Hadoop工程

  • 1.3.2Hadoop源代码阅读技巧

  • 1.4Hadoop源代码组织结构

  • 1.5Hadoop初体验

  • 1.5.1搭建Hadoop环境

  • 1.5.2Hadoop Shell介绍

  • 1.6编译及调试Hadoop源代码

  • 1.6.1编译Hadoop源代码

  • 1.6.2调试Hadoop源代码

  • 1.7小结

  • 第2章YARN设计理念与基本架构

  • 2.1YARN产生背景

  • 2.1.1MRv1的局限性

  • 2.1.2轻量级弹性计算平台

  • 2.2Hadoop基础知识

  • 2.2.1术语解释

  • 2.2.2Hadoop版本变迁

  • 2.3YARN基本设计思想

  • 2.3.1基本框架对比

  • 2.3.2编程模型对比

  • 2.4YARN 基本架构

  • 2.4.1YARN基本组成结构

  • 2.4.2YARN通信协议

  • 2.5YARN工作流程

  • 2.6多角度理解YARN

  • 2.6.1并行编程

  • 2.6.2资源管理系统

  • 2.6.3云计算

  • 2.7本书涉及内容

  • 2.8小结

  • 第二部分YARN核心设计篇

  • 第3章YARN基础库

  • 3.1概述

  • 3.2第三方开源库

  • 3.2.1Protocol Buffers

  • 3.2.2Apache Avro

  • 3.3底层通信库

  • 3.3.1RPC通信模型

  • 3.3.2Hadoop RPC的特点概述

  • 3.3.3RPC总体架构

  • 3.3.4Hadoop RPC使用方法

  • 3.3.5Hadoop RPC类详解

  • 3.3.6Hadoop RPC参数调优

  • 3.3.7YARN RPC实现

  • 3.3.8YARN RPC应用实例

  • 3.4服务库与事件库

  • 3.4.1服务库

  • 3.4.2事件库

  • 3.4.3YARN服务库和事件库的使用方法

  • 3.4.4事件驱动带来的变化

  • 3.5状态机库

  • 3.5.1YARN状态转换方式

  • 3.5.2状态机类

  • 3.5.3状态机的使用方法

  • 3.5.4状态机可视化

  • 3.6源代码阅读引导

  • 3.7小结

  • 3.8问题讨论

  • 第4章YARN应用程序设计方法

  • 4.1概述

  • 4.2客户端设计

  • 4.2.1客户端编写流程

  • 4.2.2客户端编程库

  • 4.3ApplicationMaster设计

  • 4.3.1ApplicationMaster编写流程

  • 4.3.2ApplicationMaster编程库

  • 4.4YARN 应用程序实例

  • 4.4.1DistributedShell

  • 4.4.2Unmanaged AM

  • 4.5源代码阅读引导

  • 4.6小结

  • 4.7问题讨论

  • 第5章ResourceManager剖析

  • 5.1概述

  • 5.1.1ResourceManager基本职能

  • 5.1.2ResourceManager内部架构

  • 5.1.3ResourceManager事件与事件处理器

  • 5.2用户交互模块

  • 5.2.1ClientRMService

  • 5.2.2AdminService

  • 5.3ApplicationMaster管理

  • 5.4NodeManager管理

  • 5.5Application管理

  • 5.6状态机管理

  • 5.6.1RMApp状态机

  • 5.6.2RMAppAttempt状态机

  • 5.6.3RMContainer状态机

  • 5.6.4RMNode状态机

  • 5.7几个常见行为分析

  • 5.7.1启动ApplicationMaster

  • 5.7.2申请与分配Container

  • 5.7.3杀死Application

  • 5.7.4Container超时

  • 5.7.5ApplicationMaster超时

  • 5.7.6NodeManager超时

  • 5.8安全管理

  • 5.8.1术语介绍

  • 5.8.2Hadoop认证机制

  • 5.8.3Hadoop授权机制

  • 5.9容错机制

  • 5.9.1Hadoop HA基本框架

  • 5.9.2YARN HA实现

  • 5.10源代码阅读引导

  • 5.11小结

  • 5.12问题讨论

  • 第6章资源调度器

  • 6.1资源调度器背景

  • 6.2HOD调度器

  • 6.2.1Torque资源管理器

  • 6.2.2HOD作业调度

  • 6.3YARN资源调度器的基本架构

  • 6.3.1基本架构

  • 6.3.2资源表示模型

  • 6.3.3资源调度模型

  • 6.3.4资源抢占模型

  • 6.4YARN层级队列管理机制

  • 6.4.1层级队列管理机制

  • 6.4.2队列命名规则

  • 6.5Capacity Scheduler

  • 6.5.1Capacity Scheduler的功能

  • 6.5.2Capacity Scheduler实现

  • 6.6Fair Scheduler

  • 6.6.1Fair Scheduler功能介绍

  • 6.6.2Fair Scheduler实现

  • 6.6.3Fair Scheduler与Capacity Scheduler对比

  • 6.7其他资源调度器介绍

  • 6.8源代码阅读引导

  • 6.9小结

  • 6.10问题讨论

  • 第7章NodeManager剖析

  • 7.1概述

  • 7.1.1NodeManager基本职能

  • 7.1.2NodeManager内部架构

  • 7.1.3NodeManager事件与事件处理器

  • 7.2节点健康状况检测

  • 7.2.1自定义Shell脚本

  • 7.2.2检测磁盘损坏数目

  • 7.3分布式缓存机制

  • 7.3.1资源可见性与分类

  • 7.3.2分布式缓存实现

  • 7.4目录结构管理

  • 7.4.1数据目录管理

  • 7.4.2日志目录管理

  • 7.5状态机管理

  • 7.5.1Application状态机

  • 7.5.2Container状态机

  • 7.5.3LocalizedResource状态机

  • 7.6Container生命周期剖析

  • 7.6.1Container资源本地化

  • 7.6.2Container运行

  • 7.6.3Container资源清理

  • 7.7资源隔离

  • 7.7.1Cgroups介绍

  • 7.7.2内存资源隔离

  • 7.7.3CPU资源隔离

  • 7.8源代码阅读引导

  • 7.9小结

  • 7.10问题讨论

  • 第三部分计算框架篇

  • 第8章离线计算框架MapReduce

  • 8.1概述

  • 8.1.1基本构成

  • 8.1.2事件与事件处理器

  • 8.2MapReduce客户端

  • 8.2.1ApplicationClientProtocol协议

  • 8.2.2MRClientProtocol协议

  • 8.3MRAppMaster工作流程

  • 8.4MR作业生命周期及相关状态机

  • 8.4.1MR作业生命周期

  • 8.4.2Job状态机

  • 8.4.3Task状态机

  • 8.4.4TaskAttempt状态机

  • 8.5资源申请与再分配

  • 8.5.1资源申请

  • 8.5.2资源再分配

  • 8.6Container启动与释放

  • 8.7推测执行机制

  • 8.7.1算法介绍

  • 8.7.2推测执行相关类

  • 8.8作业恢复

  • 8.9数据处理引擎

  • 8.10历史作业管理器

  • 8.11MRv1与MRv2对比

  • 8.11.1MRv1 On YARN

  • 8.11.2MRv1与MRv2架构比较

  • 8.11.3MRv1与MRv2编程接口兼容性

  • 8.12源代码阅读引导

  • 8.13小结

  • 8.14问题讨论

  • 第9章DAG计算框架Tez

  • 9.1背景

  • 9.2Tez数据处理引擎

  • 9.2.1Tez编程模型

  • 9.2.2Tez数据处理引擎

  • 9.3DAG Master实现

  • 9.3.1DAG编程模型

  • 9.3.2MR到DAG转换

  • 9.3.3DAGAppMaster

  • 9.4优化机制

  • 9.4.1当前YARN框架存在的问题

  • 9.4.2Tez引入的优化技术

  • 9.5Tez应用场景

  • 9.6与其他系统比较

  • 9.7小结

  • 第10章实时/内存计算框架Storm/Spark

  • 10.1Hadoop MapReduce的短板

  • 10.2实时计算框架Storm

  • 10.2.1Storm编程模型

  • 10.2.2Storm基本架构

  • 10.2.3Storm On YARN

  • 10.3内存计算框架Spark

  • 10.3.1Spark编程模型

  • 10.3.2Spark基本架构

  • 10.3.3Spark On YARN

  • 10.3.4Spark/Storm On YARN比较

  • 10.4小结

  • 第四部分高级篇

  • 第11章Facebook Corona剖析

  • 11.1概述

  • 11.1.1Corona的基本架构

  • 11.1.2Corona的RPC协议与序列化框架

  • 11.2Corona设计特点

  • 11.2.1推式网络通信模型

  • 11.2.2基于Hadoop 0.20版本

  • 11.2.3使用Thrift

  • 11.2.4深度集成Fair Scheduler

  • 11.3工作流程介绍

  • 11.3.1作业提交

  • 11.3.2资源申请与任务启动

  • 11.4主要模块介绍

  • 11.4.1ClusterManager

  • 11.4.2CoronaJobTracker

  • 11.4.3CoronaTaskTracker

  • 11.5小结

  • 第12章Apache Mesos剖析

  • 12.1概述

  • 12.2底层网络通信库

  • 12.2.1libprocess基本架构

  • 12.2.2一个简单示例

  • 12.3Mesos服务

  • 12.3.1SchedulerProcess

  • 12.3.2Mesos Master

  • 12.3.3Mesos Slave

  • 12.3.4ExecutorProcess

  • 12.4Mesos工作流程

  • 12.4.1框架注册过程

  • 12.4.2Framework Executor注册过程

  • 12.4.3资源分配到任务运行过程

  • 12.4.4任务启动过程

  • 12.4.5任务状态更新过程

  • 12.5Mesos资源分配策略

  • 12.5.1Mesos资源分配框架

  • 12.5.2Mesos资源分配算法

  • 12.6Mesos容错机制

  • 12.6.1Mesos Master容错

  • 12.6.2Mesos Slave容错

  • 12.7Mesos应用实例

  • 12.7.1Hadoop On Mesos

  • 12.7.2Storm On Mesos

  • 12.8Mesos与YARN对比

  • 12.9小结

  • 第13章YARN总结与发展趋势

  • 13.1资源管理系统设计动机

  • 13.2资源管理系统架构演化

  • 13.2.1集中式架构

  • 13.2.2双层调度架构

  • 13.2.3共享状态架构

  • 13.3YARN发展趋势

  • 13.3.1YARN自身的完善

  • 13.3.2以YARN为核心的生态系统

  • 13.3.3YARN周边工具的完善

  • 13.4小结

  • 附录AYARN安装指南

  • 附录BYARN配置参数介绍

  • 附录CHadoop Shell命令介绍

  • 附录D参考资料


文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐