基于可復(fù)用構(gòu)件思想的ETL架構(gòu)設(shè)計
(1)元數(shù)據(jù)管理構(gòu)件。元數(shù)據(jù)是關(guān)于數(shù)據(jù)的數(shù)據(jù),元數(shù)據(jù)管理構(gòu)件主要完成ETL子系統(tǒng)中元數(shù)據(jù)管理模塊的功能,具體分成三小類,分別是負責(zé)維護數(shù)據(jù)倉庫架構(gòu)的維護類構(gòu)件、負責(zé)維護業(yè)務(wù)規(guī)則的維護類構(gòu)件和調(diào)度類構(gòu)件。
(2)層間接口構(gòu)件。為了在各個數(shù)據(jù)倉庫項目之間平穩(wěn)的移植ETL,在此設(shè)計了層間接口構(gòu)件。從抽象層面上為各數(shù)據(jù)倉庫項目提供一個相同的ETL處理框架,為ETL處理過程各層次的各種功能構(gòu)件提供接口,實現(xiàn)構(gòu)件具體處理過程對架構(gòu)的透明化,為系統(tǒng)功能擴展留下了余地。
(3)KPI(關(guān)鍵績效指標)自動測試構(gòu)件。測試無疑是保證系統(tǒng)質(zhì)量的一個重要方法,ETL也不例外,但是,ETL過程測試和一般的軟件測試在測試過程、測試方法、評價標準等方面都有比較大的不同,它是一個非常繁瑣、工作量巨大、有一定規(guī)律的過程。
從抽象層面上看,一類相似或相近的數(shù)據(jù)倉庫項目每個KPI(關(guān)鍵績效指標)的維度組合是相對固定的,測試標準和過程是一致的,所以,在ETL架構(gòu)中,專門提供了KPI自動測試類構(gòu)件,為每類KPI提供一個自動測試構(gòu)件,其基本處理邏輯如圖2所示。
該類構(gòu)件能夠快速發(fā)現(xiàn)ETL架構(gòu)中集成層和轉(zhuǎn)換層中相關(guān)構(gòu)件數(shù)據(jù)處理過程中隱藏的問題,從而降低ETL過程測試的難度和工作量,大幅度提高ETL架構(gòu)的效率和質(zhì)量。
2銀聯(lián)統(tǒng)計分析系統(tǒng)ETL構(gòu)件識別與架構(gòu)設(shè)計
為了說明基于可重用構(gòu)建思想的ETL架構(gòu)的有效性,下面介紹該架構(gòu)在多家銀聯(lián)統(tǒng)計分析系統(tǒng)中的實際應(yīng)用。
2.1 銀聯(lián)統(tǒng)計分析系統(tǒng)的介紹
銀聯(lián)統(tǒng)計分析系統(tǒng)是建立在數(shù)據(jù)倉庫基礎(chǔ)上的,為銀聯(lián)各分公司領(lǐng)導(dǎo)提供決策輔助信息的系統(tǒng)。其目的是為了更深入應(yīng)用銀聯(lián)積累的大量跨行交易數(shù)據(jù),是為了促進分公司、銀行、金融監(jiān)管機構(gòu)和行業(yè)客戶對業(yè)務(wù)進行全面、及時、準確的分析和定位,及時了解業(yè)務(wù)發(fā)展動態(tài)和預(yù)測,及時解決業(yè)務(wù)發(fā)展中存在的問題。
銀聯(lián)在全國有37家省級分公司。各分公司所關(guān)心的數(shù)據(jù)內(nèi)容,關(guān)注的KPI體系,KPI的評價標準都是一致的。但是,各分公司由于當(dāng)?shù)亟?jīng)濟發(fā)展水平不同,銀行卡應(yīng)用深度不同,導(dǎo)致各分公司業(yè)務(wù)種類差異很大,即使是同一種業(yè)務(wù),其成熟程度、規(guī)范程度差異也很大,體現(xiàn)在數(shù)據(jù)上就是數(shù)據(jù)源的種類不一致,即使是相同的業(yè)務(wù)數(shù)據(jù)源,在數(shù)據(jù)結(jié)構(gòu)、業(yè)務(wù)判斷規(guī)則、數(shù)據(jù)表現(xiàn)形式方面也有很大差異性。
這種共性大差異性也大的多個數(shù)據(jù)倉庫系統(tǒng),設(shè)計上選用可重用性構(gòu)件的思想來指導(dǎo)ETL的架構(gòu)設(shè)計,實現(xiàn)上采用自己開發(fā)的擁有自動知識產(chǎn)權(quán)決策支持系統(tǒng)產(chǎn)品:數(shù)據(jù)挖掘商業(yè)應(yīng)用平臺(Compass)。該平臺包括智能流程管理子系統(tǒng)、報表專家子系統(tǒng)、多維分析子系統(tǒng)、數(shù)據(jù)挖掘子系統(tǒng)四個部分。其中智能流程子系統(tǒng)是一個獨立的ETL開發(fā)工具,能夠支持基于可復(fù)用構(gòu)件思想ETL過程的實現(xiàn)。
2.2 銀聯(lián)統(tǒng)計分析系統(tǒng)ETL構(gòu)件分層識別
在銀聯(lián)統(tǒng)計分析系統(tǒng)ETL設(shè)計階段,依據(jù)圖1所示的ETL架構(gòu)和設(shè)計思想來設(shè)計和組織ETL各處理階段可重用構(gòu)件以及構(gòu)件之間的接口規(guī)則:
(1)抽取層。銀聯(lián)統(tǒng)計分析系統(tǒng)抽取層處理的數(shù)據(jù)主要三類:業(yè)務(wù)數(shù)據(jù)、維度數(shù)據(jù)、輔助數(shù)據(jù)。業(yè)務(wù)數(shù)據(jù)主要包括全流水、二次清分數(shù)據(jù)、公共支付、固網(wǎng)支付、網(wǎng)上支付等業(yè)務(wù)交易數(shù)據(jù);維度數(shù)據(jù)主要包括商戶信息、機構(gòu)信息、終端信息、地區(qū)信息等;輔助數(shù)據(jù)主要是卡bin信息、發(fā)卡信息等。
銀聯(lián)統(tǒng)計分析系統(tǒng)這個層面的數(shù)據(jù)除了全流水?dāng)?shù)據(jù)外,其他的內(nèi)容在各個分公司表現(xiàn)形式、處理規(guī)則差異很大,封裝成構(gòu)件的價值不大,所以這個層面可以識別的構(gòu)件只有全流水抽取。
(2)集成轉(zhuǎn)換層。鑒于各分公司統(tǒng)計分析系統(tǒng)所關(guān)心的數(shù)據(jù)內(nèi)容,關(guān)注的KPI體系,關(guān)注的維度數(shù)據(jù)(商戶、機構(gòu)、終端)信息相似度很高,所以這個層面可以識別的構(gòu)件比較多,主要有兩大類:流水?dāng)?shù)據(jù)集成轉(zhuǎn)換構(gòu)件;維度類數(shù)據(jù)集成轉(zhuǎn)換構(gòu)件,具體包括商戶、機構(gòu)、終端、商戶類別、地區(qū)信息的集成轉(zhuǎn)換構(gòu)件。
輔助數(shù)據(jù)因為類型多樣,差異比較大,可重用價值不高,所以不對其識別構(gòu)件。
(3)特殊處理層。銀聯(lián)統(tǒng)計分析系統(tǒng)的特殊處理層的構(gòu)件不再按照數(shù)據(jù)類別識別,而是根據(jù)每個指標的使用頻率、涉及數(shù)據(jù)記錄數(shù)的多少識別三類構(gòu)件:交易指標類構(gòu)件、調(diào)賬指標類構(gòu)件、維度統(tǒng)計指標類構(gòu)件,分別負責(zé)交易類指標、調(diào)賬類指標、商戶和終端發(fā)展情況的統(tǒng)計。
(4)基礎(chǔ)服務(wù)層。各分公司銀聯(lián)統(tǒng)計分析系統(tǒng)對元數(shù)據(jù)管理要求基本一致且沒有特殊要求,銀聯(lián)統(tǒng)計分析系統(tǒng)將其識別為元數(shù)據(jù)管理構(gòu)件。
考慮到銀聯(lián)統(tǒng)計分析系統(tǒng)處理的數(shù)據(jù)對象基本一致,差異主要體現(xiàn)在數(shù)據(jù)的表現(xiàn)形式和處理規(guī)則上,加上ETL過程構(gòu)件之間傳遞數(shù)據(jù)量很大,這里選用數(shù)據(jù)池的形式而不采用函數(shù)調(diào)用的形式來定義構(gòu)件接口。例如,所有分公司對商戶關(guān)注的信息都是一樣的,但是每個分公司提供的商戶信息的表現(xiàn)形式卻各不相同,抽取層接口數(shù)據(jù)池通過約定抽取層商戶信息抽取過程生成內(nèi)容和格式,為集成轉(zhuǎn)換層商戶信息集成轉(zhuǎn)換構(gòu)件提供一個穩(wěn)定的數(shù)據(jù)源,使其不必關(guān)心用戶提供的數(shù)據(jù)源是什么形式。
考慮到銀聯(lián)統(tǒng)計分析系統(tǒng)關(guān)注的指標繁多,一次性全部識別成控件難度和工作量都很大。所以,首先識別并封裝最重要的、最常用的交易類指標的自動測試構(gòu)建;然后是調(diào)帳指標和維度統(tǒng)計指標的自動測試構(gòu)件的識別和封裝。
評論