新書推薦:
《
中国王朝内争实录:宠位厮杀
》
售價:NT$
281.0
《
凡事发生皆有利于我(这是一本读了之后会让人运气变好的书”治愈无数读者的心理自助经典)
》
售價:NT$
203.0
《
未来特工局
》
售價:NT$
254.0
《
高术莫用(十周年纪念版 逝去的武林续篇 薛颠传世之作 武学尊师李仲轩家世 凸显京津地区一支世家的百年沉浮)
》
售價:NT$
250.0
《
英国简史(刘金源教授作品)
》
售價:NT$
449.0
《
便宜货:廉价商品与美国消费社会的形成
》
售價:NT$
352.0
《
读书是一辈子的事(2024年新版)
》
售價:NT$
352.0
《
乐道文库·什么是秦汉史
》
售價:NT$
367.0
|
內容簡介: |
本书从Hadoop背景、特性、安装等开始,逐步讲解其配置、解决方案、元数据解析等内容。本书共10章,主要内容包括:Hadoop简介,Hadoop的安装与配置,HDFS HA及解决方案,HDFS元数据解析,Hadoop的元数据备份方案,Hadoop的BackupNode方案,MapReduce设计理念与基本架构,MapReduce编程模型,YARN设计理念与基本架构,YARN基础库。本书可作为高等院校计算机等相关专业的大数据或相关课程的教材,也可供大数据领域的工程技术人员学习、参考。
|
關於作者: |
小牛学堂是在线教育平台,网站内建设有在线学习行业课程专栏体系,通过用户基础推荐合适的学习方案,关联推荐课程,并通过大数据行为轨迹定位进行学员学习跟进。主要提供以SAP项目、云计算及大数据项目、Unity3D游戏开发项目的在线学习,直播互动,免费学习课程等服务。
|
目錄:
|
目录
第1章Hadoop简介1
1.1Hadoop相关介绍1
1.1.1Hadoop概述1
1.1.2 Hadoop的历史1
1.1.3 Hadoop的功能与作用1
1.1.4 Hadoop的优势2
1.1.5 Hadoop的应用现状与趋势2
1.2 Hadoop的项目2
1.3 Hadoop的体系结构4
1.4 Hadoop与分布式开发5
1.5Hadoop计算模型8
1.6 Hadoop的数据管理8
1.6.1 HDFS的数据管理8
1.6.2 HBase的数据管理10
1.6.3Hive的数据管理11
1.7 Hadoop集群安全策略12
思考练习14
第2章Hadoop的安装与配置15
2.1在Linux上安装与配置Hadoop15
2.1.1安装JDK1.615
2.1.2 配置SSH免密码登录16
2.1.3安装并运行Hadoop17
2.2 在Mac OSX上安装与配置Hadoop19
2.2.1 安装Homebrew19
2.2.2 使用Homebrew安装Hadoop19
2.2.3 配置SSH和使用Hadoop19
2.3 在Windows上安装与配置Hadoop19
2.3.1 安装JDK1.6或更高版本19
2.3.2 安装Cygwin20
2.3.3 配置环境变量20
2.3.4 安装sshd服务20
2.3.5 启动sshd服务20
2.3.6 配置SSH免密码登录20
2.3.7 安装并运行Hadoop21
2.4 安装与配置Hadoop集群21
2.4.1 网络拓扑21
2.4.2 定义集群拓扑22
2.4.3 建立和安装Cluster22
2.5 日志分析及几个小技巧28
思考练习29
第3章HDFS HA及解决方案30
3.1HDFS系统架构30
3.2HA定义31
3.3HDFS HA原因分析及应对措施31
3.3.1可靠性31
3.3.2可维护性32
3.4Hadoop的HA解决方案32
3.4.1Hadoop的元数据备份方案32
3.4.2Hadoop的SecondaryNameNode方案33
3.4.3Hadoop的CheckpointNode方案33
3.4.4Hadoop的BackupNode方案34
3.4.5DRDB方案34
3.4.6Facebook的AvatarNode方案34
3.5方案的优点与缺点比较35
思考练习36
第4章HDFS元数据解析37
4.1概述37
4.2内存元数据结构37
4.2.1INode37
4.2.2Block38
4.2.3BlockInfo和DatanodeDescriptor39
4.2.4小结39
4.2.5代码分析元数据结构39
4.3磁盘元数据文件43
4.4format情景分析45
4.5元数据应用场景分析56
思考练习57
第5章Hadoop的元数据备份方案58
5.1运行机制分析58
5.1.1NameNode启动加载元数据情景分析59
5.1.2元数据更新及日志写入情景分析67
5.1.3Checkpoint过程情景分析73
5.1.4元数据可靠性机制95
5.2使用说明95
思考练习96
第6章Hadoop的BackupNode方案97
6.1BackupNode概述97
6.1.1系统架构97
6.1.2使用原则97
6.2运行机制分析98
6.2.1运行机制98
6.2.2元数据操作情景分析113
6.2.3日志池机制119
6.2.4故障切换机制122
6.3实验方案说明124
6.4构建实验环境124
6.4.1网络拓扑124
6.4.2系统安装及配置124
6.4.3安装JDK131
6.4.4虚拟机集群架设132
6.4.5NameNode安装及配置133
6.4.6BackupNode安装及配置133
6.4.7DataNode安装及配置134
6.4.8Clients安装及配置134
6.5异常解决方案134
6.5.1异常情况分析134
6.5.2NameNode配置134
6.5.3BackupNode配置139
6.5.4DataNode 配置141
6.5.5NameNode 宕机切换实验143
6.5.6NameNode 宕机读写测试148
思考练习153
第7章MapReduce设计理念与基本架构154
7.1Hadoop MapReduce设计目标154
7.2MapReduce编程模型概述154
7.2.1MapReduce编程模型简介154
7.2.2MapReduce编程实例156
7.3Hadoop基本架构157
7.3.1HDFS架构158
7.3.2Hadoop MapReduce架构159
7.4Hadoop MapReduce作业的生命周期160
思考练习162
第8章MapReduce编程模型163
8.1 MapReduce编程模型概述163
8.1.1 MapReduce编程接口体系结构163
8.1.2 新版与旧版MapReduce API比较164
8.2 MapReduce API基本概念165
8.2.1 序列化165
8.2.2 Reporter参数166
8.2.3 回调机制166
8.3 Java API解析167
8.3.1 作业配置与提交167
8.3.2 InputFormat接口的设计与实现170
8.3.3 OutputFormat接口的设计与实现174
8.3.4 Mapper与Reducer解析177
8.3.5 Partitioner接口的设计与实现180
8.4 非Java API解析181
8.4.1 Hadoop Streaming的实现原理181
8.4.2 Hadoop Pipes的实现原理184
8.5 Hadoop工作流187
8.5.1 JobControl的实现原理187
8.5.2 ChainMapperChainReducer的实现原理189
8.5.3 Hadoop工作流引擎191
思考练习192
第9章YARN设计理念与基本架构193
9.1YARN产生背景193
9.1.1MRv1的局限性193
9.1.2 轻量级弹性计算平台194
9.2 Hadoop基础知识195
9.2.1 术语解释195
9.2.2 Hadoop的版本变迁196
9.3 YARN基本设计思想198
9.3.1 基本框架对比198
9.3.2 编程模型对比200
9.4 YARN基本架构200
9.4.1 YARN基本组成结构200
9.4.2 YARN通信协议202
9.5 YARN工作流程203
9.6 多角度理解YARN204
9.6.1 并行编程204
9.6.2 资源管理系统204
9.6.3 云计算204
思考练习205
第10章YARN基础库206
10.1YARN基础库概述206
10.2第三方开源库206
10.2.1 Protocol Buffers206
10.2.2 Apache Avro209
10.3 底层通信库211
10.3.1 RPC通信模型212
10.3.2 Hadoop RPC的特点概述213
10.3.3 RPC总体架构213
10.3.4 Hadoop RPC使用方法214
10.3.5 Hadoop RPC类详解215
10.3.6 Hadoop RPC参数调优219
10.3.7 YARN RPC实现219
10.3.8 YARN RPC应用实例221
10.4 服务库与事件库225
10.4.1 服务库225
10.4.2 事件库226
10.4.3 YARN服务库和事件库的使用方法226
10.4.4 事件驱动带来的变化229
10.5 状态机库230
10.5.1 YARN状态转换方式230
10.5.2 状态机类230
10.5.3 状态机的使用方法230
10.5.4 状态机可视化233
10.6 源代码阅读引导233
思考练习234
参考文献235
|
內容試閱:
|
前 言
Hadoop是一个由Apache基金会开发的分布式计算平台。用户可以在不了解分布式底层细节的情况下开发分布式程序,充分利用集群的优势实现高速运算和存储。
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System,HDFS)。HDFS具有高容错性的特点,可以用来设计、部署在价格低廉的硬件上,同时它可提供高吞吐量来访问应用程序中的数据,适合有超大数据集的应用程序。HDFS放宽了可移植操作系统接口(Portable Operating System Interface of Unix,POSIX)的要求,可以用流的形式访问文件系统中的数据。
本书从Hadoop背景、特性、安装等开始,逐步讲解其配置、解决方案、元数据解析等内容。第1、2章对Hadoop的历史、功能与应用、体系结构等方面进行简要介绍,并且详细地介绍在Linux、Windows等多个操作系统环境下安装与配置Hadoop集群的步骤,便于读者借鉴。从第3章开始,依次讲解HDFS HA及解决方案、HDFS元数据解析、Hadoop的元数据备份方案、Hadoop的BackupNode方案等,主要结合具体实例,使读者对Hadoop有一定了解。从第7章开始,进一步讲解MapReduce及YARN的相关知识,包括MapReduce设计理念与基本架构、MapReduce编程模型、YARN设计理念与基本架构、YARN基础库等。
本书结合实例对Hadoop进行讲解,从Hadoop基础知识着手,引导读者了解及搭建基本环境,由浅入深地引导读者开展Hadoop的相关学习。本书结合实例,给出详细的代码,实例代码演示中所涉及的环境在相关章节中有多处说明,读者可根据自身实际情况进行参考。
由于写作仓促且作者水平有限,本书难免存在不足,恳请各位专家、学者、读者批评指正。
作 者
2019年4月
|
|