更新时间:2024-08-03 GMT+08:00

Oozie样例程序开发思路

开发流程

  1. 工作流配置文件“workflow.xml”“coordinator.xml”是对工作流进行调度,“bundle.xml”是对一组coordinator进行管理)与“job.properties”
  2. 如果有实现代码,需要开发对应的jar包,例如Java Action;如果是Hive,则需要开发SQL文件。
  3. 上传配置文件与jar包(包括依赖的jar包)到HDFS,上传的路径取决于workflow.xml中的oozie.wf.application.path配置的路径。
  4. 提供三种方式对工作流进行操作,详情请参见Oozie应用开发常见问题
    • Shell命令
    • Java API
    • Hue
  5. Oozie客户端提供了比较完整的examples示例供用户参考,包括各种类型的Action,以及Coordinator以及Bundle的使用。以客户端安装目录为“/opt/client”为例,examples具体目录为“/opt/client/Oozie/oozie-client-*/examples”。

如下通过一个Mapreduce工作流的示例演示如何配置文件,并通过Shell命令调用。

场景说明

假设存在这样的业务需求:

每天需要对网站的日志文件进行离线分析,统计出网站各模块的访问频率(日志文件存放在HDFS中)。

通过客户端中模板与配置文件提交任务。