ETL基礎理論 學習筆記

1、ETL的位置:介於數據與數據倉庫之間

2、ETL的概念:數據抽取、轉換、裝載的過程,它是構建數據倉庫的重要環節。

3、ETL的作用:負責將分佈的、異構數據源中的數據如關係數據、平面數據文件等取到臨時中間層(ods層)後進行清洗、轉換、集成,最後加載到數據倉庫(dw層)或者數據集市(dw層)中,成爲聯機分析處理、數據挖掘的基礎。

4、數據的抽取

(1)與存放dw的數據庫系統相同的數據源處理方法

        一般情況下,DBMS(SQLServer、Oracle)都會提供數據庫鏈接功能,在dw數據庫服務器和原業務系統之間建立直接的關係,就可以寫Select語句進行直接訪問。

(2)與dw數據庫系統不同的數據源的處理方法

        一般情況下,通過ODBC的方式建立數據庫鏈接,如SQLServer和Oracle之間。如果不能建立數據庫鏈接,可以有兩種方式完成,一種是通過工具將數據導出成.txt或.xls文件,然後再將這些源系統文件導入到ODS中。另一種方法是通過程序接口來完成。

(3)文件類型數據源

        可將數據導入到指定數據庫後再抽取或者藉助工具實現,如SQLServer的SSIS服務的平面數據源和平面目標等組件,導入ODS中。

(4)增量更新問題

        一般情況下,業務系統會記錄業務發生等時間,可以用來做增量的標誌,每次抽取之前首先判斷ODS中記錄最大的時間,然後根據這個時間去業務系統取大於這個時間所有的記錄。利用業務系統的時間戳,一般情況下,業務系統沒有或者部分有時間戳。

5、數據的清洗轉換

        一般情況下,數據倉庫分爲ods、dw兩部分。通常是從業務系統到ods做清洗,將髒數據和不完整的數據過濾掉,在ods到dw的轉換過程中進行業務規則的計算和聚合。

(1)數據清洗

        數據清洗是過濾掉不符合要求的數據,將過濾結果交給業務主管部門,確認是否過濾掉還是由業務單位修正後再進行抽取。不符合要求的數據主要是不完整的數據、錯誤的數據、重複的數據三大類。

(2)數據轉換

        主要是進行不一致的數據轉換、數據粒度的轉換以及一些商務規則的計算。

6、ETL的實現,常用的三種方法

(1)ETL工具(如SQLServer的SSIS服務、Informatica、DataStage等)實現。

(2)SQL方式實現(編碼實現)。

(3)ETL工具與SQL相結合。

    前兩種方法各有優缺點,藉助工具可以快速建立ETL工程,屏蔽來複雜等編碼任務,但是缺少靈活性。SQL方法等優點是靈活,提高ETL運行效率對技術要求高。第三組是綜合前兩種等優點,極大提高開發速度和效率。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章