`
fighting_2013
  • 浏览: 15508 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Oozie Java代码运行Job

阅读更多
相关代码:
OozieClient oozieClient = new OozieClient("http://namenode:11000/oozie");
Properties conf = oozieClient.createConfiguration();
conf.setProperty(OozieClient.APP_PATH, "hdfs://namenode:49000/user/hadoop/examples/apps/map-reduce-1");
conf.setProperty("jobTracker", "namenode:49001");
conf.setProperty("nameNode", "hdfs://namenode:49000");
conf.setProperty("queueName", "default");
conf.setProperty("examplesRoot", "examples");
conf.setProperty("outputDir", "map-reduce-out-001");
try {
    String jobId = oozieClient.run(conf);
    System.out.println("workflow job has submitted");
    while (WorkflowJob.Status.RUNNING ==    oozieClient.getJobInfo(jobId).getStatus()) {
    System.out.println("workflow job running");
    Thread.sleep(10 * 1000);
    }
    System.out.println("workflow job completed");
    System.out.println(oozieClient.getJobInfo(jobId));
} catch (Exception e) {
    System.out.println("Errors");
    e.printStackTrace();
}
也可以加载相关的job.properties文件
OozieClient oozieClient = new OozieClient("http://namenode:11000/oozie");
Properties conf = oozieClient.createConfiguration();
conf.setProperty(OozieClient.APP_PATH, "hdfs://namenode:49000/user/hadoop/examples/apps/map-reduce-1");
InputStream inStream = null;
try {
     inStream=MyClient002.class.getClassLoader().getResourceAsStream(
     "job/job.properties");
    conf.load(inStream);
    String jobId = oozieClient.run(conf);
    System.out.println("workflow job has submitted");
    while (WorkflowJob.Status.RUNNING == oozieClient.getJobInfo(jobId).getStatus()) {
    System.out.println("workflow job running");
    Thread.sleep(10 * 1000);
    }
    System.out.println("workflow job completed");
    System.out.println(oozieClient.getJobInfo(jobId));
} catch (Exception e) {
    System.out.println("Errors");
    e.printStackTrace();
} finally {
    if (null != inStream) {
try {
    inStream.close();
} catch (IOException e) {
    e.printStackTrace();
}
    }
}
分享到:
评论

相关推荐

    Oozie之JavaAction测试实例

    **JavaAction**是Oozie提供的一个特殊功能,允许用户编写Java程序来实现自定义逻辑,这些Java程序可以在Hadoop集群中以MapReduce作业的形式运行。JavaAction特别适合那些需要更灵活控制逻辑或者进行特定数据处理的...

    OOZIE 配置和调度流程(1).doc

    * 运行作业:oozie job -oozie http://localhost:11000/oozie -start job-id * 暂停作业:oozie job -oozie http://localhost:11000/oozie -suspend job-id * 杀死作业:oozie job -oozie ...

    Oozie的安装与配置.docx

    - 在Oozie源代码目录下,运行`bin/mkdistro.sh -DskipTests -Dhadoop.version=2.4.1`命令,跳过测试阶段,指定Hadoop版本为2.4.1。首次编译可能需要较长时间,因为Maven会自动下载依赖的jar包。 4. **解决编译错误...

    Apache Hadoop---Oozie.docx

    Oozie 的Action执行模型确保了用户代码的安全执行,Oozie Server不直接运行用户代码,而是通过一个启动作业(launcher job)来执行Action。这个启动作业是一个只包含Map阶段的MapReduce作业,它不知道具体的执行环境...

    maven,oozie,pig LINUX 环境搭建.docx

    5. **运行Oozie测试** 编写一个简单的WorkFlow(工作流),并上传至HDFS上。例如: ```bash oozie job -oozie http://localhost:11000/oozie -config /path/to/workflow.xml ``` 6. **解决常见问题** 如果...

    Oozie的使用

    Oozie与Hadoop生态系统紧密集成,支持调度Hadoop的MapReduce、Pig、Hive、Sqoop等任务,以及Shell命令和Java程序。下面将详细介绍如何使用Oozie进行不同类型的作业调度。 1. **Oozie调度Shell脚本** - **解压官方...

    工作流调度系统

    而ActionNodes则执行具体的任务,比如HDFS操作、MapReduce作业、Pig任务、Hive查询、Sqoop导入导出、Java代码执行、SSH命令执行、发送电子邮件以及嵌套的子工作流等。 特别地,Oozie引入了Coordinator和Bundle的...

    定时任务实现

    此外,分布式系统中可能会用到分布式定时任务,如Elasticsearch的Curator或Apache Hadoop的Oozie,它们可以协调多节点的任务执行,确保高可用性和一致性。 在项目Manager中,定时任务可能用于处理如数据同步、用户...

    azkaban 2.5.0安装包

    主要的配置文件是`azkaban.properties`,需要根据你的系统环境进行适当修改,如设置数据库连接信息、Java运行环境参数等。 3. **数据库设置**:Azkaban支持多种数据库,如MySQL、PostgreSQL等,用于存储工作流和...

    hue-3.9.0-cdh5.9.3.tar.gz

    此外,确保系统满足Hue的硬件和软件要求,例如Python版本、Java运行时环境等。 总之,"hue-3.9.0-cdh5.9.3.tar.gz"是用于在CDH 5.9.3环境中部署和使用的Hue的压缩包,它为大数据分析提供了一套直观的Web界面,简化...

Global site tag (gtag.js) - Google Analytics