Hadoop技术内幕

出版社:机械工业出版社
出版日期:2013-4
ISBN:9787111422266
作者:董西成
页数:332页

章节摘录

第一部分基础篇本部分内容阅读源代码前的准备MapReduce设计理念与基本架构第1章 阅读源代码前的准备一般而言,在深入研究一个系统的技术细节之前,先要进行一些基本的准备工作,比如,准备源代码阅读环境,搭建运行环境并尝试使用该系统等。对于Hadoop而言,由于它是一个分布式系统,且由多种守护进程组成,具有一定的复杂性,如果想深入学习其设计原理,仅仅进行以上几项准备工作是不够的,还要学习一些调试工具的使用方法,以便对Hadoop源代码进行调试、跟踪。边用边学,这样才能事半功倍。本章的编写目的是帮助读者构建一个“高效”的Hadoop源代码学习环境,包括Hadoop源代码阅读环境、Hadoop使用环境和Hadoop源代码编译调试环境等,这主要涉及如下内容:在Linux和Windows环境下搭建Hadoop源代码阅读环境的方法;Hadoop的基本使用方法,主要包括Hadoop Shell和Eclipse插件两种工具的使用;Hadoop源代码编译和调试方法,其中,调试方法包括使用Eclipse远程调试和打印调试日志两种。考虑到大部分用户在单机上学习Hadoop源代码,所以本章内容均是基于单机环境的。本章大部分内容较为基础,已经掌握这部分内容的读者可以直接跳过本章。1.1 准备源代码学习环境对于大部分公司而言,实验和生产环境中的服务器集群部署的都是Linux操作系统。考虑到Linux在服务器市场中具有统治地位,Hadoop从一开始便是基于Linux操作系统开发的,因而对Linux有着非常完美的支持。尽管Hadoop采用了具有跨平台特性的Java作为主要编程语言,但由于它的一些功能实现用到了Linux操作系统相关的技术,因而对其他平台的支持不够友好,且没有进行过严格测试。换句话说,其他操作系统(如Windows)仅可作为开发环境,不可作为生产环境。对于学习源代码而言,操作系统的选择显得不是非常重要,读者可根据个人爱好自行决定。本节以64 bit Linux和32 bit Windows两种操作系统为例,介绍如何在单机上准备Hadoop源代码学习环境。

前言

