机器学习和生物信息学实验室联盟

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3493|回复: 4
打印 上一主题 下一主题

Hadoop编程实战步步进阶

[复制链接]
跳转到指定楼层
楼主
发表于 2014-1-12 15:15:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 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.
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享
回复

使用道具 举报

沙发
 楼主| 发表于 2014-1-12 15:24:40 | 只看该作者
一点提纲,欢迎大伙补充下。
http://git.oschina.net/tangzk/mralgos
这上面有部分可运行的源码程序,请多更正错误和提出建议,可直接fork & commit。
回复 支持 反对

使用道具 举报

板凳
发表于 2014-1-13 09:55:49 | 只看该作者
我停留在浅层概念很久了。
有进阶路线图和算法源代码供学习真是太好了。
打了星号部分后面会展开来指导吗?
回复 支持 反对

使用道具 举报

地板
发表于 2014-4-10 13:36:00 | 只看该作者
支持并学习
回复 支持 反对

使用道具 举报

5#
发表于 2014-4-29 22:01:03 | 只看该作者
貌似公司里更喜欢用hadoop streaming。。可能大家都不一定用java。用streaming处理日常任务方便,时效。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

机器学习和生物信息学实验室联盟  

GMT+8, 2024-5-19 21:51 , Processed in 0.071219 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表