熱線電話:13121318867

登錄
首頁大數據時代你想知道的關于ETL的基礎知識,都在這里了
你想知道的關于ETL的基礎知識,都在這里了
2020-07-29
收藏

想必大家在學習數據分析的時候,一定接觸過ETL,那么關于ETL大家了解到什么程度呢?跟小編一起來復盤一下吧!

一、ETL概念

ETL全稱是:Extract-Transform-Load,是將業務系統的數據經過抽取(Extract)、清洗轉換(Transform)之后加載(Load)到數據倉庫的過程。其目的是將企業中那些分散、零亂、標準不統一的數據整合到一起,從而為企業的決策提供分析依據。 ETL為BI項目一個非常重要的環節, 往往在BI項目中,ETL會占用我們整個項目至少1/3的時間,可以說ETL設計的好壞會直接關系到BI項目的成敗。

二、ETL關鍵技術

1.數據的抽取(Extract)

首先需要確定數據源,也就是要弄明白數據是從哪幾個業務系統中來,每個業務系統的數據庫服務器運行什么DBMS;是否有手工數據存在,存在的話,數據量是多少;是否有非結構化的數據存在等。我們需要定義數據接口,對每一個源文件及系統中的每一個字段進行詳細說明。之后確定數據抽取的方法,例如:需要確定是主動抽取還是由源系統推送?是按每日抽取還是每月抽取?以及是增量抽取還是全量抽取?

2.數據的清洗轉換(Transform)

(1)數據清洗(Cleaning)

數據清洗的主要任務是清洗掉那些不符合要求的數據,將清洗的結果交給業務主管部門,并確認是直接清洗掉,還是由業務單位修正之后再次抽取。

不符合要求的數據主要包括:不完整的數據、錯誤的數據、重復的數據這三類。

(2)數據轉換

數據轉換一般包括:

空值處理,也就是捕獲字段空值,并將其加載或替換為其他含義數據,或者數據分流問題庫

數據標準,即統一元數據、統一標準字段、統一字段類型定義

數據拆分,根據實際業務需求對數據進行拆分,例如對身份證號拆分,拆分行政區劃、出生日期、性別等

數據驗證,時間規則、業務規則、自定義規則

數據替換,替換由于業務因素而導致的那些無效數據、缺失數據

數據關聯,與其他數據進行關聯,以保障數據完整性

3.數據加載(Load)

將清洗和轉換后的數據裝載到對應的表庫中是ETL過程的最后步驟。采用什么樣的方法裝載數據,關鍵取決于所執行操作的類型和需要裝載的數據量。當對應庫為關系數據庫時,通常有兩種裝載方式:

(1)直接使用SQL語句進行insert、update、delete操作。

(2)采用批量裝載方法,例如bcp、bulk、關系數據庫特有的批量裝載工具或者api。

三、ETL日志、警告發送

1、 ETL日志

ETL日志主要分為三類。

(1)執行過程日志::在ETL執行過程中每一步的記錄,記錄每一次運行過程中各步驟的起始時間,影響的數據量,以流水賬形式記錄。

(2)錯誤日志::某個模塊出錯時的日志,會記錄出錯的時間、出錯的模塊以及其它相關出錯的信息等。

(3)總體日志:只是記錄ETL開始和結束時間以及否成功等信息。

如果我們使用ETL工具,那些ETL工具會也自動產生日志,這些日志也可以看做ETL日志的一部分。

記錄日志的有助于我們隨時知道ETL運行情況,一旦出現錯誤,我們可以知道是哪里出錯。

2、 警告發送

ETL出現錯誤,不僅會形成ETL錯誤日志,并且會向系統管理員發送警告。警告發送的方式有很多種,通常會采用向系統管理員發送郵件的形式,并且會附上出錯的相關信息,方便管理員排查錯誤。

ETL是BI項目的關鍵環節,也是一個長期的過程,需要不斷的發現問題,并解決問題,才能讓ETL運行效率更高,為BI項目后期開發提供更加準確與高效的分析數據。

四、ETL 模式

ETL主要有四種實現模式,分別為:觸發器模式、增量字段、全量同步、日志比對

五、ETL 工具

我們在選擇ETL工具時,需要考慮從工具對平臺和數據源的支持程度,集成性和開放性、抽取和裝載的性能、數據轉換和加工的性能,以及侵入性的高低,是否管理和調度功能等方面綜合考慮。

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