第1章 Hadoop基础 1
1.1 Hadoop简介 1
1.1.1 Hadoop概述 1
1.1.2 Hadoop项目及其结构 3
1.1.3 Hadoop体系结构 5
1.1.4 Hadoop数据管理 7
1.1.5 Hadoop分布式开发 8
1.1.6 Hadoop计算模型-MapReduce 11
1.1.7 Hadoop集群安全策略 11
1.2 Hadoop的安装与配置 13
1.2.1 在Linux上安装与配置Hadoop 14
1.2.2 在Windows上安装与配置Hadoop 20
1.2.3 安装和配置Hadoop集群 26
1.3 Hadoop的常用插件与开发 40
1.3.1 Hadoop Eclipse的安装环境 40
1.3.2 Hadoop Eclipse的编译步骤 40
1.3.3 Hadoop Eclipse的安装步骤 44
1.3.4 Hadoop Eclipse的使用举例 46
1.4 思考题 47
第2章 MapReduce开发 49
2.1 MapReduce计算模型 49
2.1.1 MapReduce计算模型 49
2.1.2 MapReduce任务的优化 62
2.1.3 Hadoop流 64
2.1.4 Hadoop Pipes 71
2.2 开发MapReduce应用程序 75
2.2.1 系统参数的配置 75
2.2.2 配置开发环境 77
2.2.3 编写MapReduce程序 78
2.2.4 本地测试 82
2.2.5 网络用户界面 83
2.2.6 性能调优 86
2.2.7 MapReduce工作流 90
2.3 MapReduce应用案例 95
2.3.1 单词计数 96
2.3.2 数据去重 103
2.3.3 排序 106
2.3.4 单表关联 110
2.3.5 多表关联 114
2.4 MapReduce工作机制 119
2.4.1 MapReduce作业的执行流程 119
2.4.2 错误处理机制 128
2.4.3 作业调度机制 129
2.4.4 Shuffle和排序 130
2.4.5 任务执行 134
2.5 思考题 137
第3章 Hadoop进阶 138
3.1 Hadoop I/O操作 138
3.1.1 I/O操作中的数据检查 138
3.1.2 数据的压缩 146
3.1.3 数据的I/O序列化操作 148
3.1.4 针对Mapreduce的文件类 162
3.2 Hadoop的管理 174
3.2.1 HDFS文件结构 174
3.2.2 Hadoop的状态监视和管理工具 178
3.2.3 Hadoop集群的维护 196
3.3 下一代MapReduce:YARN 202
3.3.1 MapReduce V2设计需求 202
3.3.2 MapReduce V2主要思想和架构 203
3.3.3 MapReduce V2设计细节 205
3.3.4 MapReduce V2优势 208
3.4 思考题 209
第4章 Hadoop实战 210
4.1 实战一 MapReduce实现推荐系统 210
4.1.1 作业描述 210
4.1.2 作业分析 210
4.1.3 程序代码 213
4.1.4 准备输入数据 221
4.1.5 运行程序 221
4.1.6 代码结果 221
4.2 实战二 使用MapReduce求每年最低温度 223
4.2.1 作业描述 223
4.2.2 程序代码 223
4.2.3 准备输入数据 225
4.2.4 运行程序 226
4.2.5 代码结果 226
参考文献 227