基于可復用構件思想的ETL架構設計
2.3 銀聯統計分析系統ETL架構設計
基于可復用構件思想銀聯統計分析系統ETL架構具體包含六個功能模塊(如圖3所示)包括:元數據抽取模塊、可重用構件選擇和導入模塊、數據倉庫架構自動維護模塊、ETL過程定義模塊、ETL調度模塊、ETL構件生成模塊。各個模塊的具體功能分工如下:
(1)元數據抽取模塊。這個模塊主要完成兩項工作:抽取銀聯業務數據和維度數據元數據,并在此基礎上對系統進行更精確的定義,例如銀聯各類數據源提供的時間周期、銀聯數據倉庫數據保留的時間和備份頻率等信息。
(2)可重用構件的選擇和導入模塊。在銀聯統計分析系統的分析和設計階段,已經識別了抽取層、集成轉換層等各層有重用價值的構件。為了管理和重用這些構件,構件選擇和導入模塊的功能有兩個:第一,從銀聯構件庫中抽取已經封裝的全流水交易數據抽取構件、集成轉換構件、KPI轉換構件、維度類數據集成轉換構件(包括商戶、機構、終端、商戶類別、地區信息五類構件)、KPI自動測試類構件,將其導入到ETL過程庫,按照ETL架構(見圖1)對導人的構件分層組織,生成系統的ETL過程框架(如圖4(a)所示),圖4(a)中的ETL過程鏈中三個JOB節點分別對應ETL架構(見圖1)中的抽取層、數據集成轉換層、特殊處理層,圖4(b)~(d)分別對應各導人構件(一個JOB節點代表一個導人構件的處理過程)在這三個層次中的組織形式。第二,模塊可根據新項目銀聯分公司特殊業務規則和指標口徑配置每個構件的處理規則,將配置信息加入元數據庫中。
(3)數據倉庫架構自動維護模塊。數據倉庫架構自動維護模塊主要功能是依據元數據庫中的信息,為銀聯統計分析系統完成數據倉庫的創建和初始化工作,完成事實表、維度表創建,完成每個構件需要的配置表、中間表和臨時表的建立等工作,而這些原本需要用手工來實現和維護的。
(4)ETL過程定義模塊。在初始框架的基礎上,可通過ETL定義模塊可視化地定義構件庫中沒有可重用構件的ETL過程,例如手續費和品牌費抽取、商戶信息抽取(如圖5所示)、終端信息過程等,使整個銀聯統計分析系統的ETL趨于完善。
(5)ETL調度模塊。ETL調度模塊可以根據系統的調度設置,執行ETL過程庫中的ETL過程,實現數據抽取、轉換、加載、換算等工作。
(6)可重用構件生成模塊。對于新定義的ETL過程,若可重用價值高,可通過ETL構件生成模塊從ETL過程庫中抽取相應ETL處理過程包裝成可重用構件。可重用構件一般包括以下內容:ETL處理過程、配置過程說明文檔、相關表(配置表、中間表和臨時表)的信息、初始化數據、特殊規則配置功能界面,構件這些構成部分由ETL構件生成模塊分別存入到構件庫中相關表中。


3 結 語
這里介紹了一個基于可復用構件思想的ETL架構,以北京銀聯、江蘇銀聯、浙江銀聯等10家省級銀聯統計分析系統為例,介紹了該架構各層構件的識別過程,設計了ETL模塊構成以及各模塊主要功能。該架構已經在10家省級銀聯分公司的統計分析系統的ETL構建中應用,實踐表明該架構是有效的,它能夠在比較短的時間內完成統計分析系統的構建,可有效縮短系統的開發周期,大幅度降低各分公司的時間成本和資金成本,對于推動數據倉庫和商業智能在銀聯各個省級分公司的應用有顯著意義和使用價值。
評論