Data-Warehouse

“ETL vs ELT”只是“表格 vs 視圖”嗎?

  • April 29, 2021

TL;博士; ETL 和 ELT 之間的區別僅僅是轉換後的數據在載入到倉庫之前是具體還是抽象?

所以請原諒我的主題標題過於寬泛,因為它掩蓋了細節,但我試圖以明確的方式理解 ETL 和 ELT 的不同之處。它們看起來非常相似,以至於您可以將它們描述為 ELTL。在這兩種情況下,您都從原始數據開始,最終以表格中的具體轉換數據結束。似乎介於兩者之間的是差異,它可以採取多種形式,具體取決於從開始狀態到結束狀態的轉換的數量/複雜性。

根據我對ETL的了解,步驟如下:

  1. 從源系統中提取數據並載入到原始表中
  2. 將原始表中的數據轉換為臨時表
  3. 將臨時中的數據載入到您的倉庫中

在我見過的一些 ELT 定義中,這些步驟似乎是:

  1. 從源系統中提取數據並載入到原始表中
  2. 通過創建表示臨時表的視圖從概念上轉換原始表中的數據
  3. 將暫存視圖中的數據載入到您的倉庫中

但是後來我看了其他關於ELT的文章,好像是:

  1. 從源系統中提取數據並載入到原始表中
  2. 通過創建表示臨時表的視圖從概念上轉換原始表中的數據
  3. 恭喜,不再有從原始狀態到轉換狀態的數據硬複製,一切都是視圖!使用者只需啟動他們的查詢並立即查看嵌套的n級*返回數據!

*結果可能會有所不同,具體取決於您是否有數百萬美元可用於雲處理和/或大規模量子計算是否可用

不。

你描述的都是ELT的變種。

ETL 和 ELT 之間的區別在於執行“T”的位置。“傳統”ETL 流程將使用 DataStage、Informatica、Talend 等專用工具在 DBMS 之外實現“T”(數據轉換)。然後將轉換為目標模型的數據簡單地載入到目標 DBMS 表中.

ELT 流程的不同之處在於它是執行“T”的目標數據庫引擎;您將原始數據載入到目標數據庫中的臨時表中,然後使用 DBMS 工具將它們“按摩”成最終形式並複製到目標表中。當源和目標數據類型阻抗相對較低且相關 DBMS 具有完成這項工作的工具和能力時,這是一個合適的替代方案。

引用自:https://dba.stackexchange.com/questions/290680