1. 程式人生 > >ETL簡單的操作以及開發方式記錄(KETTLE)一

ETL簡單的操作以及開發方式記錄(KETTLE)一

最近由於比較多的與新的第三方系統進行各種資料的互動,免不了要把實時的使用者表格以及程式碼表格同步過去,這個時候我們就想說使用比較低成本和簡單的方式把我們需要的資料正確的同步到一箇中間庫中去,然後再由第三方系統通過同樣的方式從中間庫中取得相關的資料。

於是我們就使用上了ETL

ETL,是英文 Extract-Transform-Load 的縮寫,用來描述將資料從來源端經過抽取(extract)、轉換(transform)、載入(load)至目的端的過程。ETL一詞較常用在資料倉庫,但其物件並不限於資料倉庫。                                         --

百度百科

說的明白點ETL就是可以實現多個數據庫之間的資料轉存的一種技術吧,也就是從DB1中將某些資料以一定的邏輯轉存到DB2的指定表格中。

接下來我們就要講到我們所使用的工具了,由於我們的工作的情況,所以我在這裡使用的是KETTLE作為我們的ETL工具。(注:ETL的概念和WEB-APP這樣,可以使用各種不同的方式進行實現JAVA,PHP等等,試情況和選擇而定)。

在這裡我們先介紹下所使用的工具

Kettle是一款國外開源的ETL工具,純java編寫,可以在WindowLinuxUnix上執行,資料抽取高效穩定。  --百度百科

KETTLE就是其中的一種,他是使用java進行編寫的,由於這一點所以我們可以預見到如果我們需要執行這個

KETTLE你至少需要在執行的環境上安裝JRE,不然大家都懂的,我在這裡使用的JRE1.5kettle

第一個簡單的ETL例項:

開啟,這裡沒有什麼資訊的時候千萬莫要驚慌,如沒有直接點選NO就可以了


點進來之後照例一歡迎介面,我們暫時不管這個,依照這種的桌面應用的慣例我們直接File-new


直接新建一個Transformation(變化)


出來了一個全新的頁面,大概就是我們新增的變換了,看到頁面的左側存在著一列控制元件,然後我們先新建一個INPUT(輸入)


點選雙擊開啟我們這個新建的Table input


新建連線資訊(要資料提取總是得先連上資料庫嘛)


填完各項資訊之後點選下

Test測試下連線是否能夠正常建立


然後我們新增一個OUTPUT具體的方法也就是從左側的Design欄位中拖過來即可,然後我們連線來年inputoutput(按住SHIFT點選滑鼠拖動過來就可以連線兩個物件了)


input中寫資料提取的SQL(也就是一個查詢的SQL),由於是一個簡單的例子我們建立了一個簡單的表格,並在其中簡單的填寫了一些測試的資料。


當然我們還需要一張目標表格


雙擊OUTPUT設定目標表格以及目標資料庫的各種資訊

\

然後我們就可以點選頁面上面的執行按鈕進行運行了


我們去資料庫裡面察看我們目的表格,看資料有沒有匯入到其中,如果能成功的話顯而易見將獲得如下的結果


注:由於上文中的圖片上傳麻煩所以儘量的省略了各個不必要或者是比較顯而易見的步驟截圖和描述