分享

获取hive作业实体

zcfightings 发表于 2016-9-18 18:58:19 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 3 7211
背景:java代码通过hiveserver向集群提交hql查询,查询转化为mr job。
目的:想通过jobid获取job实体(jobid已经从日志中解析出来)
方法:
         加载配置文件(hadoop-core。xml  hive-site。xml)
          jobclient根据jobid 获取runningjob实体


问题:每次获取的runningjob都为null


求高手指导
        

已有(3)人评论

跳转到指定楼层
arsenduan 发表于 2016-9-18 19:35:46
那就是没有获取成功,楼主是怎么获取的。
代码是怎么实现的,又是怎么嵌入的
回复

使用道具 举报

zcfightings 发表于 2016-9-18 19:38:10
arsenduan 发表于 2016-9-18 19:35
那就是没有获取成功,楼主是怎么获取的。
代码是怎么实现的,又是怎么嵌入的

Configuration conf = ConfigUtil.getConf();
conf.set("mapred.job.tracker", "ip:port");
JobClient client;
try {
    client = new JobClient(new JobConf(conf));
    return client.getJob(jobId);
} catch(IOException e){
    e.printStackTrace();
}return null

基本是按上面这个代码来的 我感觉可能是没有嵌入好
回复

使用道具 举报

arsenduan 发表于 2016-9-18 19:52:39
zcfightings 发表于 2016-9-18 19:38
Configuration conf = ConfigUtil.getConf();
conf.set("mapred.job.tracker", "ip:port");
JobClient  ...

嵌入点还是比较重要的。最好能在实例化的地方嵌入。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条