什么是ETL?


ETL,是英文 Extract-Transform-Load 的縮寫,用來描述將數據從來源端經過抽取(extract)、交互轉換(transform)、加載(load)至目的端的過程。ETL是將業務系統的數據經過抽取、清洗轉換之后加載到數據倉庫的過程,因而也稱為數據倉庫技術。其目的是將分散、零亂、標准不統一的數據整合到一起,為企業的決策提供分析依據。

可以看出,ETL要做三部分工作,數據抽取、數據的清洗轉換和數據的加載。數據抽取一般是通過工具從各個不同的數據源抽取到一個中間層中,其中可以做一些數據的清洗和轉換,這個過程要注意抽取效率。數據清洗是指將不符合要求的數據除掉,包括錯誤數據、不完整數據、重復數據。數據轉換要做的工作是把所有數據的模板、標准、計算規則等進行統一,如存儲結構、數據編碼等。清洗轉換好的數據按着標准的ETL架構存儲到數據倉庫中,以備進行數據分析和決策。

ETL是BI重要的一個環節,是進行數據分析的基礎。數據倉庫構建好后,才有可能基於數據倉庫來構建分析模型並根據需求展現最終的結果。做好一個BI項目,其中很大一部分工作是ETL,ETL的質量決定了BI是否成功。有的BI工具本身就帶着ETL功能,實際上是把前期和后期工作整合到一起了。當然專門的ETL工具就有很多,完全可以滿足BI的需要,因而在工作中除了要考慮工具的性能、效率,還要考慮項目的成本,經濟也是必須考慮的因素。實際上ETL不僅是BI的基礎,也是報表工具的基礎。報表工具價格比較廉,如FINE、RAQ、皕傑報表的價格與BI比起來實在算不了什么,所以也就不與ETL一起說事兒了。

Kettle 是一款國外開源的 etl 工具,純 java 編寫,綠色無需安裝,數據抽取高效穩定(數據遷移工具)。
Kettle 中有兩種腳本文件,transformation 和 job,transformation 完成針對數據的基礎轉換,job 則完成整個工作流的控制。

主頁:http://kettle.pentaho.org/


免責聲明!

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



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