前言为什么要写这本书突然之间,大数据一下子就“火”了,开源软件Hadoop也因此水涨船高。得益于一些国际领先厂商,尤其是FaceBook、Yahoo!以及阿里巴巴等互联网巨头的现身说法,Hadoop被看成大数据分析的“神器”。IDC在对中国未来几年的预测中就专门提到了大数据,其认为未来几年,会有越来越多的企业级用户试水大数据平台和应用,而这之中,Hadoop将成为最耀眼的“明星”。尽管Hadoop整个生态系统是开源的,但是,由于它包含的软件种类过多,且版本升级过快,大部分公司,尤其是一些中小型公司,难以在有限的时间内快速掌握Hadoop蕴含的价值。此外,Hadoop自身版本的多样化也给很多研发人员带来了很大的学习负担。尽管当前市面上已有很多参考书籍,比如《Hadoop: The Definitive Guide》、《Hadoop in Action》、《Pro Hadoop》、《Hadoop Operations》等,但是,至今还没有一本书能够深入地剖析Hadoop内部的实现细节,比如JobTracker实现、作业调度器实现等。也正因如此,很多Hadoop初学者和研发人员只能参考网络上一些零星的源代码分析的文章,自己一点一点地阅读源代码,缓慢地学习Hadoop。而本书正是为了解决以上各种问题而编写的,它是国内第一本深入剖析Hadoop内部实现细节的书籍。本书以Hadoop 1.0为基础,深入剖析了Hadoop MapReduce中各个组件的实现细节,包括RPC框架、JobTracker实现、TaskTracker实现、Task实现和作业调度器实现等。书中不仅详细介绍了MapReduce各个组件的内部实现原理,而且结合源代码进行了深入的剖析,使读者可以快速全面地掌握Hadoop MapReduce设计原理和实现细节。读者对象(1)Hadoop二次开发人员Hadoop由于在扩展性、容错性和稳定性等方面的诸多优点,已被越来越多的公司采用。而为了减少开发成本,大部分公司在Hadoop基础上进行了二次开发,以打造属于公司内部的Hadoop平台。对于Hadoop二次开发人员来说,深入而又全面地了解Hadoop的设计原理与实现细节是修改Hadoop内核的前提,而本书可帮助这部分读者快速而又全面地了解Hadoop实现细节。(2)Hadoop应用开发人员如果要利用Hadoop进行高级应用开发,仅掌握Hadoop基本使用方法是远远不够的,必须对Hadoop框架的设计原理、架构和运作机制有一定的了解。对这部分读者而言,本书将带领他们全面了解Hadoop的设计和实现原理,加深对Hadoop框架的理解,提高开发水平,从而编写出更加高效的MapReduce应用程序。(3)Hadoop运维工程师对于一名合格的Hadoop运维工程师而言,适当地了解Hadoop框架的设计原理、架构和运作机制是十分有帮助的。这不仅可以使Hadoop运维人员更快地排除各种可能的Hadoop故障,还可以让Hadoop运维人员与研发人员进行更有效的沟通。通过阅读这本书,Hadoop运维人员可以了解到很多其他书中无法获取的Hadoop实现细节。(4)开源软件爱好者Hadoop是开源软件中的佼佼者。它在实现的过程中吸收了很多开源领域的优秀思想,同时有很多值得学习的创新。尤为值得一提的是,本书分析Hadoop架构设计和实现原理的方式也许值得所有开源软件爱好者学习和借鉴。通过阅读本书,这部分读者不仅能领略到开源软件的优秀思想,还可以掌握分析开源软件源代码的方法和技巧,从而进一步提高使用开源软件的效率和质量。如何阅读本书本书分为四大部分(不包括附录):第一部分为基础篇,简单地介绍Hadoop的阅读环境搭建和基本设计架构,帮助读者了解一些基础背景知识。第二部分为MapReduce编程模型篇,着重讲解MapReduce编程接口,主要包括两套编程接口,分别是旧API和新API。第三部分为MapReduce核心设计篇,主要讲解Hadoop MapReduce的运行时环境,包括RPC框架、客户端、JobTracker、TaskTracker和Task等内部实现细节。第四部分为MapReduce高级篇,主要讲解Hadoop MapReduce中的一些高级特性和未来发展趋势,包括多用户作业调度器、安全机制和下一代MapReduce框架等。另外,本书最后还添加了几个附录:附录A为安装Hadoop过程中可能存在的问题及解决方案;附录B为Hadoop默认HTTP端口号以及HTTP地址。参考资料中包括了本书写作过程中参考的书籍、论文、Hadoop Jira和网络资源。如果你是一名经验丰富的资深用户,能够理解Hadoop的相关基础知识和使用技巧,那么你可以直接阅读第三部分和第四部分。但是,如果你是一名初学者,请一定从第1章的基础理论知识开始学习。

名人推荐

Hadoop是近两年来技术领域最热门的话题,从媒体界到学术界,再到企业界,都给予了高度关注。在企业界,无论是在IT领域,还是在金融、电信、生物、医药、制造等传统领域,Hadoop的应用都非常广泛,可以说只要有海量数据需要处理的地方,就有Hadoop。尤其是在IT领域,从国外的Google、Yahoo!、Microsoft、Oracle、Facebook,到国内的阿里巴巴、淘宝、腾讯、百度、新浪、搜狐,都在Hadoop的研发和应用上投入了大量的人力和资金,并获得了丰厚的收益。随着Hadoop的普及,用户遇到的问题会越来越多,也会越来越复杂。要解决实际生产环境中可能遇到的复杂问题,掌握Hadoop本身的设计和实现原理是根本之道。“Hadoop技术内幕”这两本书就本着这个目标出发,从源代码的角度对Hadoop的工作机制进行了深入的分析,并对实践中可能会遇到的各种问题给出了解决方案。——童小军 资深Hadoop技术专家、企业级大数据解决方案RedHadoop创始人

媒体关注与评论

经过几年的快速发展,Hadoop已经成为大数据时代存储和处理海量数据的事实标准,具有高可靠性、高扩展性、高效性和高容错性等许多优点,在学术界备受关注,在业界则更受欢迎。Hadoop的功能非常强大,与之相伴的是使用上的复杂性,如何才能更好地使用Hadoop、更好地对Hadoop进行性能优化、扩展和定制?通过阅读和研究它的源代码实现以上目标是一种不错的选择。“Hadoop技术内幕”这两本书根据读者的需求,对Common、HDFS和MapReduce等核心技术的架构设计和实现原理进行了深入且详细的分析,对于想了解Hadoop工作机制的读者来说,这两本书应该是十分难得的,强烈推荐。——EasyHadoop开源技术社区 致力于Hadoop的易用和普及

