小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

ETL常用的三種工具介紹及對比Datastage,Informatica

 愛吃魚的俊懶貓 2019-04-16

ETL是數(shù)據(jù)倉庫中的非常重要的一環(huán),是承前啟后的必要的一步。ETL負責將分布的、異構(gòu)數(shù)據(jù)源中的數(shù)據(jù)如關(guān)系數(shù)據(jù)、平面數(shù)據(jù)文件等抽取到臨時中間層后進行清洗、轉(zhuǎn)換、集成,最后加載到數(shù)據(jù)倉庫或數(shù)據(jù)集市中,成為聯(lián)機分析處理、數(shù)據(jù)挖掘的基礎(chǔ)。下面給大家介紹一下什么是ETL以及ETL常用的三種工具(Datastage,Informatica,Kettle)!

1.ETL是什么?

ETL,是英文 Extract-Transform-Load 的縮寫,用來描述將數(shù)據(jù)從來源端經(jīng)過抽取(extract)、轉(zhuǎn)換(transform)、加載(load)至目的端的過程。(數(shù)據(jù)倉庫結(jié)構(gòu))通俗的說法就是從數(shù)據(jù)源抽取數(shù)據(jù)出來,進行清洗加工轉(zhuǎn)換,然后加載到定義好的數(shù)據(jù)倉庫模型中去。目的是將企業(yè)中的分散、零亂、標準不統(tǒng)一的數(shù)據(jù)整合到一起,為企業(yè)的決策提供分析依據(jù)。ETL是BI項目重要的一個環(huán)節(jié),其設(shè)計的好壞影響生成數(shù)據(jù)的質(zhì)量,直接關(guān)系到BI項目的成敗。

2.為什么要用ETL工具?

? 當數(shù)據(jù)來自不同的物理主機,這時候如使用SQL語句去處理的話,就顯得比較吃力且開銷也更大。

? 數(shù)據(jù)來源可以是各種不同的數(shù)據(jù)庫或者文件,這時候需要先把他們整理成統(tǒng)一的格式后才可以進行數(shù)據(jù)的處理,這一過程用代碼實現(xiàn)顯然有些麻煩。

? 在數(shù)據(jù)庫中我們當然可以使用存儲過程去處理數(shù)據(jù),但是處理海量數(shù)據(jù)的時候存儲過程顯然比較吃力,而且會占用較多數(shù)據(jù)庫的資源,這可能會導致數(shù)據(jù)資源不足,進而影響數(shù)據(jù)庫的性能。

上面所說的問題,我們用ETL工具就可以解決。它的優(yōu)點有:

● 支持多種異構(gòu)數(shù)據(jù)源的連接。(部分)

● 圖形化的界面操作十分方便。

● 處理海量數(shù)據(jù)速度快、流程更清晰等。

3.ETL工具介紹

Informatica和Datastage占據(jù)國內(nèi)市場的大部分的份額。

4.ETL工具差異

Kettle,Datastage,Informatica三個ETL工具的特點和差異介紹:

操作

都是屬于比較簡單易用,主要是開發(fā)人員對于工具的熟練程度。Informatica有四個開發(fā)管理組件,開發(fā)的時候我們需要打開其中三個進行開發(fā),Informatica沒有ctrl+z的功能,如果對job作了改變之后,想要撤銷,返回到改變前是不可能的。相比Kettle跟Datastage在測試調(diào)試的時候不太方便。Datastage全部的操作在同一個界面中,不用切換界面,能夠看到數(shù)據(jù)的來源,整個job的情況,在找bug的時候會比Informatica方便。Kettle介于兩者之間。

部署

Kettle只需要JVM環(huán)境,Informatica需要服務(wù)器和客戶端安裝,而Datastage的部署比較耗費時間,有一點難度。

數(shù)據(jù)處理的速度

大數(shù)據(jù)量下Informatica 與Datastage的處理速度是比較快的,比較穩(wěn)定。Kettle的處理速度相比之下稍慢。

服務(wù)

Informatica與Datastage有很好的商業(yè)化的技術(shù)支持,而Kettle則沒有。商業(yè)軟件的售后服務(wù)上會比免費的開源軟件好很多。

風險

風險與成本成反比,也與技術(shù)能力成正比。

擴展

Kettle的擴展性無疑是最好,因為是開源代碼,可以自己開發(fā)拓展它的功能,而Informatica和Datastage由于是商業(yè)軟件,基本上沒有。

Job的監(jiān)控

三者都有監(jiān)控和日志工具。在數(shù)據(jù)的監(jiān)控上,個人覺得Datastage的實時監(jiān)控做的更加好,可以直觀看到數(shù)據(jù)抽取的情況,運行到哪一個控件上。這對于調(diào)優(yōu)來說,我們可以更快的定位到處理速度太慢的控件并進行處理,而informatica也有相應(yīng)的功能,但是并不直觀,需要通過兩個界面的對比才可以定位到處理速度緩慢的控件。有時候還需要通過一些方法去查找。

網(wǎng)上的技術(shù)文檔

Datastage < Informatica < kettle,相對來說,Datastage跟Informatica在遇到問題去網(wǎng)上找到解決方法的概率比較低,kettle則比較多。

5.項目經(jīng)驗分享

多張表同步、重復的操作:在項目中,很多時候我們都需要同步生產(chǎn)庫的表到數(shù)據(jù)倉庫中。一百多張表同步、重復的操作,對開發(fā)人員來說是細心和耐心的考驗。在這種情況下,開發(fā)人員最喜歡的工具無疑是kettle,多個表的同步都可以用同一個程序運行,不必每一張表的同步都建一個程序,而informatica雖然有提供工具去批量設(shè)計,但還是需要生成多個程序進行一一配置,而datastage在這方面就顯得比較笨拙。

增量表:在做增量表的時候,每次運行后都需要把將最新的一條數(shù)據(jù)操作時間存到數(shù)據(jù)庫中,下次運行我們就取大于這個時間的數(shù)據(jù)。Kettle有控件可以直接讀取數(shù)據(jù)庫中的這個時間置為變量;對于沒有類似功能控件的informatica,我們的做法是先讀取的數(shù)據(jù)庫中的這個時間存到文件,然后主程序運行的時候指定這個文件為參數(shù)文件,也可以得到同樣的效果。

有一句話說的好:世上沒有最好的,只有適合的!每一款ETL工具都有它的優(yōu)缺點,我們需要根據(jù)實際項目,權(quán)衡利弊選擇適合的ETL工具,合適的就是最好的。當下越來越多公司及其客戶更重視最新的數(shù)據(jù)(實時數(shù)據(jù))展現(xiàn),傳統(tǒng)的ETL工具可能滿足不了這樣的需求,而實時流數(shù)據(jù)處理和云計算技術(shù)更符合。所以我們也需要與時俱進,學習大數(shù)據(jù)時代下的ETL工具。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多