ETL是將資料從源系統傳輸到資料倉庫時使用的最常用方法。提取,轉換和載入是一個過程,涉及從外部源提取資料並對其進行轉換以滿足操作需求,然後將其載入到目標資料庫或資料倉庫中。當為資料倉庫使用不同的資料庫時,使用這種方法是合理的。
在這種情況下,我們將資料從一個地方轉換為另一個地方,因此這是在專用引擎中進行轉換工作的適當方式。
提取,載入和轉換是一個提取資料並將其載入到資料庫中的臨時表中的過程。將其載入到臨時表後,將其轉換為資料庫中的位置,然後將其載入到目標資料庫或資料倉庫中。
ETL需要管理原始資料,包括提取所需資訊並執行轉換以滿足業務需求。每個階段(如提取,轉換和載入)都需要資料工程師和開發人員的互動,以及處理傳統資料倉庫的容量限制。使用ETL,BI使用者和分析師習慣於等待,直到整個ETL過程完成後才能獲得對資訊的簡單存取。
在ELT方法中,在提取資料之後,我們立即開始載入階段,將所有資料源移動到單個集中式資料儲存庫中。今天的基礎架構技術正在使用雲,系統現在可以支援大型儲存和可延伸計算。因此,對於維護所有提取的原始資料,大量擴充套件資料池和快速處理實際上是無窮無盡的。
通過這種方式,ELT方法提供了ETL的現代替代方案,但在某些情況下我們需要使用ELT。ELT應該用於各種情況而不是ETL,它們是:
注意:當使用ETL時,轉換由ETL工具處理,而在ELT中,轉換由目標資料源處理。
ELT的工作
提取,載入和轉換是從無限來源收集資訊,將其載入到處理位置並將其轉換為可操作的商業智慧的過程。
引數/專案 | ETL | ELT |
---|---|---|
處理 | 資料在登台伺服器中傳輸,然後移動到資料倉庫資料庫。 | 資料保留在資料倉庫的DB中。 |
轉型/轉換 | 轉換在ETL伺服器和暫存區域中完成。 | 轉換在暫存區域中執行。 |
程式碼用法 | ETL用於:少量資料,計算密集型轉型。 | ELT用於:巨量資料。 |
載入時間 | 首先,資料在分段中載入,然後載入到目標系統中。這是一個耗時的過程。 | 在ELT中,資料僅在目標系統中載入一次。在這個過程中花費的時間較少。 |
轉換時間 | ETL過程需要時間來完成轉換。隨著資料量的增長,轉換時間也會增加。 | 在ELT過程中,速度決不取決於資料的大小。 |
維護時間 | 當選擇要載入和轉換的資料時,它需要高度維護。 | 由於資料始終可用,因此ELT需要低維護。 |
實施複雜性 | 在ELT中,更容易在早期實現它。 | 要實施ELT流程,組織應該具備專業技能和工具的深入知識。 |
資料湖支援 | ETL不支援資料湖。 | ELT允許將Data Lakes與非結構化資料一起使用。 |
支援資料倉庫 | ETL模型用於關係資料和結構化資料。 | ELT用於可延伸的雲基礎架構,支援結構化和非結構化資料。 |
複雜性 | ETL過程僅載入在設計時識別的基本資料。 | ELT僅涉及從後向輸出開發並僅載入相關資料。 |
成本 | 在ETL過程中,中小型企業的成本很高。 | ELT包括使用線上軟體作為服務平台的低入門成本。 |
查詢 | 在ETL過程中,需要在臨時區域中提供維度和事實。 | 在ELT中,所有資料都可用,因為提取和載入只在一個動作中發生。 |
計算 | 在ETL中,現有列被覆蓋或需要附加資料集並推播到目標平台。 | 在ELT中,很容易將列新增到現有表中。 |
硬體 | 在ETL中,這些工具具有獨特的硬體要求,這是昂貴的。 | ELT是一個新概念,實施起來很複雜。 |
支援非結構化資料 | ETL支援關係資料 | ELT有助於提供非結構化的現成資料。 |
這取決於公司現有的網路架構,預算以及它已經使用雲和巨量資料技術的程度。但是當三個焦點區域中的任何一個或全部都很關鍵時,我們可以考慮使用ELT。
當攝取速度是優先考慮時,我們必須使用ELT。因為ELT不必等待資料被處理掉然後載入(這裡,載入資料和轉換可以並行發生)。這裡攝取過程更快,並提供比ETL更快的原始資訊。
將資料轉化為商業智慧的優勢在於能夠將隱藏模式表現為可操作的資訊。通過儲存所有歷史資料,組織可以隨時間線,銷售模式,季節性趨勢或任何新興指標進行挖掘,這對組織而言至關重要。在這種情況下,我們可以存取原始資料,因為資料在載入之前未被轉換。大部分在雲資料湖中,原始資料被儲存然後被提煉,或者儲存處理過的資訊。例如,資料科學家更喜歡使用原始資料的存取,而業務使用者則更喜歡將規範化資料用於商業智慧。
當使用高階資料處理引擎(如雲資料倉庫或Hadoop)時,ELT可以利用本機處理能力來實現更高的可延伸性。ETL和ELT都是節省時間的方法,用於從原始資料生成商業智慧。但雲正在改變企業如何利用所有技術解決ELT挑戰。