当前位置: 首页 > 面试题库 >

如何根据当前正在运行的作业ID检索hadoop作业配置?

赖杰
2023-03-14
问题内容

如果我知道作业ID,有什么方法可以检索作业配置(配置中的某些属性)?

基本上,我正在做的是检查当前是否有任何正在运行的作业,然后我要检查当前正在运行的任何作业中是否存在某些属性值?

用于检索当前正在运行的作业的部分代码

    JobConf jobConf = new JobConf(conf);
    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());
        }
    }

问题答案:

您可以在作业跟踪器中查看正在运行的作业的配置,该配置通常在端口50030上运行。



 类似资料:
  • 在浏览了spring文档之后,在我的代码中。 我面临的问题是,有时工作的终止是发生在预期和其他时间终止工作是不发生的。实际上,每次调用joboperator上的stop时,它都在更新BATCH_JOB_EXECUTION表。当终止成功发生时,作业的状态将通过杀死批处理过程中的jobExecution更新为STOPPED。其他失败的时候,它会完成批处理的其他不同流,并将BATCH_JOB_EXECU

  • 我想检查Quartz作业是否正在运行。我发现它可以使用调度程序。getCurrentlyExecutingJobs()。但是我对此感到困惑,我应该把它放在哪里才能得到结果呢?谢谢

  • 很长一段时间以来,我一直很头疼,目前我的hadoop集群是这样的,我有40个salve节点要运行,每个从节点我配置了25个映射器和10个简化器,所以我可以同时启动40*25=1000个映射器和400个简化器。好的,现在我有以下工作: job1:我配置为运行5个映射器和5个简化器job2:我配置为运行20个映射器和10个简化器job3:我配置为运行975个映射器和385个简化器 假设我使用默认的FI

  • 我试图在hadoop中运行一个程序,但我一直得到: 线程“main”java.lang.unsupportedClassVersionError:hadoop_project_16/aggregatejob:不支持major.minor版本52.0在java.lang.ClassLoader.DefineClass1(本机方法)在java.lang.ClassLoader.DefineClass(

  • 问题内容: 如何检查计划的Quartz Cron作业是否正在运行?是否有任何API可以进行检查? 问题答案: scheduler.getCurrentlyExecutingJobs()在大多数情况下应该可以工作。但是请记住不要在Job类中使用它,因为它使用ExecutingJobsManager(a JobListener)将正在运行的作业放到HashMap中,该HashMap在作业类之前运行,因

  • 如何检查计划的Quartz cron作业是否正在运行?是否有API进行检查?