第2節 azkaban調度:一、azkaban的調度任務使用

2.4 Azkaban實戰

Azkaba內置的任務類型支持command、javajava

 

Command類型單一job示例

建立job描述文件

建立文本文件,更更名稱爲mycommand.jobweb

注意後綴.txt必定不要帶上,保存爲格式爲UFT-8 without bomsql

內容以下oop

type=commandspa

command=echo 'hello world'3d

 

 

將job資源文件打包成zip文件

 

 

建立project並上傳壓縮包

經過azkaban的web管理平臺建立project並上傳job壓縮包orm

首先建立projectserver

 

上傳zip包blog

 

啓動執行job

 

 

Command類型多job工做流flow

一、建立有依賴關係的多個job描述crontab

第一個job:foo.job

type=command

command=echo 'foo'

第二個job:bar.job依賴foo.job

type=command

dependencies=foo

command=echo 'bar'

 

二、將全部job資源文件打到一個zip包中

 

 

三、在azkaban的web管理界面建立工程並上傳zip包

四、啓動工做流flow

 

HDFS操做任務

一、建立job描述文件fs.job

type=command

command=/export/servers/hadoop-2.6.0-cdh5.14.0/bin/hadoop fs -mkdir /azkaban

二、將job資源文件打包成zip文件

 

三、經過azkaban的web管理平臺建立project並上傳job壓縮包

四、啓動執行該job

 

 

 

MAPREDUCE任務

Mr任務依然能夠使用command的job類型來執行

一、建立job描述文件,及mr程序jar包(示例中直接使用hadoop自帶的example jar)

type=command

command=/export/servers/hadoop-2.6.0-cdh5.14.0/bin/hadoop jar hadoop-mapreduce-examples-2.6.0-cdh5.14.0.jar pi 3 5

 

二、將全部job資源文件打到一個zip包中

 

 

三、在azkaban的web管理界面建立工程並上傳zip包

四、啓動job

HIVE腳本任務

l  建立job描述文件和hive腳本

Hive腳本: hive.sql

create database if not exists azhive;

use azhive;

create table if not exists aztest(id string,name string) row format delimited fields terminated by '\t';

Job描述文件:hive.job

type=command

command=/export/servers/hive-1.1.0-cdh5.14.0/bin/hive -f 'hive.sql'

 

將全部job資源文件打到一個zip包中

 

在azkaban的web管理界面建立工程並上傳zip包

啓動job

 

azkaban的定時任務

使用azkaban的scheduler功能能夠實現對咱們的做業任務進行定時調度功能

 

 

 

 

*/1 * ? * *  每分鐘執行一次定時調度任務

0 1 ? * *  天天晚上凌晨一點鐘執行這個任務

0 */2 ? * *  每隔兩個小時定時執行這個任務

30 21 ? * * 天天晚上九點半定時執行這個任務

注:能夠網上搜索在線crontab表達式生成器。

相關文章
相關標籤/搜索