Я хочу проверить статус работы.Как только это будет завершено, я хочу выполнить другое действие.Проблема в том, что я также хочу проверить, была ли работа убита или прервана, поскольку в hdfs может быть много заданий, и сообщить об этом.
https://www.programcreek.com/java-api-examples/index.php?api=org.apache.hadoop.mapred.JobStatus Перешли по ссылке!Также, пожалуйста, видел исходный код по этой ссылке.
private void printJobAnalysis() {
if (!job.getJobStatus().equals
(JobStatus.getJobRunState(JobStatus.SUCCEEDED))) {
System.out.println("No Analysis available as job did not finish");
return;
}
AnalyzedJob avg = new AnalyzedJob(job);
System.out.println("\nAnalysis");
System.out.println("=========");
printAnalysis(avg.getMapTasks(), cMap, "map", avg.getAvgMapTime(),
10);
printLast(avg.getMapTasks(), "map", cFinishMapRed);
if (avg.getReduceTasks().length > 0) {
printAnalysis(avg.getReduceTasks(), cShuffle, "shuffle",
avg.getAvgShuffleTime(), 10);
printLast(avg.getReduceTasks(), "shuffle", cFinishShuffle);
printAnalysis(avg.getReduceTasks(), cReduce, "reduce",
avg.getAvgReduceTime(), 10);
printLast(avg.getReduceTasks(), "reduce", cFinishMapRed);
}
System.out.println("=========");
}