etl學習系列1——etl工具安裝

來源:互聯網
上載者:User

標籤:拖動   部署   方便   orm   系統路徑   blog   jdk1.5   javac   功能   

ETL(Extract-Transform-Load的縮寫,即資料幫浦、轉換、裝載的過程),對於企業或行業應用來說,我們經常會遇到各種資料的處理,轉換,遷移,所以瞭解並掌握一種etl工具的使用,必不可少,這裡我介紹一個我在工作中使用了3年左右的ETL工具Kettle,本著好東西不獨享的想法,跟大家分享碰撞交流一下!在使用中我感覺這個工具真的很強大,支援圖形化的GUI設計介面,然後可以以工作流程的形式流轉,在做一些簡單或複雜的資料幫浦、品質檢測、資料清洗、資料轉換、資料過濾等方面有著比較穩定的表現,其中最主要的我們通過熟練的應用它,減少了非常多的研發工作量,提高了我們的工作效率,不過對於我這個.net研發者來說唯一的遺憾就是這個工具是Java編寫的。

1、Kettle概念

Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運行,綠色無需安裝,資料幫浦高效穩定。

Kettle 中文名稱叫水壺,該項目的主程式員MATT 希望把各種資料放到一個壺裡,然後以一種指定的格式流出。

Kettle這個ETL工具集,它允許你管理來自不同資料庫的資料,通過提供一個圖形化的使用者環境來描述你想做什麼,而不是你想怎麼做。

Kettle中有兩種指令檔,transformation和job,transformation完成針對資料的基礎轉換,job則完成整個工作流程的控制。

2、下載和部署

?Kettle可以在http://kettle.pentaho.org/網站下載??下載kettle壓縮包,因kettle為綠色軟體,解壓縮到任意本地路徑即可

3、Kettle環境配置(有Java環境的直接忽略此章節)

3、1 安裝java JDK

1)首先到官網上下載對應JDK包,JDK1.5或以上版本就行;

2)安裝JDK;

3)配置環境變數,附配置方式:

安裝完成後,還要對它進行相關的配置才可以使用,先來設定一些環境變數,對於Java來說,最需要設定的環境變數是系統路徑變數path。

(1)要開啟環境變數的設定視窗。右擊“我的電腦”,在彈出的捷徑功能表中選擇“屬性”選項,進入“系統屬性”對話方塊,。選擇“進階”標籤,進入“進階”選項卡,再單擊“環境變數”按鈕,進入“環境變數”對話方塊,:

(2)在“Administrator的使用者變數”列表框中,選擇變數PATH,待其所在行變高亮後,單擊“編輯”按鈕,。

(3)在彈出的“編輯系統變數”對話方塊中,將JDK安裝路徑下的bin目錄路徑設定到Path變數中,。

編輯完後,單擊“確定”按鈕,進行儲存,環境變數Path的設定就正式完成。

注意:設定Path變數的路徑,必須是JDK安裝目錄中的bin目錄,有時候在JDK安裝目錄的同一層會有JRE的安裝目錄,因此請謹慎選取相關路徑,避免將路徑設定成JRE目錄下的bin目錄。

3、2 測試JDK配置是否成功

設定好環境變數後,就可以對剛設定好的變數進行測試,並檢測Java是否可以運行。

(1)單擊“開始”按鈕,選擇“運行”選項,在“運行”對話方塊中輸入cmd命令。

(2)之後單擊“確定”按鈕,開啟命令列視窗。

(3)在游標處輸入:javac命令,按下Enter鍵執行,即可看到測試結果

3、3 運行Kettle

?進入到Kettle目錄,如果Kettle部署在windows環境下,雙擊運行spoon.bat或Kettle.exe檔案,出現如下介面:這樣配置環境這一塊基本上就完成了。4、Kettle使用及組件介紹?4.1 Kettle使用Kettle提供了資產庫方式的方式來整合所有的工作,但是因為資產庫移植不方便,所以我們選擇沒有資產庫;1)建立一個新的transformation,點擊 儲存到本地路徑,例如儲存到D:/etltest下,儲存檔案名稱為EtltestTrans,kettle預設transformation檔案儲存後尾碼名為ktr;2)建立一個新的job,點擊 儲存到本地路徑,例如儲存到D:/etltest下,儲存檔案名稱為EtltestJob,kettle預設job檔案儲存後尾碼名為kjb;4.2 組件樹介紹

 

 

