1. 程式人生 > >你不知道的Kettle學習筆記2--kettle的常用操作

你不知道的Kettle學習筆記2--kettle的常用操作

(一)轉換和作業
kettle的Spoon設計器用來設計轉換(Transformation)和作業(Job)。
(1)轉換
轉換主要是針對資料的各種處理,一個轉換裡可以包含多個步驟(Step)。

(2)作業
作業是比轉換更高一級的處理流程,一個作業裡包括多個作業項(Job Entry),一個作業項代表了一 項工作,轉換也是一個作業項。

(二)儲存作業
使用者通過Spoon建立的轉換、作業、資料庫連線等可以儲存在資源庫和XML檔案中。
(1)轉換檔案以ktr為副檔名,作業檔案以kjb為副檔名。
(2)資源庫可以是各種常見的資料庫。可以在Spoon中自動建立資源庫,資源庫預設使用者名稱和密碼是admin/admin。

(三)輸入步驟
輸入步驟用來從外部獲取資料,可以獲取的資料來源包括,文字檔案(txt,csv,xml,json),資料庫,Excel檔案等桌面檔案,自定義的資料等。對特殊資料來源和應用需求可以自定義輸入外掛。

以Excel檔案“聯絡方式”輸入為例
1、準備要輸入Excel檔案。Excel檔案中第一行必須為標題,資料緊跟在標題後面。
這裡寫圖片描述

2、在Spoon中新建一個轉換作業並命名為“Excel檔案輸入”
這裡寫圖片描述

3、插入“Excel輸入”控制元件
這裡寫圖片描述

4、右擊“Excel輸入”控制元件進行“編輯步驟”
這裡寫圖片描述

5、“瀏覽”找出“聯絡方式”檔案,並新增。在表格型別( 引擎)中選擇:Exxel2007 XLSX(Apache POI)
這裡寫圖片描述

6、在“欄位”中“獲取來自頭部資料的欄位”。
這裡寫圖片描述

7、點中“眼睛”就可以預覽了。
這裡寫圖片描述

(四)轉換步驟
轉換類步驟是對資料進行各種形式轉換所用到的步驟。

以“生成隨機數進行欄位選擇”為例
1、設定隨機數的步驟
這裡寫圖片描述

2、改變隨機數生成的個數
這裡寫圖片描述

3、預覽生產的10個隨機數
這裡寫圖片描述

4、新增常量並設定其步驟
這裡寫圖片描述

5、新增計算器求隨機數(R)與常量(C)的和。
這裡寫圖片描述

6、新增文字檔案輸出,確定結果的儲存位置。
這裡寫圖片描述

7、執行轉換。
這裡寫圖片描述

(五)流程步驟
流程步驟是用來控制資料流的步驟。一般不對資料進行操作,只是控制資料流。

以“過濾步驟”為例
1、通過計算器把隨機數(R)和常量(C)相乘等到 R*C
這裡寫圖片描述

2、新增“過濾記錄”,實現按條件對資料進行篩選。把符合要求(大於50)的進行輸出,不符合要求(小於等於50)的不進行任何操作(空操作)。
這裡寫圖片描述

3、執行轉換
這裡寫圖片描述

(六)連線步驟
連線步驟用來將不同資料集連線到一起。

以“學生資訊”和“學生成績”連線為例
這裡寫圖片描述

這裡寫圖片描述

1、通過“Excel輸入”分別把“學生資訊”和“學生成績”輸入。
這裡寫圖片描述

這裡寫圖片描述

2、新增“記錄集連線”並進行步驟設定。
這裡寫圖片描述

3、執行連線轉換
這裡寫圖片描述

(七)輸出步驟
輸出步驟就是輸出資料的步驟,常見的輸出包括文字檔案輸出、表輸出等,可以根據應用的需求開發外掛以其他形式輸出。

以“文字檔案輸出”為例

1、生成10個隨機數
這裡寫圖片描述

2、把10個隨機數以文字檔案的形式輸出。
這裡寫圖片描述

3、執行轉換
這裡寫圖片描述

(八)、綜合轉換
生成 100 個隨機數,隨機數取值於[0,100)之間,計算小於等於 50 的隨機數個數和大於50 的隨機數個數。
並把這兩個統計數字放在資料庫表的一行的兩列中,即輸出的結果有一行,一行包括兩列,每列是一個統計值。

解答過程1:生產100個隨機數
這裡寫圖片描述

解答過程2:隨機數取值於0-100
這裡寫圖片描述

解答過程3:計算小於等於 50 的隨機數個數和大於50 的隨機數個數
這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

這裡寫圖片描述

解答過程4:兩個統計數字放在資料庫表的一行的兩列中
這裡寫圖片描述