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