Main Tree菜單列出的是一個transformation中基本的屬性,可以通過各個節點來查看。

 

DB串連:顯示當前transformation中的資料庫連接,每一個transformation的資料庫連接都需要單獨配置。

 

Steps:一個transformation中應用到的環節列表

 

Hops:一個transformation中應用到的節點串連列表                            

 

Core Objects菜單列出的是transformation中可以調用的環節列表,可以通過滑鼠拖動的方式對環節進行添加。

 

Input:輸入環節

Output:輸出環節

Lookup:查詢環節

Transform:轉化環節

Joins:串連環節

Scripting:指令碼環節

 

 

 

          4.3 Transformation轉換介紹?每一個環節可以通過滑鼠拖動來將環節添加到主視窗中。?並可通過shift+滑鼠拖動,實現環節之間的串連。?轉換常用環節介紹

類別

環節名稱

功能說明

Input

文字檔輸入

從本地文字檔輸入資料

表輸入

從資料庫表中輸入資料

擷取系統資訊

讀取系統資訊輸入資料

Output

文字檔輸出

將處理結果輸出到文字檔

表輸出

將處理結果輸出到資料庫表

插入/更新

根據處理結果對資料庫表機型插入更新,如果資料庫中不存在相關記錄則插入,否則為更新。會根據查詢條件中欄位進行判斷

更新

根據處理結果對資料庫進行更新,若需要更新的資料在資料庫表中無記錄,則會報錯停止

刪除

根據處理結果對資料庫記錄進行刪除,若需要刪除的資料在資料庫表中無記錄,則會報錯停止

Lookup

資料庫查詢

根據設定的查詢條件,對目標表進行查詢,返回需要的結果欄位

流查詢

將目標表讀取到記憶體,通過查詢條件對記憶體中資料集進行查詢

調用DB預存程序

調用資料庫預存程序

Transform

欄位選擇

選擇需要的欄位,過濾掉不要的欄位,也可做資料庫欄位對應

過濾記錄

根據條件對記錄進行分類

排序記錄

將資料根據某以條件,進行排序

空操作

無操作

增加常量

增加需要的常量欄位

Scripting

Modified Java Script Value

擴充功能,編寫JavaScript指令碼,對資料進行相應處理

Mapping

映射(子轉換)

資料對應

Job

Sat Variables

設定環境變數

Get Variables

擷取環境變數

                                                   4.3 Job任務介紹 

 

Main Tree菜單列出的是一個Job中基本的屬性,可以通過各個節點來查看。

 

DB串連:顯示當前Job中的資料庫連接,每一個Job的資料庫連接都需要單獨配置。

 

Job entries:一個Job中引用的環節列表

         

Job entries菜單列出的是Job中可以調用的環節列表,可以通過滑鼠拖動的方式對環節進行添加。

 

每一個環節可以通過滑鼠拖動來將環節添加到主視窗中。

 

並可通過shift+滑鼠拖動,實現環節之間的串連。

                                 ?常用環節介紹

類別

環節名稱

功能說明

Job entries

START

開始

DUMMY

結束

Transformation

引用Transformation流程

Job

引用Job流程

Shell

調用Shell指令碼

SQL

執行sql語句

FTP

通過FTP下載

Table exists

檢查目標表是否存在,返回布爾值

File exists

檢查檔案是否存在,返回布爾值

Javascript

執行JavaScript指令碼

Create file

建立檔案

Delete file

刪除檔案

Wait for file

等待檔案,檔案出現後繼續下一個環節

File Compare

檔案比較,返回布爾值

Wait for

等待時間,設定一段時間,kettle流程處於等待狀態

Zip file

壓縮檔為ZIP包

                                        以上內容轉自:http://www.cnblogs.com/limengqiang/archive/2013/01/16/KettleApply1.html 

etl學習系列1——etl工具安裝

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.