内容概要

作者信息请参考他的技术博客:http://dongxicheng.org/ 和该书的官方宣传网站:http://hadoop123.com/

书籍目录

前 言
第一部分 基础篇
第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 Hadoop Shell介绍/ 15
1.5.3 Hadoop Eclipse插件介绍/ 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 Apache Hadoop新版本的特性/ 25
2.1.3 Hadoop版本变迁/ 26
2.2 Hadoop MapReduce设计目标/ 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 Hadoop MapReduce架构/ 34
2.5 Hadoop MapReduce作业的生命周期/ 36
2.6 小结/ 38
第二部分 MapReduce编程模型篇
第3章 MapReduce编程模型/ 40
3.1 MapReduce编程模型概述/ 40
3.1.1 MapReduce编程接口体系结构/ 40
3.1.2 新旧MapReduce API比较/ 41
3.2 MapReduce API基本概念/ 42
3.2.1 序列化/ 42
3.2.2 Reporter参数/ 43
3.2.3 回调机制/ 43
3.3 Java API解析/ 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 非Java API解析/ 61
3.4.1 Hadoop Streaming的实现原理/ 61
3.4.2 Hadoop Pipes的实现原理/ 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章 Hadoop RPC框架解析/ 76
4.1 Hadoop RPC框架概述/ 76
4.2 Java基础知识/ 77
4.2.1 Java反射机制与动态代理/ 78
4.2.2 Java网络编程/ 80
4.2.3 Java NIO/ 82
4.3 Hadoop RPC基本框架分析/ 89
4.3.1 RPC基本概念/ 89
4.3.2 Hadoop RPC基本框架/ 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 Hadoop DistributedCache原理分析/ 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 Map Task内部实现/ 204
8.3.1 Map Task整体流程/ 204
8.3.2 Collect过程分析/ 205
8.3.3 Spill过程分析/ 213
8.3.4 Combine过程分析/ 214
8.4 Reduce Task内部实现/ 214
8.4.1 Reduce Task整体流程/ 215
8.4.2 Shuffle和Merge阶段分析/ 215
8.4.3 Sort和Reduce阶段分析/ 218
8.5 Map/Reduce Task优化/ 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 Capacity Scheduler实现/ 246
10.4.1 Capacity Scheduler功能介绍/ 247
10.4.2 Capacity Scheduler实现/ 249
10.4.3 多层队列调度/ 254
10.5 Fair Scheduler实现/ 255
10.5.1 Fair Scheduler功能介绍/ 255
10.5.2 Fair Scheduler实现/ 258
10.5.3 Fair Scheduler与Capacity Scheduler对比/ 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 Apache YARN/ 287
12.3.1 Apache YARN基本框架/ 287
12.3.2 Apache YARN工作流程/ 290
12.3.3 Apache YARN设计细节/ 291
12.3.4 MapReduce与YARN结合/ 294
12.4 Facebook Corona / 298
12.4.1 Facebook Corona基本框架/ 298
12.4.2 Facebook Corona工作流程/ 300
12.4.3 YARN与Corona对比/ 303
12.5 Apache Mesos/ 304
12.5.1 Apache Mesos基本框架/ 304
12.5.2 Apache Mesos资源分配/ 305
12.5.3 MapReduce与Mesos结合/ 307
12.6 小结/ 309
附录A 安装Hadoop过程中可能存在的问题及解决方案/ 310
附录B Hadoop默认HTTP端口号以及HTTP地址/ 312
参考资料/ 313

编辑推荐

《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》编辑推荐:资深Hadoop技术专家撰写,EasyHadoop和51CTO等专业技术社区联袂推荐!从源代码角度深入分析MapReduce的设计理念,以及RPC框架、客户端、JobTracker、TaskTracker和Task等运行时环境的架构设计与实现原理。深入探讨Hadoop性能优化、多用户作业调度器、安全机制、下一代MapReduce框架等高级主题。

作者简介

《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》内容简介:“Hadoop技术内幕”共两册,分别从源代码的角度对“Common+HDFS”和“MapReduce的架构设计和实现原理”进行了极为详细的分析。《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》由Hadoop领域资深的实践者亲自执笔,首先介绍了MapReduce的设计理念和编程模型,然后从源代码的角度深入分析了RPC框架、客户端、JobTracker、TaskTracker和Task等MapReduce运行时环境的架构设计与实现原理,最后从实际应用的角度深入讲解了Hadoop的性能优化、安全机制、多用户作业调度器和下一代MapReduce框架等高级主题和内容。《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》适合Hadoop的二次开发人员、应用开发工程师、运维工程师阅读。

