亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

基于Azkaban協調時序任務執行的示例分析

發布時間:2022-01-15 11:18:47 來源:億速云 閱讀:107 作者:小新 欄目:大數據

小編給大家分享一下基于Azkaban協調時序任務執行的示例分析,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

一、Azkaban概述

1、任務時序

在數據服務的業務場景中,很常見的業務流程就是日志文件經過大數據分析,再向業務輸出結果數據;在該過程中會有很多任務需要執行,并且很難精準把握任務執行的結束時間,但是又希望整個任務鏈盡快結束釋放資源。

基于Azkaban協調時序任務執行的示例分析

大致執行順序如下:

  • 業務日志文件同步到HDFS文件系統;

  • 經過Hadoop執行分析計算過程;

  • 結果數據在導入數倉進行存儲;

  • 最終需要把數倉內數據同步到業務庫;

這樣的流程不必業務中任務調度,時間基本是可預估的,只要把握留足任務間隔時間即可,大數據的任務鏈路通常需要一個結束直接啟動另一個,以此降低時間成本,初入數據服務公司時,就發生過因為同步任務執行結束但是最后的個別CSV數據文件未生成結束的案例,導致近百萬的分析數據同步更新業務庫失敗。

2、Azkaban簡介

Azkaban是由Linkedin公司推出的可以管理批量工作流任務的調度器,用于在一個工作流內以一個特定的順序運行一組工作和流程。Azkaban使用job配置文件建立任務之間的依賴關系,并提供一個易于使用的web用戶界面維護和跟蹤你的工作流。

Azkaban特點和優勢

  • 提供功能清晰,簡單易用的 Web UI 界面;

  • 作業配置簡單,任務作業依賴關系清晰;

  • 提供可擴展的組件;

  • 基于Java語言開發,易于二次開發;

相比較于Oozie配置工作流的過程是編寫大量的XML配置,并且其代碼復雜度比較高,不易于二次開發,Azkaban則顯得輕量級,功能和用法相對簡單和容易使用。

二、服務安裝

1、核心包

Web服務

azkaban-web-server-2.5.0.tar.gz

執行服務

azkaban-executor-server-2.5.0.tar.gz

SQL腳本

azkaban-sql-script-2.5.0.tar.gz

2、安裝路徑

上傳上面三個安裝包,并解壓操作。

[root@hop01 azkaban]# pwd
/opt/azkaban
[root@hop01 azkaban]# tar -zxvf azkaban-web-server-2.5.0.tar.gz
[root@hop01 azkaban]# tar -zxvf azkaban-executor-server-2.5.0.tar.gz
[root@hop01 azkaban]# tar -zxvf azkaban-sql-script-2.5.0.tar.gz
[root@hop01 azkaban]# mv azkaban-web-2.5.0/ server
[root@hop01 azkaban]# mv azkaban-executor-2.5.0/ executor

3、MySQL導入腳本

[root@hop01 ~]# mysql -uroot -p123456
mysql> create database azkaban_test;
mysql> use azkaban_test;
mysql> source /opt/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql

查看表

基于Azkaban協調時序任務執行的示例分析

4、SSL配置

[root@hop01 opt]# keytool -keystore keystore -alias jetty -genkey -keyalg RSA

生成文件:keystore

拷貝到AzkabanWeb服務器目錄下:

[root@hop01 opt]# mv keystore /opt/azkaban/server/

5、Web服務配置

基礎配置

[root@hop01 conf]# pwd
/opt/azkaban/server/conf
[root@hop01 conf]# vim azkaban.properties

核心修改內容:MySQL和Jetty。

default.timezone.id=Asia/Shanghai

# Azkaban MySQL server properties.
database.type=mysql
mysql.port=3306
mysql.host=localhost
mysql.database=azkaban_test
mysql.user=root
mysql.password=123456
mysql.numconnections=100

# Azkaban Jetty server properties.
jetty.maxThreads=25
jetty.ssl.port=8443
jetty.port=8081
jetty.keystore=keystore
jetty.password=123456
jetty.keypassword=123456
jetty.truststore=keystore
jetty.trustpassword=123456

這里配置符合本地配置參數即可。

用戶配置

[root@hop01 conf]# vim azkaban-users.xml

增加一個管理員用戶:

<azkaban-users>
    <user username="admin" password="admin" roles="admin,metrics" />
</azkaban-users>

基于Azkaban協調時序任務執行的示例分析

6、Executor服務配置

[root@hop01 conf]# pwd
/opt/azkaban/executor/conf
[root@hop01 conf]# vim azkaban.properties

核心修改內容:MySQL和時區。

default.timezone.id=Asia/Shanghai

# Azkaban MySQL server properties.
database.type=mysql
mysql.port=3306
mysql.host=localhost
mysql.database=azkaban_test
mysql.user=root
mysql.password=123456
mysql.numconnections=100

7、啟動服務器

Web服務

[root@hop01 bin]# pwd
/opt/azkaban/server/bin
[root@hop01 bin]# ll
total 16
-rwxr-xr-x 1 root root  161 Apr 21  2014 azkaban-web-shutdown.sh
-rwxr-xr-x 1 root root 1275 Apr 21  2014 azkaban-web-start.sh

這里分別是啟動和關閉的腳本。

[root@hop01 bin]# /opt/azkaban/server/bin/azkaban-web-start.sh

Executor服務

[root@hop01 bin]# /opt/azkaban/executor/bin/azkaban-executor-start.sh

啟動日志

兩個服務的關鍵尾行日志:

Azkaban Server running on ssl port 8443.
Azkaban Executor Server started on port 12321

登錄界面

注意這里是基于https協議:

https://hop01:8443/

基于Azkaban協調時序任務執行的示例分析

三、操作案例

1、入門案例

創建command類型job

[root@hop01 flow_01]# pwd
/opt/azkaban/testJob/flow_01
[root@hop01 flow_01]# vim simple.job

type=command
command=echo 'mySimpleJob'

打成zip包

[root@hop01 flow_01]# zip -q -r simpleJob.zip simple.job

創建項目

基于Azkaban協調時序任務執行的示例分析

上傳任務包

基于Azkaban協調時序任務執行的示例分析

執行任務

基于Azkaban協調時序任務執行的示例分析

2、任務順序執行

創建任務A

[root@hop01 flow_02]# vim simpleA.job

type=command
command=echo 'simplejobA'

創建任務B

[root@hop01 flow_02]# vim simpleB.job

type=command
dependencies=simpleA
command=echo 'simplejobB'

打包任務

[root@hop01 flow_02]# zip -q -r simpleTwoJob.zip simpleA.job simpleB.job

基于Azkaban協調時序任務執行的示例分析

同樣的操作方式,兩個任務放在zip包中,通過Web服務上傳,觀察執行效果即可。

看完了這篇文章,相信你對“基于Azkaban協調時序任務執行的示例分析”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新昌县| 容城县| 阜平县| 邓州市| 肇州县| 东光县| 博湖县| 赤水市| 松原市| 孝义市| 东方市| 余庆县| 左云县| 浦县| 鹿泉市| 南溪县| 阿尔山市| 沙洋县| 余庆县| 巴里| 太康县| 民丰县| 彩票| 永和县| 武邑县| 禹城市| 胶南市| 广州市| 济南市| 新田县| 抚州市| 昆山市| 红桥区| 楚雄市| 唐河县| 南靖县| 乌鲁木齐县| 洛隆县| 南安市| 山东| 湘乡市|