初始Kettle

初始

Kettle(水壺)是開源的ETL(數據抽取Extract、轉換Transform、加載Load)工具,數據抽取和轉換工具。Java編寫,可在Windows、Linux、Unix上運行,支持各種數據類型放到水壺裏。以一種指定的格式流出,ETL工具允許來自不同的數據庫的數據,通過圖形化用戶環境來描述。

Kettle有兩種腳本文件,transformation和job,transformation完成數據基礎轉換,job完成整個工作流控制。

Kettle有三個主要組件:Spoon、Kitchen、Pan

  • Spoon 是圖像化界面,可讓我們用圖像化方式開發轉化和作業(Transformation)。Windows選擇Spoon.bat;Linux選擇Spoon.sh。
  • Kitchen 可用命令方式調用Job,後臺執行的程序,無圖形化界面。
  • Pan 允許批量運行由Spoon設計的ETL轉化。調用Trans,後臺執行的程序,無圖形化界面。
  • Carte 是一個輕量級的Web容器,用於建立專用、遠程的ETL Server

Linux環境安裝部署Kettle

Kettle安裝部署,將Mysql數據通過Kettle寫入分析型數據庫(ADS),設置定時任務crontab方式,定時Mysql數據 => ADS。

  1. 配置JDK1.8,用SUN的JDK,自行官網下載。
    vim /etc/profile.d/java.sh 
    JAVA_HOME=/usr/java/jdk1.8.0_25
    PATH=$JAVA_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin
    export PATH

    驗證: java -version

  2. 部署kettle
    下載:https://community.hitachivantara.com/docs/DOC-1009855?spm=a2c4g.11186623.2.4.zMdWMo
    解壓:ll /data/kettle/data-integration
    驗證kettle:/data/kettle/data-integration/kitchen.sh
    出現幫助信息爲正確,如圖:
    初始Kettle

  3. 建立作業和轉化
    建立目錄: mkdir -p /data/kettle/kettle-job
    將windows中建好的作業(.kjb)和轉化(.ktr)文件放入/data/kettle/kettle-job文件夾中
    並將.kjb文件中windows的轉換路徑修改爲Linux路徑。

  4. 設定定時任務
    用Linux定時任務crontab。
    crontab -l
    #data center crond
    0 1 * * *  /bin/bash  /data/kettle/kettle-job-ads/start.sh >> /data/kettle/kettle-job-ads/kettle.log 2>&1
    0 2 * * *  /bin/bash  /data/kettle/kettle-job-ads/start-s.sh >> /data/kettle/kettle-job-ads/kettle1.log 2>&1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章