ETL測試-介紹

翻譯自:https://www.tutorialspoint.com/etl_testing/etl_testing_introduction.htm

在數(shù)據(jù)倉庫中的數(shù)據(jù)是用一個ETL(抽取,轉換,加載)工具加載的。如字面意思,它需要下面的操作:

  • 從事務系統(tǒng)像Oracle,MySql或者其他的關系型數(shù)據(jù)庫抽取數(shù)據(jù)
  • 通過數(shù)據(jù)清理操作轉換數(shù)據(jù)
  • 加載數(shù)據(jù)到OLAP數(shù)據(jù)倉庫

你也可以是用ETL工具從平面文件中像spreadsheets和CSV文件抽取數(shù)據(jù),然后加載它到OLAP數(shù)據(jù)倉庫中方便分析和報告。讓我們舉一個例子來更好的理解它。

例子

讓我們假設有一個制造公司有銷售,人力資源,材料管理,EWM等多個部門,所有這些部門都有獨立的數(shù)據(jù)庫,用于維護信息的工作,每個數(shù)據(jù)庫都有不同的技術,landscape,表格名稱,列等?,F(xiàn)在,如果公司想要分析歷史數(shù)據(jù)并生成報告,那么這些數(shù)據(jù)源的所有數(shù)據(jù)都應該被提取并加載到數(shù)據(jù)倉庫中以將其保存以進行分析工作。

ETL工具從所有這些異構數(shù)據(jù)源中提取數(shù)據(jù),轉換數(shù)據(jù)(如應用計算,連接字段,密鑰,刪除不正確的數(shù)據(jù)字段等),并將其加載到數(shù)據(jù)倉庫中。之后,您可以使用各種商業(yè)智能(BI)工具,使用此數(shù)據(jù)生成有意義的報告,儀表板和可視化。

ETL和BI工具之間的區(qū)別

一個ETL工具常常從不同的數(shù)據(jù)源抽取數(shù)據(jù),轉換數(shù)據(jù),然后加載到DW系統(tǒng);然而一個BI的工具常常用于為最終用戶生成交互式和特別的報告,高級管理儀表盤,月度,季度和年度董事會議的數(shù)據(jù)可視化。

最常見的ETL工具包括-SAP BO Data Services (BODS), Informatica – Power Center, Microsoft – SSIS, Oracle Data Integrator ODI, Talend Open Studio, Clover ETL Open source等等。

一些流行的BI工具包括? SAP Business Objects, SAP Lumira, IBM Cognos, JasperSoft, Microsoft BI Platform, Tableau, Oracle Business Intelligence Enterprise Edition等等。

ETL流程

讓我們更詳細地討論下一些ETL程序關鍵步驟

抽取數(shù)據(jù)

它涉及到從不同的異構數(shù)據(jù)源中抽取數(shù)據(jù)。交易系統(tǒng)的數(shù)據(jù)抽取根據(jù)需求和使用的ETL工具而異。它通常通過在營業(yè)時間運行定好的任務,像在晚上或者在周末的運行任務。

image.png

轉換數(shù)據(jù)

它涉及將數(shù)據(jù)轉換成可以容易的加載到DW系統(tǒng)中的合適的格式。數(shù)據(jù)轉換在數(shù)據(jù)上的應用計算,連接和定義主鍵和外鍵。例如,如果想要的總收入百分比數(shù)據(jù)不再數(shù)據(jù)庫中,你可以用在轉換中用百分比公式并且加載數(shù)據(jù)。同樣,如果有姓和名在不同的列中,然后你可以在加載數(shù)據(jù)前用一個連接操作。一些數(shù)據(jù)不需要任何轉換,這些數(shù)據(jù)稱為直接移動或通過數(shù)據(jù)。

數(shù)據(jù)轉換也涉及數(shù)據(jù)修正和清理,移除不正確的數(shù)據(jù),不完整的數(shù)據(jù)形成,以及修復數(shù)據(jù)錯誤。它也包括數(shù)據(jù)的完整性和格式化不兼容的數(shù)據(jù),然后加載到DW系統(tǒng)。

加載數(shù)據(jù)到DW系統(tǒng)

它涉及加載數(shù)據(jù)到DW系統(tǒng)進行分析報告和信息。目標系統(tǒng)可以是一個簡單分隔的平面文件或者數(shù)據(jù)倉庫。

ETL工具功能

一個典型的基于ETL的數(shù)據(jù)倉庫使用階段區(qū)域,數(shù)據(jù)整合以及入口層來表現(xiàn)它的功能。它通常是3層結構。

  • Staging Layer - 分級層或分級數(shù)據(jù)庫用于存儲從不同源數(shù)據(jù)系統(tǒng)抽取的數(shù)據(jù)
  • Data Integration Layer - 數(shù)據(jù)集成層從分級層轉換并且將數(shù)據(jù)移動到數(shù)據(jù)庫,這些數(shù)據(jù)排列成層次結構,經(jīng)常稱為** dimensions(維度),以及facts(事實)和aggregate facts(聚合事實)。在DW系統(tǒng)中事實表和維度表的組合稱為schema**(模式)。
  • Access Layer - 接入層通常被最終用戶使用于分析報告和信息。

下面插圖展示了這三層是如何互相交互的。

image.png
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容