¿Cuál es la diferencia básica entre jobconf y job?

Hola, quería saber la diferencia básica entre JobConf y los objetos de trabajo. Actualmente, estoy enviando mi trabajo de esta forma.

JobClient.runJob(jobconf);

Vi otra forma de enviar trabajos como este

Configuration conf = getConf();
Job job = new Job(conf, "secondary sort");
job.waitForCompletion(true);     
return 0;

y ¿cómo puedo especificar la clase sortcomparator para el trabajo usando jobconf?

¿Alguien me puede explicar este concepto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta