ETL常用的三種工具介紹及對比Datastage、Informatica、Kettle
ETL是資料倉儲中的非常重要的一環,是承前啟後的必要的一步。ETL負責將分佈的、異構資料來源中的資料如關係資料、平面資料檔案等抽取到臨時中間層後進行清洗、轉換、整合,最後載入到資料倉儲或資料集市中,成為聯機分析處理、資料探勘的基礎。下面給大家介紹一下什麼是ETL以及ETL常用的三種工具(Datastage,Informatica,Kettle)!
1.ETL是什麼?
ETL,是英文 Extract-Transform-Load 的縮寫,用來描述將資料從來源端經過抽取(extract)、轉換(transform)、載入(load)至目的端的過程。(資料倉儲結構)通俗的說法就是從資料來源抽取資料出來,進行清洗加工轉換,然後載入到定義好的資料倉儲模型中去。目的是將企業中的分散、零亂、標準不統一的資料整合到一起,為企業的決策提供分析依據。ETL是BI專案重要的一個環節,其設計的好壞影響生成資料的質量,直接關係到BI專案的成敗。
2.為什麼要用ETL工具?
▶ 當資料來自不同的物理主機,這時候如使用SQL語句去處理的話,就顯得比較吃力且開銷也更大。
▶ 資料來源可以是各種不同的資料庫或者檔案,這時候需要先把他們整理成統一的格式後才可以進行資料的處理,這一過程用程式碼實現顯然有些麻煩。
▶ 在資料庫中我們當然可以使用儲存過程去處理資料,但是處理海量資料的時候儲存過程顯然比較吃力,而且會佔用較多資料庫的資源,這可能會導致資料資源不足,進而影響資料庫的效能。
上面所說的問題,我們用ETL工具就可以解決。它的優點有:
● 支援多種異構資料來源的連線。(部分)
● 圖形化的介面操作十分方便。
● 處理海量資料速度快、流程更清晰等。
3.ETL工具介紹
Informatica和Datastage佔據國內市場的大部分的份額。
4.ETL工具差異
Kettle,Datastage,Informatica 三個ETL工具的特點和差異介紹:
操作
都是屬於比較簡單易用,主要是開發人員對於工具的熟練程度。Informatica有四個開發管理元件,開發的時候我們需要開啟其中三個進行開發,Informatica沒有ctrl+z的功能,如果對job作了改變之後,想要撤銷,返回到改變前是不可能的。相比Kettle跟Datastage在測試除錯的時候不太方便。Datastage全部的操作在同一個介面中,不用切換介面,能夠看到資料的來源,整個job的情況,在找bug的時候會比Informatica方便。Kettle介於兩者之間。
部署
Kettle只需要JVM環境,Informatica需要伺服器和客戶端安裝,而Datastage的部署比較耗費時間,有一點難度。
資料處理的速度
大資料量下Informatica 與Datastage的處理速度是比較快的,比較穩定。Kettle的處理速度相比之下稍慢。
服務
Informatica與Datastage有很好的商業化的技術支援,而Kettle則沒有。商業軟體的售後服務上會比免費的開源軟體好很多。
風險
風險與成本成反比,也與技術能力成正比。
擴充套件
Kettle的擴充套件性無疑是最好,因為是開原始碼,可以自己開發擴充它的功能,而Informatica和Datastage由於是商業軟體,基本上沒有。
Job的監控
三者都有監控和日誌工具。在資料的監控上,個人覺得Datastage的實時監控做的更加好,可以直觀看到資料抽取的情況,執行到哪一個控制元件上。這對於調優來說,我們可以更快的定位到處理速度太慢的控制元件並進行處理,而informatica也有相應的功能,但是並不直觀,需要通過兩個介面的對比才可以定位到處理速度緩慢的控制元件。有時候還需要通過一些方法去查詢。
網上的技術文件
Datastage < Informatica < kettle,相對來說,Datastage跟Informatica在遇到問題去網上找到解決方法的概率比較低,kettle則比較多。
5.專案經驗分享
多張表同步、重複的操作:在專案中,很多時候我們都需要同步生產庫的表到資料倉儲中。一百多張表同步、重複的操作,對開發人員來說是細心和耐心的考驗。在這種情況下,開發人員最喜歡的工具無疑是kettle,多個表的同步都可以用同一個程式執行,不必每一張表的同步都建一個程式,而informatica雖然有提供工具去批量設計,但還是需要生成多個程式進行一一配置,而datastage在這方面就顯得比較笨拙。
增量表:在做增量表的時候,每次執行後都需要把將最新的一條資料操作時間存到資料庫中,下次執行我們就取大於這個時間的資料。Kettle有控制元件可以直接讀取資料庫中的這個時間置為變數;對於沒有類似功能控制元件的informatica,我們的做法是先讀取的資料庫中的這個時間存到檔案,然後主程式執行的時候指定這個檔案為引數檔案,也可以得到同樣的效果。
有一句話說的好: 世上沒有最好的,只有適合的! 每一款ETL工具都有它的優缺點,我們需要根據實際專案,權衡利弊選擇適合的ETL工具,合適的就是最好的。當下越來越多公司及其客戶更重視最新的資料(實時資料)展現,傳統的ETL工具可能滿足不了這樣的需求,而實時流資料處理和雲端計算技術更符合。所以我們也需要與時俱進,學習大資料時代下的ETL工具。
About Me
........................................................................................................................ ● 本文作者:小麥苗,部分內容整理自網路,若有侵權請聯絡小麥苗刪除 ● 本文在itpub( http://blog.itpub.net/26736162 )、部落格園( http://www.cnblogs.com/lhrbest )和個人weixin公眾號( xiaomaimiaolhr )上有同步更新 ● 本文itpub地址: http://blog.itpub.net/26736162 ● 本文部落格園地址: http://www.cnblogs.com/lhrbest ● 本文pdf版、個人簡介及小麥苗雲盤地址: http://blog.itpub.net/26736162/viewspace-1624453/ ● 資料庫筆試面試題庫及解答: http://blog.itpub.net/26736162/viewspace-2134706/ ● DBA寶典今日頭條號地址: http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826 ........................................................................................................................ ● QQ群號: 230161599 (滿) 、618766405 ● weixin群:可加我weixin,我拉大家進群,非誠勿擾 ● 聯絡我請加QQ好友 ( 646634621 ) ,註明新增緣由 ● 於 2019-04-01 06:00 ~ 2019-04-30 24:00 在魔都完成 ● 最新修改時間:2019-04-01 06:00 ~ 2019-04-30 24:00 ● 文章內容來源於小麥苗的學習筆記,部分整理自網路,若有侵權或不當之處還請諒解 ● 版權所有,歡迎分享本文,轉載請保留出處 ........................................................................................................................ ● 小麥苗的微店 : https://weidian.com/s/793741433?wfr=c&ifr=shopdetail ● 小麥苗出版的資料庫類叢書 : http://blog.itpub.net/26736162/viewspace-2142121/ ● 小麥苗OCP、OCM、高可用網路班 : http://blog.itpub.net/26736162/viewspace-2148098/ ● 小麥苗騰訊課堂主頁 : https://lhr.ke.qq.com/ ........................................................................................................................ 使用 weixin客戶端 掃描下面的二維碼來關注小麥苗的weixin公眾號( xiaomaimiaolhr )及QQ群(DBA寶典)、新增小麥苗weixin, 學習最實用的資料庫技術。
........................................................................................................................ |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26736162/viewspace-2641545/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ETL 幾種工具的比較(Kettle,Talend,Informatica )ORM
- ETL介紹與ETL工具比較
- ETL資料整合工具DataX、Kettle、ETLCloud特點對比Cloud
- nGrinder詳細介紹及效能工具對比
- Android常用圖片載入庫介紹及對比Android
- ETL 是什麼 ETL 工具有哪些 ETL 工具對比 engine
- Bagging和Boosting的介紹及對比
- RestCloud ETL與Kettle對比分析RESTCloud
- 五種IO模型介紹和對比模型
- 關於程式碼簽名證書種類的介紹及對比
- 效能測試的流程及常用工具介紹
- 《Kettle構建Hadoop ETL系統實踐》簡介Hadoop
- epic和steam的區別介紹及優劣對比
- 探索PyTorch:介紹及常用工具包展示PyTorch
- 你還在用Kettle嗎?試試這款ETL工具
- ETL排程系統及常見工具對比:Azkaban、Oozie、數棲雲
- JEB工具的介紹及使用
- JVM常用調優工具介紹JVM
- Java常用工具介紹Java
- 簡單介紹SpringSecurity框架簡介及與shiro特點對比SpringGse框架
- Java中幾種常用的RPC框架介紹JavaRPC框架
- 2.1 基於python開發的資料比對工具--SYDCTOOL介紹Python
- etl 增量對比解決方案 etl-engine 如何實現增量對比
- 幾種新DevOps工具介紹dev
- 程式碼管理工具-Git基礎介紹及常用技巧Git
- C#例項化物件的三種方式及效能對比C#物件
- 部署ETL工具的三種方式,企業應該怎麼選?
- 資產納管的三種方式介紹
- MongoDB三種聚合命令用法介紹MongoDB
- 5種常見Bean對映工具的效能比對Bean
- 介紹幾種List集合分批操作的工具
- epic和steam的區別介紹及優劣對比 epic與steam互通嗎
- 自定義View:Paint的常用屬性介紹及使用ViewAI
- 資料字典生成工具及文件工具作用介紹
- 簡單介紹redis加鎖常用幾種方式Redis
- 現代ETL工具與傳統解決方案清單附對比
- Java中的幾種Kafka客戶端比較介紹JavaKafka客戶端
- 介紹幾種MySQL常見的圖形化工具MySql