Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java MapReduce以编程方式获取当前作业ID_Java_Hadoop_Mapreduce_Hdfs - Fatal编程技术网

Java MapReduce以编程方式获取当前作业ID

Java MapReduce以编程方式获取当前作业ID,java,hadoop,mapreduce,hdfs,Java,Hadoop,Mapreduce,Hdfs,在我给 JobClient.runJob(jobConf) 如何获取此MapReduce任务的JobID 我见过下面这样的代码,但它返回所有当前正在运行的作业ID System.out.println("Printing job IDs..."); JobClient client = new JobClient(jobConf); JobStatus[] status = client.getAllJobs(); for(int i = 0; i < status.length; i++

在我给
JobClient.runJob(jobConf)

如何获取此MapReduce任务的JobID

我见过下面这样的代码,但它返回所有当前正在运行的作业ID

System.out.println("Printing job IDs...");
JobClient client = new JobClient(jobConf);
JobStatus[] status = client.getAllJobs();
for(int i = 0; i < status.length; i++){
    if(!status[i].isJobComplete()){
        JobID jobid = status[i].getJobID();
        System.out.println(jobid.toString());
    }
}

SubmitJob似乎起到了作用

JobClient client = new JobClient(jobConf);
RunningJob currentJob = client.submitJob(jobConf);
System.out.println("JobID: " + currentJob.getID().toString());

要在作业运行时获取作业id的值,可以在新API中使用以下代码:

int value=job.waitForCompletion(true)?0 : 1;

JobID JobID=job.getJobID()

//使用jobId的逻辑


返回值

如果它有效,接受你的答案,这样别人就会看到它是如何对你起作用的。
JobClient client = new JobClient(jobConf);
RunningJob currentJob = client.submitJob(jobConf);
System.out.println("JobID: " + currentJob.getID().toString());