Azkaban四个应用案例

Azkaban四个应用案例

Azkaba内置的任务类型支持command、java

案例一(单个job)

  1. 创建job描述文件
#command.job
type=command                                                    
command=echo 'hello'

  1. 将job资源文件打包成zip文件
  2. 通过azkaban的web管理平台创建project并上传job压缩包

首先创建project

image

上传zip包

image
  1. 启动执行该job

    image

案例二(多job工作流flow)

  1. 创建有依赖关系的多个job描述

第一个job:foo.job

#foo.job
type=command
command=echo foo

第二个job:bar.job依赖foo.job

# bar.job
type=command
dependencies=foo
command=echo bar

  1. 将所有job资源文件打到一个zip包中
image
  1. 在azkaban的web管理界面创建工程并上传zip包

如果是多对一的依赖关系(如a.job 和b.job都执行成功,c.job需要用到a.job和b.job的结果,a.job 和b.job之间没有依赖关系)

#a.job
type=command
command=echo a
#b.job
type=command
command=echo b
#c.job
type=command
command=echo c
dependencies=a,b

案例三(HDFS操作任务)

  1. 创建job描述文件
# fs.job
type=command
command=/home/hadoop/apps/hadoop-2.6.1/bin/hadoop fs -mkdir /azaz

  1. 将job资源文件打包成zip文件
image
  1. 通过azkaban的web管理平台创建project并上传job压缩包
  2. 启动执行该job

案例四(MAPREDUCE任务)

MR任务依然可以使用command的job类型来执行

  1. 创建job描述文件及mr程序jar包(示例中直接使用hadoop自带的example jar)
# mrwc.job
type=command
command=/home/hadoop/apps/hadoop-2.6.1/bin/hadoop jar hadoop-mapreduce-examples-2.6.1.jar wordcount /wordcount/input /wordcount/azout

  1. 将job资源文件打包成zip文件
image
  1. 通过azkaban的web管理平台创建project并上传job压缩包
  2. 启动执行该job

你可能感兴趣的:(Azkaban四个应用案例)