Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運行,數據抽取高效穩定。Kettle 中文名稱叫水壺,該項目的主程序員MATT 希望把各種數據放到一個壺里,然后以一種指定的格式流出。Kettle這個ETL工具集,它允許你管理來自不同數據庫的數據,通過提供一個圖形化的用戶環境來描述你想做什么,而不是你想怎么做。Kettle中有兩種腳本文件,transformation和job,transformation完成針對數據的基礎轉換,job則完成整個工作流的控制。
kettle的最新下載地址:http://jaist.dl.sourceforge.net/project/pentaho/Data%20Integration/6.0/pdi-ce-6.0.1.0-386.zip
- 此軟件運行需要JDK環境,所以電腦沒裝JDK的話,先下載安裝。
- Kettle解壓到英文路徑的文件夾中就可以了,不需要安裝。
- 點擊data-integration文件夾中的Spoon.bat就能打開了。
下面是圖文教程:
進入解壓的目錄,找到Spoon.bat,先別着急雙擊打開,如果你本機的數據庫是oracle,就先把oracle的驅動放進spoon解壓目錄的lib目錄下;如果本機裝的是mysql數據庫,同理把mysql的驅動放到lib目錄下,然后再啟動spoon。否則當你啟動的時候會報如下錯誤
Driver class 'oracle.jdbc.driver.OracleDriver' could not be found, make sure the 'Oracle' driver (jar file) is installed. oracle.jdbc.driver.OracleDriver
- 1
- 2
打開spoon后點擊左上角的主對象樹,右鍵DB連接新建。
輸入數據庫連接信息
輸入完成后先點擊測試一下,看看連接是否正常。
下面開始新建轉換。
點開左側欄的輸入,找到表輸入,並用鼠標把表輸入拖向右邊空白區域。
雙擊拖進來的表輸入,編輯表輸入里面的信息。
點開左側欄的輸出,找到插入/更新,並用鼠標把插入/更新拖向右邊空白區域。
摁住shift鍵不放,鼠標點擊表輸入,然后拖向旁邊的插入/更新,這樣就把兩個動作連接起來了。
雙擊插入/更新,編輯插入/更新里面的信息。最后把該轉換保存,這里保存成test.ktr。
接下來開始創建作業
創建作業和創建轉換操作都差不多。
雙擊START,對START進行編輯,可以讓作業按每天、每周、每月定時調用。
雙擊裝換進行編輯,找到前面保存的test.ktr 轉換文件。
到這一步就可以開始點擊運行了
下圖是運行結果
tb_user是源表
tb_user2是目標表,沒運行作業前它是沒有數據的。
運行作業后,數據成功導入到tb_user2表里。
根據上面的教程,可以嘗試着把oracle數據庫中的表的數據插入到mysql等其它數據庫中的表里面去。