azkaban 工作流使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/guohan_solft/article/details/79334344

目录:

一 最简单的使用

1 创建一个job,执行打印输出

vim simple.job
type=command
command=echo 'simple job started'

2 打包成zip

zip simpleJob.zip simple.job

将文件下载到本地

sz simpleJob.zip

3 执行job

3. 1 打开Azkaban的web页面:https://mini1:8443

3. 2 在页面上创建一个project

3. 3 上传压缩包simple.zip

3. 4 执行

3. 5 查看执行日志

二、单个依赖工作流

当前工作流的执行依赖上一个job的执行,即上一个job执行完才能执行当前job

1 创建job1

vim start1.job
type=command
command=echo 'start1 started'

2 创建job2

vim start2.job
type=command
dependecies=start1
command=echo 'start2 started'

3 打包上传执行

三 多个依赖工作流,并行执行

1 创建job1

vim start1.job
type=command
command=echo 'start1 started'

2 创建job2

vim start2.job
type=command
command=echo 'start2 started'

3 创建job3

vim start3.job
type=command
dependecies=start1,start2
command=echo 'start3 started'

注意:start1和start2是并行执行的

3 打包上传执行

四 一个job执行多个命令

使用command.n的形式添加多个命令

vim twoCommand.job
type=command
command=echo 'twoCammandJob started'
command.1=hdfs dfs -mkdir /test1
command.2=hdfs dfs -mkdir /test2

注意:command=这一行千万不可少,否则报错找不到command命令

3 打包上传执行

五、 创建执行map reduce的job

1 准备jar包,

这里以Hadoop自带的单词统计案例为例,jar包在
/usr/local/hadoop-2.6.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar

2 创建job

vim mrJob.job
type=command
command=hadoop jar hadoop-mapreduce-examples-2.6.4.jar wordcount /wordcount/input /wordcount/output

3 准备单词统计文件

vim word.txt
hadoop spark
sqoop hadoop
storm phython

4 将单词统计文件上传到hdfs

hdfs dfs -put word.txt /wordcount/input

5 将mrJob.job和hadoop-mapreduce-examples-2.6.4.jar打包

zip mrJob.zip mrJob.job hadoop-mapreduce-examples-2.6.4.jar

6 下载zip到本地,进入web页面创建新的project,上传zip执行

六 执行hive脚本

1 创建job

vim hiveScript.job
type=command
command=hive -e 'use emp_db; select id,name,age from amp;'

2 打包上传执行

七 执行hive的sql文件

1 创建sql

vim hiveSql.sql
use emp_db;
drop table az_emp;
create table az_emp(id int,name string,age int) row format delimited fields terminated by ',';
load data local inpath '/usr/local/hivedata/az_emp.txt' into table az_emp;
drop table az_emp_test;
create table az_emp_test as select id,name,age from az_emp;
insert overwrite local directory '/usr/local/hivedata/az_emp_output' select id,name,age from az_emp_test;

2 创建job

vim executeSql.job
type=command
command=hive -f 'executeSql.sql'

3 数据准备:创建az_emp.txt

vim az_emp.txt
1,honghong,25
2,lanolin,22
3,juanjuan,20

4 打包

zip executeSql.zip hiveSql.sql excuteSql.job

5 上传执行

猜你喜欢

转载自blog.csdn.net/guohan_solft/article/details/79334344