В моем приложении hadoop мне нужно сообщить значение (давайте время, когда обработчик переделан), обратно в программу драйвера. Как я могу это сделать?Как сообщить значение обратно драйверу из карты?
1
A
ответ
3
Возможно, вам удастся получить такую информацию, просмотрев различные отчеты, созданные Hadoop, для любой работы по созданию карты.
В общем, вы можете передать информацию обратно водителю с помощью счетчиков. В вашем картографа вы можете сделать что-то вроде:
context.getCounter("records", "last_seen").setValue(System.currentTimeMillis());
, а затем прочитать его от водителя, как:
job.getCounters().getGroup("records").findCounter("last_seen").getValue();
Где именно в драйвере я могу получить его? Я хотел бы получить его, когда mappers сделаны. Где я должен поставить водителя? –
рядом, скажем, каждый картограф устанавливает другое значение для COUNTER. Как я могу получить максимальное значение? –
Где-то после job.waitForCompletion (true); –