1、 KETL是什么?
KETL是一個(gè)開源的ETL平臺(tái),由具有KPMG和IBM兩家公司的背景的公司開發(fā),使用 java而構(gòu)建的,其基于元數(shù)據(jù)驅(qū)動(dòng),使用XML語言作為ETL過程的描述工具。
其支持的元數(shù)據(jù)庫有oracle、mysql、postgresql、h2等,并在安裝文件中,有oracle、postgresql及h2的元數(shù)據(jù)腳本(主要是建用戶、模式、數(shù)據(jù)表、索引等sql腳本)。
2、 KETL的特性:
基于java開發(fā),具有平臺(tái)無關(guān)的特性
使用XML作為ETL表達(dá)語言,但不僅限于此
多線程特性
元數(shù)據(jù)驅(qū)動(dòng),支持多種關(guān)系型數(shù)據(jù)庫,并提供相應(yīng)的建表腳本
3、 KETL安裝
以下展示 整個(gè)KETL的安裝過程,其在fedora虛擬機(jī)上運(yùn)行,基于 postgresql元數(shù)據(jù)庫運(yùn)行。大家可在參考KETL 安裝手冊(cè)的基礎(chǔ)上,對(duì)其進(jìn)行安裝,本文重點(diǎn)是對(duì)其中存在的問題進(jìn)行了一些補(bǔ)充,歡迎大家交流。具體安裝步驟如下:
1、 準(zhǔn)備所需的軟件安裝包,及所安裝部署的平臺(tái)
1) KETL安裝包(linux)
2) Postgressql安裝包(linux)
KETL提供在window平臺(tái)的管理頁面,可在其中進(jìn)行流程的查看及監(jiān)控,需要安裝以下幾個(gè)應(yīng)用程序
3) Tomcat安裝包(linux)
4) Ketl web service war包(tomcat中)
5) Kinetic Network 安裝包(window)
以下具體步驟可以參見KETL的安裝指導(dǎo),以下只給出大致過程及安裝過程中出現(xiàn)的問題。
2、 安裝KETL核心包
配置KETL的安裝路徑及環(huán)境變量
3、 安裝postgresql
4、 從ketl安裝文件的xml文件夾中,選取運(yùn)行postgresql的元數(shù)據(jù)腳本
在此過程中,可能存在nvl函數(shù)不存在的問題,此函數(shù)為oracle的函數(shù),需自己手動(dòng)添加該函數(shù)。
5、 配置修改ketl的配置文件,指定運(yùn)行的元數(shù)據(jù)服務(wù)器
6、 啟動(dòng) kelt_ctrl命令,啟動(dòng)ketl服務(wù)器
此時(shí),安裝過程結(jié)束,可以通過運(yùn)行shell命令,進(jìn)行elt的開發(fā),但可視化程度不高,監(jiān)控、調(diào)度較困難,為此,KETL提供了相應(yīng)的監(jiān)測(cè)平臺(tái),需要繼續(xù)安裝tomcat等程序。
7、 安裝tomcat
8、 在tomcat中部署web service 程序
9、 在window平臺(tái),安裝 Kinetic Network安裝包
10、 運(yùn)行 KETL administror 程序,輸入用戶名和密碼(ketl配置文件中指定的),通過加載XML文件,實(shí)現(xiàn)運(yùn)行單元的展示,可在此基礎(chǔ)上,運(yùn)行該etl或通過調(diào)度方式進(jìn)行運(yùn)行(需注意的是,xml腳本需手工構(gòu)建,Kinetic Network 程序僅僅是個(gè)展示、調(diào)度和簡(jiǎn)單監(jiān)控的平臺(tái))。
其運(yùn)行界面如下所示:
至此,整個(gè)KETL的安裝過程結(jié)束。
講的不清楚的地方,歡迎大家批評(píng)指正。