I want to set up different class value for Map Output and Reduce Output. I
have some following code in the program:
conf. setMapOutputValueClass(IntWritable.class);
conf.setOutputValueClass(Text.class);
conf.setMapperClass(myMap.class);
conf.setCombinerClass(myReduce.class);
conf.setReducerClass(myReduce.class);
Both myMap and myReduce is implemented from map and reduce separately.
The code compiled successfully but error come out when running, looks like
something happened in the combiner as below:
---------------------------------------------------------------------------------------------------------
ava.io.IOException: Job failed!
at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:1062)
at DFS_InDegree.main(DFS_InDegree.java:106)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.util.RunJar.main(RunJar.java:155)
at org.apache.hadoop.mapred.JobShell.run(JobShell.java:194)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:79)
at org.apache.hadoop.mapred.JobShell.main(JobShell.java:220)
------------------------------------------------------------------------------------------------------------------
Could anyone give me some idea? I think i am getting close. Thanks.