大數據教程(13.4)azkaban實例演示

    上一章節,介紹了azkaban的簡介、安裝相關的知識;本篇博客博主將爲小夥伴們分享azkaban的一些案例來幫助熟悉其使用。java

    Azkaba內置的任務類型支持command、java;node

    1、command類型單一job示例web

          (1)、建立job描述文件sql

建立文件command.job,添加以下內容:
#command.job
type=command
command=echo 'hello aaron'

          (2)、將job資源文件打包成zip文件apache

command.zip

          (3)、經過azkaban的web管理平臺建立project並上傳job壓縮包安全

首先建立project

上傳zip包

啓動執行該job

執行結果

    2、Command類型多job工做流flow服務器

        一、建立有依賴關係的多個job描述
             第一個job:foo.jobapp

# foo.job
type=command
command=echo foo

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

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

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

        三、在azkaban的web管理界面建立工程並上傳zip包
        四、啓動工做流flow

        五、效果圖

    3、HDFS操做任務

           一、建立job描述文件

# fs.job
type=command
command=/home/hadoop/apps/hadoop-2.9.1/bin/hadoop fs -mkdir /azaz

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

           三、經過azkaban的web管理平臺建立project並上傳job壓縮包
           四、啓動執行該job

    4、MAPREDUCE任務

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

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

# mrwc.job
type=command
command=/home/hadoop/apps/hadoop-2.9.1/bin/hadoop  jar hadoop-mapreduce-examples-2.9.1.jar wordcount /wordcount/input /wordcount/azout

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

           三、經過azkaban的web管理平臺建立project並上傳job壓縮包
           四、啓動執行該job

    5、HIVE腳本任務

           一、建立job描述文件和hive腳本

                Hive腳本: test.sql

use default;
drop table aztest;
create table aztest(id int,name string) row format delimited fields terminated by ',';
load data inpath '/aztest/hiveinput' into table aztest;
create table azres as select * from aztest;
insert overwrite directory '/aztest/hiveoutput' select count(1) from aztest;

                Job描述文件:hivef.job

# hivef.job
type=command
command=/home/hadoop/apps/apache-hive-1.2.2-bin/bin/hive -f 'test.sql'

           二、將全部job資源文件打到一個zip包中
           三、在azkaban的web管理界面建立工程並上傳zip包
           四、啓動job
           五、執行效果

   注意:博主在執行hdfs命令是報錯,hadoop集羣一直處於safe mode

   經分析,多是由於:因爲系統斷電,內存不足等緣由致使dataNode丟失超過設置的丟失百分比,系統自動進入安全模式;解決方案以下:

一、查看namenode是不是安全狀態
hadoop dfsadmin -safemode get  
Safe mode is OFF  
二、進入安全模式(hadoop啓動時30秒內是安全狀態)
hadoop dfsadmin -safemode enter  
Safe mode is ON  
三、離開安全模式
hadoop dfsadmin -safemode leave  
Safe mode is OFF  

步驟1 執行命令退出安全模式:
hadoop dfsadmin -safemode leave
步驟2 執行健康檢查,刪除損壞掉的block。  
hdfs fsck  /  -delete

     最後寄語,以上是博主本次文章的所有內容,若是你們以爲博主的文章還不錯,請點贊;若是您對博主其它服務器大數據技術或者博主本人感興趣,請關注博主博客,而且歡迎隨時跟博主溝通交流。

相關文章
相關標籤/搜索