第1章 了解Hadoop MapReduce 1
1.1 MapReduce模型 1
1.2 Hadoop MapReduce概述 3
1.3 Hadoop MapReduce的工作原理 4
1.4 影响MapReduce性能的因素 5
1.5 小结 8
第2章 Hadoop参数概述 9
2.1 研究Hadoop参数 9
2.1.1 配置文件mapred-site.xml 10
2.1.2 配置文件hdfs-site.xml 15
2.1.3 配置文件core-site.xml 18
2.2 Hadoop MapReduce性能指标 19
2.3 性能监测工具 20
2.3.1 用Chukwa监测Hadoop 21
2.3.2 使用Ganglia监测Hadoop 21
2.3.3 使用Nagios监测Hadoop 21
2.4 用Apache Ambari监测Hadoop 22
2.5 小结 23
第3章 检测系统瓶颈 25
3.1 性能调优 25
3.2 创建性能基线 27
3.3 识别资源瓶颈 30
3.3.1 识别内存瓶颈 30
3.3.2 识别CPU瓶颈 31
3.3.3 识别存储瓶颈 32
3.3.4 识别网络带宽瓶颈 33
3.4 小结 34
第4章 识别资源薄弱环节 35
4.1 识别集群薄弱环节 35
4.1.1 检查Hadoop集群节点的健康状况 36
4.1.2 检查输入数据大小 37
4.1.3 检查海量I/O和网络阻塞 38
4.1.4 检查并发任务不足 39
4.1.5 检查CPU过饱和 40
4.2 量化Hadoop集群 41
4.3 正确配置集群 44
4.4 小结 47
第5章 强化map和reduce任务 49
5.1 强化map任务 49
5.1.1 输入数据和块大小的影响 51
5.1.2 处置小文件和不可拆分文件 51
5.1.3 在Map阶段压缩溢写记录 53
5.1.4 计算map任务的吞吐量 55
5.2 强化reduce任务 57
5.2.1 计算reduce任务的吞吐量 58
5.2.2 改善Reduce执行阶段 59
5.3 调优map和reduce参数 60
5.4 小结 64
第6章 优化MapReduce任务 65
6.1 使用Combiner 65
6.2 使用压缩技术 68
6.3 使用正确Writable类型 72
6.4 明智地复用类型 74
6.5 优化mapper和reducer的代码 76
6.6 小结 78
第7章 最佳实践与建议 81
7.1 硬件调优与操作系统推荐 81
7.1.1 Hadoop集群检查表 81
7.1.2 Bios调优检查表 82
7.1.3 OS配置建议 82
7.2 Hadoop最佳实践与建议 83
7.2.1 部署Hadoop 83
7.2.2 Hadoop调优建议 84
7.2.3 使用MapReduce模板类代码 86
7.3 小结 90
展开