海报:


 Hadoop技术内幕下载 更多精彩书评



发布书评

 
 


精彩书评 (总计7条)

  •     对各个核心的组件的核心思想都已经讲到,作者认为设计思想、架构比细节更重要,把细节的探索交给读者自己去完成,但同时对于难点的细节也点得比较透(如:Map Spill,Reduce Shuffle这块),而且还提供特别多的资料供读者参考,个人很喜欢这种写作风格。但是300页左右的书,读得有点不够爽,希望对核心部件能描述更详细一些(如JobTracker,TaskTracker,调度器等)
  •     最近花了一周时间,从头到尾读了一遍以下是自己的读后切身体会,希望给想读或在读的朋友一个分享:关于本书的定位:技术架构设计和原理实现 【分析型】注意:不是【实战型】的,所以想读的朋友,一定要看好这本书的内容定位,如果是想提高MR编程技巧等方面学习,这本书,个人觉得不太适合。关于本书的内容组织:整体上章节安排还是比较有条理的,但是具体到每个章节的内容展现,有以下几个特点(优点+缺点):1,啰嗦,经常一页纸上能发现两段儿内容相似的描述,虽然都是大白话,但是整本书读下来,发现这样的情况挺多的,哎,个人感觉稍显啰嗦。2,浅尝而止,部分章节在描述关于一个技术点或细节时,稍显简单,而非做到深入,貌似不符合本书的副标题《深入解析……》,读的过程中,有种意犹未尽的感觉,无奈这种情况,只能问Google,还好,这样的情况,也不是太多,不至于太影响整体阅读。3,纰漏有点儿“失控”,我的意思是书中错别字,错误用词描述等情况有点儿多,我个人发现的就不一一列举了,其他读者发现的已在网上公布的在这儿: http://hadoop123.com/hadoop-mapreduce/mistake.html 这个情况,个人感觉有点儿不舒服,毕竟不是翻译的外文,这……很无语4,代码不多,按说这是优点,书中关于大片代码粘贴的情况还是控制的不错,大多数都属文字性描述,所以只看书,不看代码,基本也能理解MR的代码组织结构和实现原理,但是部分章节,贴了代码,却不完整,所以最好还是参考源码理解,否则,如果细读,只分析书中贴的部分代码,可能是理解不通的。总的来说,读后还是弥补了自己对Hadoop的很多认识盲区书中很多大量的图文描述,对于理解MR部分技术细节还是很有价值的最后,希望大家结合自身实际情况“选择性”进行阅读!
  •     MapReduce这本书总体上写得还是很不错的,脉络清晰,干货十足,作者的水平很好,也很负责! 这本书总体上写得还是很不错的,脉络清晰,干货十足,作者的水平很好,也很负责! 这本书总体上写得还是很不错的,脉络清晰,干货十足,作者的水平很好,也很负责!

