Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。我看过很多相关的资料,但每次看完都云里雾里的绕着,很难理清大致的逻辑,反而越搅越混。前段时间在做MapReduce job 性能调优的工作,需要深入代码研究MapRedu...
分类:
其他好文 时间:
2014-09-09 11:33:18
阅读次数:
207
前言接触Hadoop有两年的时间了,期间遇到很多的问题,既有经典的NameNode和JobTracker内存溢出故障,也有HDFS存储小文件问题,既有任务调度问题,也有MapReduce性能问题.遇到的这些问题有些是Hadoop自身的缺陷(短板),有些则是使用的不当。在解决问题的过程中,有时需要翻源...
分类:
其他好文 时间:
2014-09-07 14:46:55
阅读次数:
449
一切都是从最上方的user program开始的,user program链接了MapReduce库,实现了最基本的Map函数和Reduce函数。MapReduce库先把user program的输入文件划分为M份(M为用户定义),每一份通常有16MB到64MB,如图左方所示分成了split0~4(...
分类:
其他好文 时间:
2014-09-05 23:46:02
阅读次数:
253
hadoop分散磁盘I/O配置dfs.data.dir,将其值配置为多块磁盘<key>dfs.data.dir</key><value>/data/data1,/data/data2,/data/data3</value>####假设多块磁盘被挂在以上目录中2.mapreduce中间数据临时文件分散写老的配置参数为,mapred.local.dir,新配置..
分类:
其他好文 时间:
2014-09-05 16:25:12
阅读次数:
163
Cloudera提供给客户的服务内容之一就是调整和优化MapReduce job执行性能。MapReduce和HDFS组成一个复杂的分布式系统,并且它们运行着各式各样用户的代码,这样导致没有一个快速有效的规则来实现优化 代码性能的目的。在我看来,调整cluster或job的运行更像一个医生对待病人....
分类:
其他好文 时间:
2014-09-05 12:42:31
阅读次数:
307
Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。我看过很多相关的资料,但每次看完都云里雾里的绕着,很难理清大致的逻辑,反而越搅越混。前...
分类:
其他好文 时间:
2014-09-04 22:26:00
阅读次数:
346
Hadoop1的HDFS和Mapreduce在高可用和拓展性方面存在问题。 HDFS存在的问题: Namenode单点故障,难以应用于在线场景。 Namenode压力过大,且内存受限,影响系统扩展性。 Mapreduce存在问题: Jobtracker单点故障 ...
分类:
其他好文 时间:
2014-09-04 10:40:49
阅读次数:
254
在上一节我们分析了Child子进程启动,处理Map、Reduce任务的主要过程,但对于一些细节没有分析,这一节主要对MapOutputBuffer这个关键类进行分析。MapOutputBuffer顾名思义就是Map输出结果的一个Buffer,用户在编写map方法的时候有一个参数OutputColle...
分类:
其他好文 时间:
2014-09-04 01:28:16
阅读次数:
416
参考:http://hadoop.apache.org/docs/r2.5.0/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.htmlMaven和WordCount代码: ...
分类:
其他好文 时间:
2014-09-03 19:45:17
阅读次数:
270