因為新公司的原因,要用到這個軟件,那么我們就來看一看它到底是干啥的。
簡單介紹基本用法Kettle 的幾個子程序的功能和啟動方式轉換和作業保存作業輸入步驟簡介轉換步驟簡介- 增加常量 流程步驟簡介輸出步驟簡介總結
kettle是一款用純java編寫的開源的ETL工具,所以要想運行它電腦一定要有java環境(可以在命令行中輸入java -version
查看當前電腦java的版本),
下載地址 (支持全平臺,用起來也是比較方便),直接解壓就能用,親測不翻墻的話時快時慢,所以建議大家在下載的時候盡量翻墻
何為ETL?
抽取(Extract):一般抽取過程需要連接到不同的數據源,以便為隨后的步驟提供數據。這一部分看上去簡單而瑣碎,實際上它是 ETL 解決方案的成功實施的一個主要障礙。
轉換(Transform):任何對數據的處理過程都是轉換。這些處理過程通常包括(但不限于)下面一些操作:
移動數據 根據規則驗證數據 數據內容和數據結構的修改 將多個數據源的數據集成 根據處理后的數據計算派生值和聚集值加載(Load):將數據加載到目標系統的所有操作。
Spoon.bat: 圖形界面方式啟動作業和轉換設計器。 Pan.bat: 命令行方式執行轉換。
Kitchen.bat: 命令行方式執行作業。 Carte.bat: 啟動web服務,用于 Kettle 的遠程運行或集群運行。 Encr.bat: 密碼加密 (請注意這里各個文件的名字,很有趣,類似于hadoop中的名字,這也許是屬于國外程序猿的一種幽默吧)
Kettle 的 Spoon 設計器用來設計轉換(Transformation)和 作業(Job)。
轉換主要是針對數據的各種處理,一個轉換里可以包含多個步驟(Step)。 作業是比轉換更高一級的處理流程,一個作業里包括多個作業項(Job Entry),一個作業項代表了一項工作,轉換也是一個作業項。操作界面如下
用戶通過 Spoon 創建的轉換、作業、數據庫連接等可 以保存在資源庫和 xml 文件中。
轉換文件以 ktr 為擴展名,作業文件以 kjb 為擴展名 資源庫可以是各種常見的數據庫。可以在 Spoon 中自動創建資源庫,資源庫默認用戶名和密碼是admin/admin。輸入類步驟用來從外部獲取數據,可以獲取數據的數據源包括,文本文件(txt,csv,xml,json)數據庫、 Excel 文件等桌面文件,自定義的數據等。對特殊數據源和應用需求可以自定義輸入插件。
輸入內容部分截圖如下:
轉換類步驟是對數據進行各種形式轉換所用到的步驟。
例子: - 字段選擇 (就比如我們我負責的現在我們公司的數據庫轉移工作,字段選擇很重要) - 計算器
流程步驟是用來控制數據流的步驟。一般不對數據進行操作,只是控制數據流。
例子: 過濾步驟
既然有輸入和過濾,那么一定也要有輸出了。輸出步驟是輸出數據的步驟,常見的輸出包括文本文件輸出、表輸出等,可以根據應用的需求開發插件以其他形式輸出。
例子: 表輸出等,如下圖
Kettle這個ETL工具集,它允許你管理來自不同數據庫的數據,通過提供一個圖形化的用戶環境來描述你想做什么,而不是你想怎么做。
Kettle中有兩種腳本文件,transformation和job,transformation完成針對數據的基礎轉換,job則完成整個工作流的控制。
現在剛剛開始進行學習,所以只掌握了基本的知識,在公司后續的開發過程當中,我也會邊學習邊完善,盡快掌握這個軟件更多的精髓。
新聞熱點
疑難解答