Какова основная разница между jobconf и работой?
Привет, я хотел знать основную разницу между jobconf и объектами задания, в настоящее время я отправляю свою работу, как эта
JobClient.runJob(jobconf);
Я видел другой способ отправки таких заданий
Configuration conf = getConf();
Job job = new Job(conf, "secondary sort");
job.waitForCompletion(true);
return 0;
и как я могу указать класс sortcomparator для задания с помощью jobconf?
может ли кто-нибудь объяснить мне это понятие?
Ответы
Ответ 1
Короче: JobConf
и все остальное в пакете org.apache.hadoop.mapred
является частью старого API, используемого для написания заданий hadoop, Job
, и все в пакете org.apache.hadoop.mapreduce
является частью нового и предпочтительного API для писать рабочие задания. Оба API обычно обеспечивают эквивалентную функциональность ядра.
Если вы новичок в hadoop, просто начните использовать новый API (т.е. Job
и Configuration
вместо JobConf
). Обязательно не импортируйте ничего из пакета mapred
. Когда вы найдете примеры в Интернете, используя старый API, вы можете использовать эту презентацию или это руководство, чтобы перевести его к новому API.
Ответ 2
В старой конфигурации задания API выполняется объект JobConf. В новом API конфигурация заданий выполняется через объект конфигурации.
Управление заданиями выполняется через класс Job в новом API, а не в старом
JobClient, который больше не существует в новом API.