hi i wanted to know the basic difference between jobconf and job objects,currently i am submitting my job like this
JobClient.runJob(jobconf);
i saw other way of submitting jobs like this
Configuration conf = getConf();
Job job = new Job(conf, "secondary sort");
job.waitForCompletion(true);
return 0;
and how can i specify the sortcomparator class for the job using jobconf?
can any one explain me this concept?
JobConf is the primary interface for a user to describe a map-reduce job to the Hadoop framework for execution. The framework tries to faithfully execute the job as-is described by JobConf , however: Some configuration parameters might have been marked as final by administrators and hence cannot be altered.
Here is an example on how to configure a job via JobConf : // Create a new JobConf JobConf job = new JobConf(new Configuration(), MyJob. class); // Specify various job-specific parameters job. setJobName("myjob"); FileInputFormat.
In short: JobConf
and everything else in the org.apache.hadoop.mapred
package is part of the old API used to write hadoop jobs, Job
and everything in the org.apache.hadoop.mapreduce
package is part of the new and preferred API to write hadoop jobs. Both APIs generally provide equivalent core functionality.
If you're new to hadoop just start using the new API (i.e. Job
and Configuration
instead of JobConf
). Make sure to not import anything from the mapred
package. When you find examples on the internet using the old API you can use this presentation or this guide to translate it to the new API.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With