我的定位:中高级人才(框架熟练、Java语法精通、数据库会用、Linux会用、中间件会用、有大数据经验!)
开始,我以为自己什么都知道。后来发现,其实我什么都不知道。

MapReduce01

================== Hadoop内核 | MapReduce(分布式计算框架) ==================

源于Google的MapReduce论文 ---------->

√发表于2004年12月

√Hadoop MapReduce是Google MapReduce克隆版

MapReduce特点 ---------->

√良好的扩展性

√高容错性

√适合PB级以上海量数据的离线处理

 

 ===================== WordCount问题 =====================

场景:有大量文件,里面存储了单词,且一个单词占一行

任务:如何统计每个单词出现的次数?

类似应用场景:

√搜索引擎中,统计最流行的K个搜索词

√统计搜索词频率,帮助优化搜索词提示

 

Case 1:整个文件可以加载到内存中;

√sort datafile | uniq -c 

Case 2:文件太大不能加载到内存中,但<word,count>可以存放到内存中;

Case 3:文件太大无法加载到内存中,且 <word,count>也不行

将问题范化为:有一批文件(规模为TB级或 者 PB级),如何统计这些文件中所有单词出 现的次数; 

方案:首先,分别统计每个文件中单词出现 次数,然后累加不同文件中同一个单词出现 次数;

典型的MapReduce过程。

 

Worcount问题—MR解决过程

 

 

posted @ 2017-06-25 13:12  想太多先森  阅读(140)  评论(0编辑  收藏  举报