1. <ul id="0c1fb"></ul>

      <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
      <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区

      RELATEED CONSULTING
      相關咨詢
      選擇下列產(chǎn)品馬上在線溝通
      服務時間:8:30-17:00
      你可能遇到了下面的問題
      關閉右側工具欄

      新聞中心

      這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
      基于Azkaban協(xié)調時序任務執(zhí)行的示例分析

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

      讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名申請、虛擬空間、營銷軟件、網(wǎng)站建設、蘇家屯網(wǎng)站維護、網(wǎng)站推廣。

      一、Azkaban概述

      1、任務時序

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

      基于Azkaban協(xié)調時序任務執(zhí)行的示例分析

      大致執(zhí)行順序如下:

      • 業(yè)務日志文件同步到HDFS文件系統(tǒng);

      • 經(jīng)過Hadoop執(zhí)行分析計算過程;

      • 結果數(shù)據(jù)在導入數(shù)倉進行存儲;

      • 最終需要把數(shù)倉內(nèi)數(shù)據(jù)同步到業(yè)務庫;

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

      2、Azkaban簡介

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

      Azkaban特點和優(yōu)勢

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

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

      • 提供可擴展的組件;

      • 基于Java語言開發(fā),易于二次開發(fā);

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

      二、服務安裝

      1、核心包

      Web服務

      azkaban-web-server-2.5.0.tar.gz

      執(zhí)行服務

      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協(xié)調時序任務執(zhí)行的示例分析

      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

      核心修改內(nèi)容: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

      這里配置符合本地配置參數(shù)即可。

      用戶配置

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

      增加一個管理員用戶:

      
          
      

      基于Azkaban協(xié)調時序任務執(zhí)行的示例分析

      6、Executor服務配置

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

      核心修改內(nèi)容:MySQL和時區(qū)。

      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協(xié)議:

      https://hop01:8443/

      基于Azkaban協(xié)調時序任務執(zhí)行的示例分析

      三、操作案例

      1、入門案例

      創(chuàng)建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

      創(chuàng)建項目

      基于Azkaban協(xié)調時序任務執(zhí)行的示例分析

      上傳任務包

      基于Azkaban協(xié)調時序任務執(zhí)行的示例分析

      執(zhí)行任務

      基于Azkaban協(xié)調時序任務執(zhí)行的示例分析

      2、任務順序執(zhí)行

      創(chuàng)建任務A

      [root@hop01 flow_02]# vim simpleA.job
      
      type=command
      command=echo 'simplejobA'

      創(chuàng)建任務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協(xié)調時序任務執(zhí)行的示例分析

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

      看完了這篇文章,相信你對“基于Azkaban協(xié)調時序任務執(zhí)行的示例分析”有了一定的了解,如果想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


      網(wǎng)站欄目:基于Azkaban協(xié)調時序任務執(zhí)行的示例分析
      URL地址:http://www.ef60e0e.cn/article/gepdig.html
      99热在线精品一区二区三区_国产伦精品一区二区三区女破破_亚洲一区二区三区无码_精品国产欧美日韩另类一区
      1. <ul id="0c1fb"></ul>

        <noscript id="0c1fb"><video id="0c1fb"></video></noscript>
        <noscript id="0c1fb"><listing id="0c1fb"><thead id="0c1fb"></thead></listing></noscript>

        竹山县| 紫金县| 安溪县| 永善县| 固始县| 梓潼县| 南和县| 孟州市| 迭部县| 城步| 普兰县| 富锦市| 措美县| 二连浩特市| 尼勒克县| 平乐县| 新民市| 鹤峰县| 靖远县| 闸北区| 灵宝市| 南城县| 岳西县| 榆社县| 日喀则市| 额济纳旗| 克拉玛依市| 株洲市| 那坡县| 民丰县| 邵东县| 卓资县| 金乡县| 密山市| 彝良县| 三江| 榆中县| 台湾省| 深圳市| 亚东县| 甘洛县|