Hadoop技术内幕深入解析MapReduce架构设计与实现原理.docx
- 文档编号:10673287
- 上传时间:2023-05-27
- 格式:DOCX
- 页数:12
- 大小:27.41KB
Hadoop技术内幕深入解析MapReduce架构设计与实现原理.docx
《Hadoop技术内幕深入解析MapReduce架构设计与实现原理.docx》由会员分享,可在线阅读,更多相关《Hadoop技术内幕深入解析MapReduce架构设计与实现原理.docx(12页珍藏版)》请在冰点文库上搜索。
Hadoop技术内幕深入解析MapReduce架构设计与实现原理
Hadoop技术内幕:
深入解析MapReduce架构设计与实现原理
《Hadoop技术内幕:
深入解析MapReduce架构设计与实现原理》
基本信息
作者:
董西成
丛书名:
大数据技术丛书
出版社:
机械工业出版社
ISBN:
9787111422266
上架时间:
2013-5-8
出版日期:
2013年5月
开本:
16开
页码:
318
版次:
1-1
所属分类:
计算机>软件与程序设计>分布式系统设计
内容简介
计算机书籍
“hadoop技术内幕”共两册,分别从源代码的角度对“common+hdfs”和“mapreduce的架构设计和实现原理”进行了极为详细的分析。
本书由hadoop领域资深的实践者亲自执笔,首先介绍了mapreduce的设计理念和编程模型,然后从源代码的角度深入分析了rpc框架、客户端、jobtracker、tasktracker和task等mapreduce运行时环境的架构设计与实现原理,最后从实际应用的角度深入讲解了hadoop的性能优化、安全机制、多用户作业调度器和下一代mapreduce框架等高级主题和内容。
本书适合hadoop的二次开发人员、应用开发工程师、运维工程师阅读。
《hadoop技术内幕:
深入解析mapreduce架构设计与实现原理》共12章,分4个部分(不包括附录):
第一部分(第1~2章),介绍了hadoop源代码的组织结构、获取、编译、调试、阅读环境搭建,以及mapreduce的设计理念和基本架构;第二部分(第3章),着重讲解了mapreduce的编程接口,主要包括旧api和新api两套编程接口,以及hadoop工作流;第三部分(第4~8章)主要分析了mapreduce的运行时环境,包括rpc框架、客户端、jobtracker、tasktracker和task等的内部实现细节和机制剖析;第四部分(第9~12章)深入讲解了hadoop的性能优化、多用户作业调度器、安全机制和下一代mapreduce框架等高级主题。
目录
《hadoop技术内幕:
深入解析mapreduce架构设计与实现原理》
前 言
第一部分 基础篇
第1章 阅读源代码前的准备/2
1.1 准备源代码学习环境/2
1.1.1 基础软件下载/2
1.1.2 如何准备windows环境/3
1.1.3 如何准备linux环境/6
1.2 获取hadoop源代码/7
1.3 搭建hadoop源代码阅读环境/8
1.3.1 创建hadoop工程/8
1.3.2 hadoop源代码阅读技巧/9
1.4 hadoop源代码组织结构/10
1.5 hadoop初体验/13
1.5.1 启动hadoop/13
1.5.2 hadoopshell介绍/15
1.5.3 hadoopeclipse插件介绍/15
1.6 编译及调试hadoop源代码/19
1.6.1 编译hadoop源代码/19
1.6.2 调试hadoop源代码/20
.1.7 小结/23
第2章 mapreduce设计理念与基本架构/24
2.1 hadoop发展史/24
2.1.1 hadoop产生背景/24
2.1.2 apachehadoop新版本的特性/25
2.1.3 hadoop版本变迁/26
2.2 hadoopmapreduce设计目标/28
2.3 mapreduce编程模型概述/29
2.3.1 mapreduce编程模型简介/29
2.3.2 mapreduce编程实例/31
2.4 hadoop基本架构/32
2.4.1 hdfs架构/33
2.4.2 hadoopmapreduce架构/34
2.5 hadoopmapreduce作业的生命周期/36
2.6 小结/38
第二部分 mapreduce编程模型篇
第3章 mapreduce编程模型/40
3.1 mapreduce编程模型概述/40
3.1.1 mapreduce编程接口体系结构/40
3.1.2 新旧mapreduceapi比较/41
3.2 mapreduceapi基本概念/42
3.2.1 序列化/42
3.2.2 reporter参数/43
3.2.3 回调机制/43
3.3 javaapi解析/44
3.3.1 作业配置与提交/44
3.3.2 inputformat接口的设计与实现/48
3.3.3 outputformat接口的设计与实现/53
3.3.4 mapper与reducer解析/55
3.3.5 partitioner接口的设计与实现/59
3.4 非javaapi解析/61
3.4.1 hadoopstreaming的实现原理/61
3.4.2 hadooppipes的实现原理/64
3.5 hadoop工作流/67
3.5.1 jobcontrol的实现原理/67
3.5.2 chainmapper/chainreducer的实现原理/69
3.5.3 hadoop工作流引擎/71
3.6 小结/73
第三部分 mapreduce核心设计篇
第4章 hadooprpc框架解析/76
4.1 hadooprpc框架概述/76
4.2 java基础知识/77
4.2.1 java反射机制与动态代理/78
4.2.2 java网络编程/80
4.2.3 javanio/82
4.3 hadooprpc基本框架分析/89
4.3.1 rpc基本概念/89
4.3.2 hadooprpc基本框架/91
4.3.3 集成其他开源rpc框架/98
4.4 mapreduce通信协议分析/100
4.4.1 mapreduce通信协议概述/100
4.4.2 jobsubmissionprotocol通信协议/102
4.4.3 intertrackerprotocol通信协议/102
4.4.4 taskumbilicalprotocol通信协议/103
4.4.5 其他通信协议/104
4.5 小结/106
第5章 作业提交与初始化过程分析/107
5.1 作业提交与初始化概述/107
5.2 作业提交过程详解/108
5.2.1 执行shell命令/108
5.2.2 作业文件上传/109
5.2.3 产生inputsplit文件/111
5.2.4 作业提交到jobtracker/113
5.3 作业初始化过程详解/115
5.4 hadoopdistributedcache原理分析/117
5.4.1 使用方法介绍/118
5.4.2 工作原理分析/120
5.5 小结/122
第6章 jobtracker内部实现剖析/123
6.1 jobtracker概述/123
6.2 jobtracker启动过程分析/125
6.2.1 jobtracker启动过程概述/125
6.2.2 重要对象初始化/125
6.2.3 各种线程功能/128
6.2.4 作业恢复/129
6.3 心跳接收与应答/129
6.3.1 更新状态/131
6.3.2 下达命令/131
6.4 job和task运行时信息维护/134
6.4.1 作业描述模型/134
6.4.2 jobinprogress/136
6.4.3 taskinprogress/137
6.4.4 作业和任务状态转换图/139
6.5 容错机制/141
6.5.1 jobtracker容错/141
6.5.2 tasktracker容错/142
6.5.3 job/task容错/145
6.5.4 record容错/147
6.5.5 磁盘容错/151
6.6 任务推测执行原理/152
6.6.1 计算模型假设/153
6.6.2 1.0.0版本的算法/153
6.6.3 0.21.0版本的算法/154
6.6.4 2.0版本的算法/156
6.7 hadoop资源管理/157
6.7.1 任务调度框架分析/159
6.7.2 任务选择策略分析/162
6.7.3 fifo调度器分析/164
6.7.4 hadoop资源管理优化/165
6.8 小结/168
第7章 tasktracker内部实现剖析/169
7.1 tasktracker概述/169
7.2 tasktracker启动过程分析/170
7.2.1 重要变量初始化/171
7.2.2 重要对象初始化/171
7.2.3 连接jobtracker/172
7.3 心跳机制/172
7.3.1 单次心跳发送/172
7.3.2 状态发送/175
7.3.3 命令执行/178
7.4 tasktracker行为分析/179
7.4.1 启动新任务/179
7.4.2 提交任务/179
7.4.3 杀死任务/181
7.4.4 杀死作业/182
7.4.5 重新初始化/184
7.5 作业目录管理/184
7.6 启动新任务/186
7.6.1 任务启动过程分析/186
7.6.2 资源隔离机制/193
7.7 小结/195
第8章 task运行过程分析/196
8.1 task运行过程概述/196
8.2 基本数据结构和算法/197
8.2.1 ifile存储格式/197
8.2.2 排序/198
8.2.3 reporter/201
8.3 maptask内部实现/204
8.3.1 maptask整体流程/204
8.3.2 collect过程分析/205
8.3.3 spill过程分析/213
8.3.4 combine过程分析/214
8.4 reducetask内部实现/214
8.4.1 reducetask整体流程/215
8.4.2 shuffle和merge阶段分析/215
8.4.3 sort和reduce阶段分析/218
8.5 map/reducetask优化/219
8.5.1 参数调优/219
8.5.2 系统优化/220
8.6 小结/224
第四部分 mapreduce高级篇
第9章 hadoop性能调优/228
9.1 概述/228
9.2 从管理员角度进行调优/229
9.2.1 硬件选择/229
9.2.2 操作系统参数调优/229
9.2.3 jvm参数调优/230
9.2.4 hadoop参数调优/230
9.3 从用户角度进行调优/235
9.3.1 应用程序编写规范/235
9.3.2 作业级别参数调优/235
9.3.3 任务级别参数调优/239
9.4 小结/240
第10章 hadoop多用户作业调度器/241
10.1 多用户调度器产生背景/241
10.2 hod/242
10.2.1 torque资源管理器/242
10.2.2 hod作业调度/243
10.3 hadoop队列管理机制/245
10.4 capacityscheduler实现/246
10.4.1 capacityscheduler功能介绍/247
10.4.2 capacityscheduler实现/249
10.4.3 多层队列调度/254
10.5 fairscheduler实现/255
10.5.1 fairscheduler功能介绍/255
10.5.2 fairscheduler实现/258
10.5.3 fairscheduler与capacityscheduler对比/263
10.6 其他hadoop调度器介绍/264
10.7 小结/265
第11章 hadoop安全机制/266
11.1 hadoop安全机制概述/266
11.1.1 hadoop面临的安全问题/266
11.1.2 hadoop对安全方面的需求/267
11.1.3 hadoop安全设计基本原则/267
11.2 基础知识/268
11.2.1 安全认证机制/268
11.2.2 kerberos介绍/270
11.3 hadoop安全机制实现/273
11.3.1 rpc/273
11.3.2 hdfs/276
11.3.3 mapreduce/278
11.3.4 上层服务/280
11.4 应用场景总结/281
11.4.1 文件存取/281
11.4.2 作业提交与运行/282
11.4.3 上层中间件访问hadoop/282
11.5 小结/283
第12章 下一代mapreduce框架/284
12.1 第一代mapreduce框架的局限性/284
12.2 下一代mapreduce框架概述/284
12.2.1 基本设计思想/284
12.2.2 资源统一管理平台/286
12.3 apacheyarn/287
12.3.1 apacheyarn基本框架/287
12.3.2 apacheyarn工作流程/290
12.3.3 apacheyarn设计细节/291
12.3.4 mapreduce与yarn结合/294
12.4 facebookcorona/298
12.4.1 facebookcorona基本框架/298
12.4.2 facebookcorona工作流程/300
12.4.3 yarn与corona对比/303
12.5 apachemesos/304
12.5.1 apachemesos基本框架/304
12.5.2 apachemesos资源分配/305
12.5.3 mapreduce与mesos结合/307
12.6 小结/309
附录a 安装hadoop过程中可能存在的问题及解决方案/310
附录b hadoop默认http端口号以及http地址/312
参考资料/313
本图书信息来源:
中国互动出版网www.china-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Hadoop 技术 内幕 深入 解析 MapReduce 架构 设计 实现 原理