ETL算法總結

源數據概述

一.元數據分類

  • 流水事件表 一般只會增加不會刪除和修改,如存款記錄,採用append
  • 常規狀態表 會修改刪除和新增,如客戶信息表
  • 代碼參數表 記錄原系統中使用數據代碼的參數

二.數據文件類型

數據文件大多 數以一天爲週期從源系統中加載到數倉,數據文件包含增量和全量以及帶刪除的增量.

  • 增量數據文件 
    數據文件內容爲數據表增量信息,包含表內新增及修改的記錄
  • 全量數據文件 
    數據文件內容爲數據表全量信息,包含表內所有記錄
  • 帶刪除增量數據文件 
    數據文件內容爲數據表增量信息,在增量數據文件的基礎上帶了刪除的數據,通常有標誌刪除的標誌列
  • 帶刪除的全量數據文件 
    數據文件內容爲數據表全量信息,在全量數據文件的基礎上帶了刪除的數據

ETL算法

一.近源模型層主要算法

  • 0210 APPEND算法
  • 0211 常規拉鍊算法
  • 0212 全量帶刪除拉鍊算法

二.整合模型層主要算法

  • 0610 APPEND算法
  • 0611 MERGE算法
  • 0612 常規拉鍊算法
  • 0613 基於增量數據的刪除拉鍊算法
  • 0614 基於全量數據的刪除拉鍊算法
  • 0615 經濟型常規拉鍊算法
  • 0616 經濟型基於增量的刪除拉鍊算法
  • 0617 經濟型基於全量數據的刪除拉鍊算法
  • 0618 PK_NOT_IN_APPEND算法
  • 0619 源日期字段自拉鍊算法

ETL算法詳解

一.五層架構

(數據緩衝層 | )
技術緩衝層 |  
近源模型層 |  
整合模型層 |  
共性加工層 |

集市應用層 |

二.技術緩衝層和近源模型層的數據流算法之-APPEND算法

0210算法通常用於流水事件表,適合這類算法的源表在源系統中不會更新和刪除,而只會發生一筆添加一筆,所以只需每天將當天交易日期爲當日最新的數據直接附加進目標表即可; 
此類表在近源模型層和技術緩衝層和源系統表幾乎一致,不會額外增加物理字段>; 
一般直接insert進目標表

三.技術緩衝層到近源模型層的數據流算法之-常規拉鍊算法

0211算法通常用於無刪除操作的常規狀態表,適合這類算法的源表在源系統中會更新和新增,不會刪除,所以只需每天獲取當天交易日期爲當日最新的數據(增量或全量)

 

 



 

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