hadoop MapReduce程序 不包含Reduce的设置

原创 2012年03月26日 22:27:07

hadoop-0.20.2版本:

	    public int run(String[] args) throws Exception {
	        Configuration conf = getConf();
	        
	        JobConf job = new JobConf(conf, TestSdfInputFormat.class);
	        
	        Path in = new Path(args[0]);
	        Path out = new Path(args[1]);
	        FileInputFormat.setInputPaths(job, in);
	        FileOutputFormat.setOutputPath(job, out);
	        
	        job.setJobName("TestSdfInputFormat");
	        job.setMapperClass(MapClass.class);
	        	
	        job.setNumReduceTasks(0);.//设置Reduce个数为0
	        job.setInputFormat(SdfTextInputFormat.class);
	        job.setOutputKeyClass(Text.class);
	        job.setOutputValueClass(Text.class);
	        
	        JobClient.runJob(job);
	        
	        return 0;
	    }


hadoop-1.0.0版本:

		public static void  main(String[] args) throws Exception {
		Job job = new Job();

	        Path out = new Path(args[1]);
	        FileInputFormat.setInputPaths(job, new Path(args[0]));
	        FileOutputFormat.setOutputPath(job, out);	        

	        job.setJobName("TestSdfInputFormat");
	        job.setMapperClass(TargetMapper.class);	        
	        	
	        job.setInputFormatClass(SdfTextInputFormat.class);
	        job.setOutputKeyClass(Text.class);
	        job.setNumReduceTasks(0);//设置个数为0
	        job.setOutputValueClass(Text.class);

	        System.exit(job.waitForCompletion(true)?0:1);
	    }

如果不设置的话,MapReduce会按照默认的Reduce处理。

也可以在mapred-site.xml下设置:

<property>
    <name>mapred.reduce.tasks</name>
    <value>0</value>
</property>

但是不知道应该怎么在eclipse使之生效。


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

hadoop执行mapreduce过程reduce不执行原因

1.如果你的map过程中没有context.write()是不执行reduce过程的; 2.如果你的map过程中context.write()的map后的的部分数据出现问题,不符合reduce接受的...

eclipse下开发mapreduce程序设置reduce个数无效的问题及解决

reduce个数是可以根据集群和项目具体情况设置的,新接口中用job.setNumReduceTasks(n);即可设置,但前几天用eclipse调试mapreduce程序时发现无论设置reduce个...

Hadoop源代码分析(mapreduce.lib.partition/reduce/output)

Map的结果,会通过partition分发到Reducer上,Reducer做完Reduce操作后,通过OutputFormat,进行输出,下面我们就来分析参与这个过程的类。 Mapper的结果,可...

org.apache.hadoop.mapreduce.task.reduce.Shuffle error in shuffle in fetcher

org.apache.hadoop.mapreduce.task.reduce.Shuffle error in shuffle in fetcher 分析及方案

hadoop 中map、reduce数量对mapreduce执行速度的影响

参考 http://blog.csdn.net/npucloud/article/details/6432145

hadoop执行mapreduce任务,能够map,不能reduce,Shuffle阶段报错

第一次运行: [root@sjfx jar]# hadoop jar /home/tangzw/jar/GameLoginLogAnalyzeA.jar /tangzw/input ...

mapreduce程序reduce输出控制

1,在hadoop中,reduce支持多个输出,输出的文件名也是可控的,就是继承MultipleTextOutputFormat类,重写generateFileNameForKey方法 public...

Python+hadoop Streaming编写的Map-Reduce程序与调试运行

Hadoop的 Streaming介绍       Hadoop本身是用Java开发的,程序也需要用Java编写,但是通过Hadoop Streaming,可以使 用任意语言(python、ruby...

Hadoop - Map/Reduce 通过理解org.apache.hadoop.mapreduce.Job类来学习hadoop的执行逻辑

在我的上篇文章“Hadoop - Map/Reduce 通过WordCount例子的变化来了解新版hadoop接口的变化”中,已经跟大家提到,在Hadoop新的版本中,使用org.apache.had...

Windows xp 环境下通过MyEclipse运行hadoop map reduce程序

Windows xp 环境下通过MyEclipse运行hadoop map reduce程序
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)