阿里云
发表主题 回复主题
  • 467阅读
  • 6回复

MapReduce设置reduce任务为0运行结果解析

级别: 小白
发帖
0
云币
-27







最近在学习mapreduce的shuffle机制,讲解的很多,但是如果没有reduce运行会怎么样的结果,并没有找到相关的案例,所以自己做了个测试,把结果分享一下,以wordcount为例,先来大致总结下分析的结果:

如果设置reducer任务数为0,map端不会执行combiner,sort,merge操作,会直接输出无序结果(读一行,输一行),输出的文件数量,与map task的数量匹配(一个Input split对应一个map task)。


MapReduce设置reduce任务为0运行结果解析-mapreduce reduce数量


wordcount-1.png (17.12 KB, 下载次数: 41)



下载附件

 保存到相册



2015-5-31 17:44 上传









wordcount main方法中的设置,设置有combiner,reduce任务为0.


MapReduce设置reduce任务为0运行结果解析-mapreduce 没有reduce


wcout.png (36.31 KB, 下载次数: 12)



下载附件

 保存到相册



2015-5-31 17:40 上传









输入参数的三个文件,map的结果输出为三个文件,而且并没有对单词排序和combiner.



级别: *
发帖
*
云币
*
MapReduce设置reduce任务为0运行结果解析-mapreduce 多个reduce 没有做的原因,combiner其实是reduce
级别: *
发帖
*
云币
*
Alkaloid0515 发表于 2015-6-3 09:45

敢问楼主是如何调试的,有没有文章推荐下



http://www.aboutyun.com/thread-12705-1-1.html


这里是远程调试mapreduce,可以看看

级别: *
发帖
*
云币
*
轩辕依梦Q 发表于 2015-6-3 09:31

昨天跟踪了一下MapTask的源码,源码还是最能说明问题的,当设置reduce任务为0时,代码走的是直接输出的逻 ...


MapReduce设置reduce任务为0运行结果解析-mapreduce map reduce敢问楼主是如何调试的,有没有文章推荐下
级别: *
发帖
*
云币
*
Alkaloid0515 发表于 2015-6-3 09:45

敢问楼主是如何调试的,有没有文章推荐下



可以在linux下的eclipse里,跑本地模式,分析文件放在hdfs上,就可以正常使用debug了。远程debug比较麻烦,我没有试过mr的远程debug.你可以在网上搜索下相关文件,才疏学浅,我也没有整理相关的文章。MapReduce设置reduce任务为0运行结果解析-mapreduce reduce数量
级别: *
发帖
*
云币
*
如果只想让combiner运行可以通过

job.setCombinerClass(XX.class);

//job.setReducerClass(XX.class);

//job.setNumReduceTasks(0);

由于combiner底层是reducer所以combiner的执行结果也把结果输出到一个文件中
级别: *
发帖
*
云币
*


昨天跟踪了一下MapTask的源码,源码还是最能说明问题的,当设置reduce任务为0时,代码走的是直接输出的逻辑,这里的输出不会经过缓存,直接输出到磁盘中。

只有当reduce任务数大于0时,才会执行正常的分区,排序等逻辑
MapReduce设置reduce任务为0运行结果解析-mapreduce reduce


12.jpg (55.74 KB, 下载次数: 20)



下载附件

 保存到相册



2015-6-3 09:12 上传








发表主题 回复主题
« 返回列表
«12345678910»
共10页
上一主题下一主题

限100 字节
如果您提交过一次失败了,可以用”恢复数据”来恢复帖子内容
 
验证问题: 46 + 11 = ?
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)

      版权声明

      开发者论坛为你提供“MapReduce设置reduce任务为0运行结果解析”的内容,论坛中还有更多关于 “MapReduce设置reduce任务为0运行结果解析” 的内容供你使用,该内容是网友上传,与开发者论坛无关,如果需要删除请联系zixun-group@service.aliyun.com,工作人员会在5个工作日内回复您。