📘 MapReduce · 编程模型与性能优化

🎓 友好 · 30章完整目录
01 MapReduce概述
分布式计算背景 设计思想 Hadoop生态定位
02 核心编程模型
Map阶段详解 Reduce阶段 Shuffle机制
03 开发环境搭建
Hadoop集群安装 Eclipse/IDEA配置 Maven构建
04 WordCount实战
需求分析 Mapper实现 Reducer/Driver
05 序列化机制
Writable接口 自定义序列化 性能对比
06 分区与分组
Partitioner原理 自定义分区 分组比较器
07 Combiner优化
Combiner作用 使用场景 与Reducer区别
08 排序机制
二次排序 全排序/部分排序 自定义排序
09 Join操作
Map端Join Reduce端Join 优化策略
10 计数器与状态
自定义计数器 任务状态监控 日志分析
11 数据倾斜
倾斜原因分析 采样与分区优化 Combiner缓解
12 小文件问题
小文件危害 CombineTextInputFormat SequenceFile合并
13 压缩技术
压缩格式对比 对性能影响 最佳实践
14 推测执行
推测执行原理 配置参数 适用场景
15 任务调度
FIFO调度器 容量调度器 公平调度器
16 内存优化
Map/Reduce内存配置 JVM调优 GC优化
17 网络优化
网络拓扑感知 机架感知 数据本地性
18 磁盘I/O优化
I/O缓冲区 异步I/O SSD使用
19 MapReduce 2.0
YARN架构 MR on YARN 资源管理
20 性能监控
JobHistoryServer Web UI Metrics系统
21 调优工具
Hadoop自带工具 Ganglia Nagios集成
22 实战案例1 · 日志分析
系统设计 ETL流程 数据清洗
23 实战案例2 · 倒排索引
倒排索引构建 TF-IDF计算 搜索引擎基础
24 实战案例3 · PageRank
PageRank算法 迭代计算 收敛判断
25 实战案例4 · K-Means
K-Means聚类 迭代MapReduce 中心点更新
26 实战案例5 · 推荐系统
协同过滤 用户相似度 TopN推荐
27 实战案例6 · 图计算
邻接表表示 BFS遍历 大规模图
28 实战案例7 · 时间序列
滑动窗口 趋势预测 时间序列分析
29 实战案例8 · 去重与排序
数据去重 全排序优化 TopK问题
30 总结与展望
MapReduce局限性 Spark对比 未来趋势