開源數據匯集工具


1 開源數據匯集工具

1.1 Talend Open Studio

Talend Open Studio 是一個 ETL (Extract, Transform, and Load) 工具,可執行數據倉庫到數據庫之間的數據同步,提供基於 Eclipse RCP 的圖形操作界面。

clip_image001

項目源碼:http://talendforge.org/trac/tos

項目主頁:

http://www.talend.com/products/talend-open-studio

1.2 Penthao Kettle

Kettle是一款國外開源的ETL工具,純java編寫,可以在Window、Linux、Unix上運行,數據抽取高效穩定。

Kettle 中文名稱叫水壺,該項目的主程序員MATT 希望把各種數據放到一個壺里,然后以一種指定的格式流出。

Kettle這個ETL工具集,它允許你管理來自不同數據庫的數據,通過提供一個圖形化的用戶環境來描述你想做什么,而不是你想怎么做。

Kettle中有兩種腳本文件,transformation和job,transformation完成針對數據的基礎轉換,job則完成整個工作流的控制。作為Pentaho的一個重要組成部分,現在在國內項目應用上逐漸增多。

clip_image003

1.3 Clover

CloverETL 是一個基於Java的開源的ETL框架,同時還包含了一個 ETL設計器——CloverETL Designer。核心的算法就是一個數據流網絡。

CloverETL支持大多數主流數據庫系統,並且它是一個跨平台產品,支持Windows 系列,Linux系列,Unix系列操作系統,有很強的可移植性。

CloverETL目前最新穩定版是CloverETL3.0.1。官方也同時推有收費版和免費版。

收費版:桌面版(個人版),企業版,主要針對企業級大型開發;

免費版:社區版(有桌面版和基於eclipse的插件版,針對個人或小型開發),引擎版,針對開源化開發。

clip_image005

1.4 開源工具比較

這三款開源工具是目前使用最為廣泛的,從年限上看,Kettle開始於2001年,Talend Open Studio開始於2006年,Clover開始於2009年。這三款工具都有開源版本和企業版本,企業版本可以提供一些額外的組件和咨詢服務。從目前來看,這3框開源工具都可以滿足我們的需求。

Talend: 基於Eclipse,具有很好的擴展性、穩定性以及可定制化(可以自己開發eclipse插件),並且服從Eclipse標准(如文件目錄結構都是程序員熟悉的結構)。Talend具有很好的嵌入性,因為它生成的是Java代碼,這些代碼可以很好的和其他系統結合在一起,這就要求使用者會java。如果不會Java的話,Talend的缺點是學習曲線將會非常陡峭,但是如果會java的話,Talend將是一個絕佳的選擇。

Penthao: 它是一個老牌的工具,在2001年就發布了第一個版本,Kettle是Penthao整個解決方案的一個組件,用來進行數據集成。它也是基於java開發的,但是它不要求用戶會java,將底層實現細節都隱藏了。這樣即使不會編程的用戶也可以輕易的上手,學習曲線非常平緩。它主要的缺點是,和talend相比,它的擴展性較差。由於它很難擴展,所以在社區中可用的組件就比較少;同時,由於它是直接解析存放在xml中的任務信息,不直接生產java代碼,使得它和現有的java開發的系統進行集成非常困難。

CloverETL: 它是在talend和penthao之后發展起來的工具,使用的人數沒有talend和penthao多,它主要的優點是,輕量級、容易嵌入、易於使用。但是它的功能遠沒有talend和kettle強大。

性能:從clover的官網上,有如下兩組性能測試報告(2009年),分別是1GB的文件大小和10GB的文件大小,從這兩組系統報告可以看出,clover的性能是最好的,Talend的性能次之,Penthao的性能最差。

clip_image007

圖 1

clip_image009

圖 2

結論:考慮到公司現有系統、后續的擴展性以及性能,Talend Open Studio是目前最好的選擇,因為它比Penthao靈活,性能比Penthao強,和Clover的性能差別也較小。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM