内容简介
《Hadoop2.0-YARN核心技术实践》基于长期的教学实践以及同国内外知名公司的交流合作编写完成,系统介绍了Hadoop2.0-YARN的基本概念与运行模式。《Hadoop 2.0-YARN核心技术实践》共分为7章。内容涵盖Hadoop2.0的架构、重要组件、主要计算模式、资源调度等重要问题。第1章回顾了YARN的起源,并与Hadoop1.0进行了对比分析。第2章介绍了YARN的基本框架,对YARN中重要的几个组件,如资源管理、节点管理、应用程序管理等做了说明。第3章通过Hadoop2.0-YARN的安装、编译,以及简单的MapReduce调试示例,让读者能够迅速掌握YARN的基本操作,使得读者有一个初步的实践体验。第4章对YARN的通信原理和过程进行讨论,通过ProtocolBuffer、YARNRPC的实例分析让读者理解YARN的通信协调过程。之后转入对YARN状态机进行深入分析,详细介绍了YARN中4类状态机的转换过程,同时提供了YARN状态机监控软件设计案例。第5章对基于YARN的几种计算模式(MapReduce、Storm、Spark)进行了讨论,每一种模式都提供了相应的安装步骤、案例分析。第6章叙述了YARN调度器,详细分析了YARN资源调度负载模拟器——SLS和Google第三代调度器omega的基本原理,并分别给出了两种调度器的运行实例。第7章通过Tez和显示工作流引擎设计,使得读者对YARN工作流运行情况有一定了解。
《Hadoop 2.0-YARN核心技术实践》的特点是理论与实践结合,通过示例分析的形式降低了读者的学习难度,避免了理论学习的枯燥性,《Hadoop 2.0-YARN核心技术实践》的部分案例直接选自BAT中的工程实例,这使得《Hadoop 2.0-YARN核心技术实践》更具有实战性。广大本科和研究生同学,可以参照《Hadoop 2.0-YARN核心技术实践》实例,为他们进行分布式、云计算平台学习,专业课项目设计或毕业论文提供参考。《Hadoop 2.0-YARN核心技术实践》也可作为业界研发人员的工程实践参考。目录
第1章YARN的前世今生
1.1Hadoop基本情况回顾
1.2为什么我们需要YARN
1.3YARN和Hadoop1.0对比分析
1.3.1体系结构对比
1.3.2运算框架对比
1.4Hadoop生态系统
1.5小结
第2章YARN基本框架
2.1YARN基本框架
2.2ResourceManager
2.3NodeManager
2.4ApplicationMaster
2.5YARN中应用程序的运行过程
第3章YARN编程初步
3.1YARN安装与配置
3.1.1环境准备
3.1.2伪分布式安装
3.1.3完全分布式安装
3.2源码阅读及编译
3.2.1Maven的介绍及安装
3.2.2编译前准备
3.2.3YARN源码阅读环境配置
3.2.4YARN源码编译
3.3MapReduce实例
3.3.1WordCount
3.3.2Deduplication
3.3.3Sort
3.4HBase编程初步
3.4.1HBase介绍
3.4.2HBase安装与配置
3.4.3HBase开发环境配置及实例
第4章YARN核心组件分析
4.1通信组件ProtocolBuffer
4.1.1什么是ProtocolBuffer
4.1.2YARN中的ProtocolBuffer
4.1.3如何编写ProtocolBuffer
4.1.4ProtocolBuffer代码分析
4.2Hadoop1.0RPC和YARNRPC
4.2.1什么是RPC
4.2.2RPC通信模型
4.2.3Hadoop1.0RPC的实现过程
4.2.4Hadoop1.0RPC的应用
4.2.5YARNRPC
4.2.6YARNRPC通信案例解析
4.2.7YARNRPC源代码导读
4.3YARN状态机分析
4.3.1RMApp状态机
4.3.2RMAppAttempt状态机
4.3.3RMNode状态机
4.3.4RMContainer状态机
4.3.5应用程序在RM中的完整运行流程分析
4.3.6状态机源代码导读
4.3.7YARN状态机监控软件设计
4.4HDFSFederation
4.4.1HDFS的层次
4.4.2当前的HDFS架构
4.4.3HDFSFederation
4.4.4FederationHDFS与当前HDFS的比较
第5章YARN中几种计算模型
5.1基于YARN的MapReduce进阶
5.1.1ReduceSideJoin
5.1.2MapSideJoin
5.1.3并行聚类Kmeans算法设计与实现
5.2StormonYARN
5.2.1Storm基本原理
5.2.2StormonYARN
5.2.3Storm单机模式安装
5.2.4StormonYARN安装
5.2.5基于StormonYARN的实时出租车管理系统
5.3SparkonYARN
5.3.1Spark简介
5.3.2Spark基本原理
5.3.3Spark的部署及开发环境搭建
5.3.4SparkMLlib介绍
5.3.5Spark的优化配置
5.3.6Spark的编程案例
5.3.7Spark的应用案例
第6章YARN资源调度器
6.1Hadoop资源调度器回顾
6.2YARN资源调度器
6.2.1CapacityScheduler
6.2.2FairScheduler
6.2.3调度器比较
6.3YARN调度负载模拟器-SLS
6.3.1综述
6.3.2参数和命令
6.3.3实例一快速开始
6.3.4实例二定制运行
6.4Google第三代调度器分析
6.4.1中央式调度器模式
6.4.2双层调度器模式
6.4.3共享状态调度器
6.4.4Google第三代调度器Omega
6.4.5Omega集群调度模拟器-CSS
第7章YARN工作流分析
7.1TezonYARN
7.1.1Tez基本原理
7.1.2Tez环境安装
7.1.3Tez在Hive引擎中的优化作用
7.1.4小结
7.2显式工作流引擎
7.2.1Hadoop工作流引擎
7.2.2某大型互联网公司部门使用的工作流引擎
7.2.3应用举例
7.2.4对比
7.2.5小结
参考文献