Kettle Spoon入門教程
Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上執行,資料抽取高效穩定。其中,Spoon是Kettle中的一個元件,其他元件有PAN,CHEF,Encr和KITCHEN等。
Spoon通過圖形化的頁面,方便直觀的讓你完成資料轉換的操作。
1、安裝配置
最新版本是7.1,小編這裡使用的是6.1。下載完畢後,解壓即可。
因為是Java編寫的,需要jdk環境。配置完環境後,執行Spoon.bat或spoon.sh,就可以看到Spoon的頁面了。
Tips:進行操作前,別忘記將資料庫驅動包放入Spoon的lib資料夾下。
這是不太方便的地方,Spoon支援的資料庫型別特別多,如果把所有的資料庫驅動都提前下載好,又有點多餘了。
如果忘記這個步驟,在建立資料庫連線時,會報錯。
2、小試牛刀
首先先新建一個作業。
路徑:檔案–>新建作業。
2.1 新建連線
路徑:主物件樹-作業-作業1-DB連線。
填寫相應的資料庫資訊,即可。
點選測試,連線成功。
2.2 新建轉換——由DB到DB
需求:目前有兩個資料庫,DB1和DB2。將DB1中的某一個表中的資料,匯入到DB2對應的表中。
為了演示方便,此處兩個資料來源的資料模型完全相同。但在實際操作中,兩個資料來源的模型會複雜很多。
路徑:檔案–>新建–>轉換。
1)拖動控制元件
在左側“核心物件”下的“輸入”選單中,找到“表輸入”,並將其拖動到右側的空白處。同理,將“輸出”選單中,找到“插入/更新”,拖至空白處。
2)編輯控制元件內容
“表輸入”控制元件:
選擇或新建資料庫連線,對應需求中的DB1,將要查詢的sql語句貼上。
“插入/更新”控制元件:
同理,選擇或新建資料來源,對應需求中的DB2;選擇目標表;若有查詢條件,新增查詢欄位。這裡按id查詢,若此id存在則更新,若不存在即插入。新增更新欄位。
3)建立關聯
選中“表輸入”,按住shift,將關聯線關聯到“插入/更新”。
4)儲存執行
執行前需將檔案儲存,點選啟動按鈕執行即可,如下圖:
2.3 新建轉換——由Excel到DB
需求:將Excel中的資料匯入到DB中。
步驟與2.2類似,就不再詳細描述了,只說下不同的地方。需要的兩個控制元件為“Excel輸入”、“表輸出”。
Excel中最好以資料庫欄位名充當列名,示例如下:
“Excel輸入”控制元件中需要選擇表格型別,並新增Excel檔案,如下圖所示。
獲取欄位資訊
儲存執行即可。
2.4 作業排程
上面的兩個例子簡單介紹了“轉換”的功能,如果需要定時或重複性的執行這些轉換,那就需要作業排程來支援了。
路徑:核心物件–>通用。
拖動控制元件“START”和“轉換”。
編輯“START”控制元件,如下圖:
編輯“轉換”,選擇檔案,如下圖:
3、小結
工欲善其事必先利其器,學會使用工具,使工作更加高效。