|
本帖最后由 tangzk 于 2014-1-12 15:20 编辑
本篇主要是针对Hadoop MapReduce编程的学习整理,涉及针对MapReduce编程常用的编程思路及经典范例,另外也有Hadoop平台相关的内容,但暂时不涉及对Hadoop的底层运行细节的深入。
一、Hadoop编程基础
1. MapReduce工作原理 ★
2. Hadoop Job运行基本流程 ★
3. Hadoop开发环境搭建 ★
4. 程序范例(1)-WordCount ★
• 统计文档中单词的出现次数
5. 自定义Hadoop数据类型 ★
• 自定义复合Key/Value类型,
6. 程序范例(2)-Sum, Average,Min/Max ★
• 基本统计量,使用单个Job完成
二、Hadoop编程进阶
1. 程序范例(3)-文本模型TF/IDF ★★
• 针对文档集,生成其对应的TF/IDF模型
2. 自定义Partitioner、GroupComparator
• 自定义Partitioner,完成输出定制、负载均衡等任务
• 自定义GroupComparator,完成输出分组任务
3. 程序范例(4)-二次排序 ★★
• 按多个关键字排序
4. 程序范例(5)-关联Join操作 ★★★
• 针对两个输入表,在给定key上完成Join操作
5. 程序范例(6)-并行BFS(Breadth First Search) ★★★★
• 基于图上的并行宽度优先搜索策略
6. 程序范例(7)-单源点最短路径 ★★★★
• 基于图上的单源点最短路径算法
7. 程序范例(8)-PageRank ★★★
• 基于图的PageRank算法
8. 程序范例(9)-KMeans ★★★★
• KMeans算法
9. Hadoop程序优化 ★★★
• 增加本地Combiner
• 使用RawComparator
• 使用DistributedCache
• 压缩输出
10. Hadoop程序调试 ★★
• 使用Counter查看输出结果
• 使用日志跟踪调试
• 开发单元测试
三、Hadoop编程高级内容
1. 自定义输入输出格式 ★★★★
• 自定义InputFormat
• NLineInputFormat
• XmlInputFormat
2. Hadoop性能优化 ★★★★★
• ?
3. Hadoop源码分析 ★★★★★
• ?
参考
1. J. Dean and S. Ghemawat, “MapReduce: Simplified data processing on large clusters,” Commun. ACM, vol. 51, no. 1, pp. 107–113, 2008.
2. T. White, Hadoop权威指南(第二版). Yahoo Press, 2010.
3. Chuck Lam(著), 韩冀中(译), Hadoop实战. 人民邮电出版社, 2011.
4. J. Lin and C. Dyer, Data-intensive text processing with MapReduce, vol. 3, no. 1. Morgan & Claypool Publishers, 2010, pp. 1–177.
5. Ilya Katsov(著), nosqlfan(译), MapReduce的模式、算法和用例. http://blog.nosqlfan.com/html/4179.html, 2013.
6. Amund Tveit, Mapreduce & Hadoop Algorithms in Academic Papers (3rd update). http://atbrox.com/2010/05/08/map ... rs-may-2010-update/, 2010.
|
|