精彩短评 (总计50条)

  •     这本书不同于现有的《Hadoop权威指南》、《Hadoop实战》、《Hadoop operation》等书,这些书只是从使用者角度介绍Hadoop,比较浅显,而本书则不同,它从源代码角度深入解析了MapReduce实现原理,对于想要深入研究Hadoop的朋友有很大帮助。
  •     这本书不适合初学者,内容侧重mapreduce内在机制,推荐hadoop实战
  •     这本书的技术实施上写的非常详细,并且也有理论知识。作为操作指南的话,这是一本不错的书。
  •     说的很详细 内容讲解的很全面 但是不是太深入
  •     没读完,就不打星了
  •     作者本科和我一个学校的呀,原来的时候就看过他的博客了
  •     侧重内部实现
  •     董的博客, 这本是hadoop V1的,不过除去资源一块 核心内容大体相同
  •     不错,对于mapreduce的原理及其过程将的很详细,但是调优章节写得计较浅显。
  •     对于理解MapReduce结构和读代码很有帮助
  •     确实挺深的哈
  •     我只想说,作者的博客禁止了copy,太凶残了
  •     讲的比较详细,Hadoop是一种处理大数据的工具,更新也快。
  •     买了很久了,终于看完了
  •     初学和进阶必备
  •     对于Hadoop以及MapReduce的概念讲的非常清楚,但是现在在项目中使用不上。
  •     关于Hadoop编程模型,RPC,JobTracker,TaskTracker,Task的内部运行机制和容错均有很详细的解析,对着hadoop源码看效果更好,同时还可以学习到很多Hadoop的调优,也初步了解如何实现一个大型分布式计算框架。接下来准备继续看系列之Yarn了。
  •     非常棒的一本讲mapreduce的一本书,新手读起来很容易懂,高手读起来能看到很多细节。缺点是没有练习,需要再找实战书籍看与练习。
  •      这本书总体上写得还是很不错的,脉络清晰,干货十足,作者的水平很好,也很负责!
  •     粗略过了遍,很值得新人及想了解内部实现细节的开发购买。
  •     作者dong对内容的组织逻辑清晰。对于不在MapReduce上做二次开发的人,也可以借鉴作者的分析思路。对于希望深入了解Hadoop的人,还是值得一读的。
  •     从代码层面认识 MR
  •     想说这是我读过hadoop相关书籍废话最少,条理最清晰的一系列,配合源码服用疗效更好
  •     粗略读过,作者讲的很好,我没有接触过hadoop,但是看我以后有种豁然开朗的感觉
  •     书中的流程图很赞!
  •     谢谢西成送的这本书,花了近一个月的时间,让我这hadoop小白用户理解了hadoop mapreduce的架构设计,逻辑清晰,组织合理,真的是很不错
  •     对于我这种新手,适合看前八章,了解mapreduce&hdfs的技术原理。。讲解很清晰,代码不是特别多。但是还需要学的东西更多更多,任重道远啊~要尽快搭出来三种环境模式啊我,节奏慢死了
  •     源码分析讲的还是相当到位的,建议初步了解mr基本编程后阅读此书。
  •     可能之前读了作者博客的缘故,书中大部分内容作者已经在博客中提及,所以读下来感觉都是在复习。从支持作者写了那么多优秀博文的角度,买一本是应该的。
  •     你们怎么都在刷这一部?国内写得....315页。。。。70元,这通货膨胀的速度啊
  •     良心书,Hadoop MapReduce介绍的很详细
  •     介绍了MR的原理和运行流程,代码讲的比较泛泛,还需要自己参照着深入研究
  •     还不错,将hadoop大卸八块,各个模块的功能和怎么组织起来,描述的还算清晰吧! 并不是那种一看就瞌睡的书,适合我这种不会java但想学hadoop思想和架构的人。在读第二遍,仔细看看……
  •     其实国人能写这样的书,感觉还是不错的,不过感觉很多东西不太深入,感觉在深入之前,和先有整体,带着整体做深入会更好一点, jobclient,jobtracer,tasktracer之间的关系最好能系统化
  •     条理很清晰,难度很大,只看了个大概
  •     每次看着作者在群里推销 看样子还是有干活的 不知道到底如何 必须要看过才知道 不过 现在已经不是很关注hadoop了 处理数据已经不重要了 重要的是从有限的数据中提炼最大的价值 拜读过之后 表示这本书的干活还是很多的 初读之后 意犹未尽 还需再研究研究
  •     对hadoop了解不多,也没有太仔细看这本书,但感觉内容还是很完整详细的。
  •     还可以。
  •     配合这本书看MapReduce源码非常不错。
  •     好的技术书籍不应该故作高深,而是深入浅出,娓娓道来,可以说本书做到了,从整体到细节,从设计到实现,就像作者博客的内容一样,读到会意之处,每每让人欣喜,当然作者有些地方还可以分析的更为透彻更详细些,源码的分析结构更完善些,但在国人写的技术书中已经很不错了,作者还列出了大量的文献引用,包括一些网络资源的引用,深入下去还是很有意思的
  •     代码太少
  •     讲得的确很详细。只是如果一口气看太多的话,这本书会看得我犯困。。。
  •     知识点的系统性是本书的亮点! 读完之后对分布式设计和开发的细节有了更多的认识 同时对分布式框架有了更多思考 另一方面对mapreduce计算框架的细节解释的很系统 分布式开发启蒙读物 很不错的一本书
  •     对hadoop MR的介绍详细具体, 代码,参考文献,原理讲解都很透彻. 看得出来作者写的非常用心. 适合修改Hadoop MR的朋友, 以及想了解MR内部机制的朋友阅读.
  •     写的挺详细,可惜是老版本
  •     很详细,很精彩
  •     的确不容易,仅冲着这份辛苦也要给5分
  •     适合每一个使用mapreduce的码农,对hadoop类似项目开发农意义不大
  •     比较不错的源码和流程分析
  •     挺好的,有时间看下另一本
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024