1. 程式人生 > >淺談BI領域的資料模型設計(二)

淺談BI領域的資料模型設計(二)

/**********************************/
目錄:
第一部分:基礎概念
第二部分:設計方式
第三部分:銀行業資料模型基本概念介紹
第四部分:銀行業資料模型分主題介紹
第五部分:ODS和EDW
/**********************************/
第三部分:銀行業資料模型基本概念介紹
1.什麼是資料模型
    模型是對現實世界特徵的模擬和抽象。
    資料模型是描述資料與資料之間的關係的圖形化檢視,它通過實體、
    屬性及其關係對企業運營和管理過程中涉及的所有業務概念和邏輯規則進行統一定義、命名和編碼。
    銀行業資料模型定義了銀行重要的業務概念和各個主題域內部主要實體與實體間的關係。

2.邏輯資料模型
    一個邏輯資料模型是建立商業智慧的基礎框架,也是建立資料倉庫系統的第一步,
    並且是奠定現在或者將來為分析者提供有價值資料分析的重要基礎。
    邏輯資料模型描述模型實體以及它們如何關聯,是以加強理解為目的而對所考察物件進行的抽象。
    相對於物理資料模型,邏輯資料模型的設計是獨立於特定資料庫平臺。  
3.物理資料模型
    物理資料模型描述模型實體的細節。包括通過使用特定資料庫如何實施模型的資訊。                      
    在設計物理資料模型時需要考慮使用什麼資料庫、欄位型別、長度、索引等,也要考慮應用程式的效能等因素。
4.邏輯資料模型特點

    一個邏輯資料模型應該準確反映體現企業業務的並且為企業所關心的資訊需求、規則和策略。
    邏輯資料模型會被用來建立物理資料模型。                                            
    邏輯資料模型與具體平臺無關。                                                      
    只有在業務發生變化時,邏輯資料模型才會變化。                                      
    邏輯資料模型可以被業務部門所理解。                                                

    邏輯資料模型可以提供穩定性、可靠性、可獲取性和可重用性。
5.邏輯資料模型的優點   
    反映了業務的事實和規則,                                                         
    面向業務使用者,強調需求而不是技術方案,                  
    重點討論對業務來說什麼是重要的,                        
    理解一部分資料和其他資料的關係,                        
    形成一個一致的檢視,避免了資料冗餘和不同版本資料的存在,
    是未來擴充套件地一個穩定的基礎,                            
    建立對業務問題和優先順序的統一理解,                      
    建立統一的業務語言,                                    
    促進業務人員與IT人員之間的資訊交換。 
6.邏輯資料建模的概念
    (1)主題                   
    (2)實體
    (3)屬性
    (4)關係
    (5)主鍵
    (6)外來鍵
    (7)正規化  
(1)主題
    根據資料倉庫概念的含義,資料倉庫擁有以下四個特點:
    a.面向主題。
        操作型資料庫的資料組織面向事務處理任務,各個業務系統之間各自分離,
        而資料倉庫中的資料是按照一定的主題域進行組織。
        主題是一個抽象的概念,是指使用者使用資料倉庫進行決策時所關心的重點方面,一個主題通常與多個操作型資訊系統相關。 
    b.整合的。
        面向事務處理的操作型資料庫通常與某些特定的應用相關,資料庫之間相互獨立,並且往往是異構的。
        而資料倉庫中的資料是在對原有分散的資料庫資料抽取、清理的基礎上經過系統加工、彙總和整理得到的,必須消除源資料中的不一致性,
        以保證資料倉庫內的資訊是關於整個企業的一致的全域性資訊。 
    c.相對穩定的。
        操作型資料庫中的資料通常實時更新,資料根據需要及時發生變化。
        資料倉庫的資料主要供企業決策分析之用,所涉及的資料操作主要是資料查詢,一旦某個資料進入資料倉庫以後,
        一般情況下將被長期保留,也就是資料倉庫中一般有大量的查詢操作,但修改和刪除操作很少,通常只需要定期的載入、重新整理。 
    d.反映歷史變化。
        操作型資料庫主要關心當前某一個時間段內的資料,而資料倉庫中的資料通常包含歷史資訊,
        系統記錄了企業從過去某一時點(如開始應用資料倉庫的時點)到目前的各個階段的資訊,通過這些資訊,
        可以對企業的發展歷程和未來趨勢做出定量分析和預測。企業資料倉庫的建設,是以現有企業業務系統和大量業務資料的積累為基礎。
        資料倉庫不是靜態的概念,只有把資訊及時交給需要這些資訊的使用者,供他們做出改善其業務經營的決策,資訊才能發揮作用,資訊才有意義。
        而把資訊加以整理歸納和重組,並及時提供給相應的管理決策人員,是資料倉庫的根本任務。
        因此,從產業界的角度看,資料倉庫建設是一個工程,是一個過程。  
 
    當事人、內部機構  – 當事人                      
    產品、協議、資產  – 金融產品及其購買過程       
    事件、營銷、財務  – 交易過程及其結果           
    渠道、地域        – 支援銀行業務的基本要素   
    例項:目前某某銀行系統包括當事人、內部機構、產品、協議、事件、渠道、財務七個主題以及主題之間的關係,
    模型的概貌如下圖所示:
     
(2)實體
    實體:我們把客觀存在並且可以相互區別的事物稱為實體。
        實體可以是實際事物,也可以是抽象事件,每個實體是由一組相似的物件組成,這些物件稱為例項。                                               
        實體描述業務元資料(如客戶、當事人實體)或元資料之間的關係(如當事人協議關係歷史實體)。                                                                                              
        根據實體的特徵,我們將其劃分為獨立型實體(Independent Entity)和依賴型實體(Dependent Entity)。
        獨立型實體不依賴於其他實體存在;而依賴型實體中的主鍵必須是獨立實體主鍵的一部分或者全部。
        
(3)屬性  
    屬性:描述實體的特性稱為屬性,如當事人實體中的當事人種類(個人當事人,機構當事人)。                                                                                                                       
    屬性可分為以下幾種型別                                              
        主鍵(Primary Key)                                                 
            識別實體例項唯一性的屬性或屬性組。                                
        外來鍵(Foreign Key)                                                 
            父實體的PK通過關係加入到子實體中作為PK,此稱之為外來鍵             
        非鍵屬性 ( Non Key)                                               
            不是實體主鍵屬性的其他屬性                                        
        基礎名 (Basename)                                               
            外來鍵的原來名稱                                                    
        角色名 ( Rolename )                                               
            外來鍵的新名稱,表明取值是父實體屬性的子集
(4)關係 
    關係是描述實體間關聯性的表示。                                                      
    關係數量(Cardinality)反映兩個或多個實體間關係的業務規則。
     
    標識關係(identifying relationship):      
        實體主鍵遷移給子實體作為部分主鍵(PK)      
        實體須由父實體決定,其存在亦需依附父實體。
        
    非標識強制關係 (Non-Identifying Mandatory Relationship):                                                                             
        實體主鍵遷移給子實體作為非鍵屬性(非PK) , 其表示並不能由父實體來決定子實體,
        子實體不須由父實體決定,但其存在仍需依附父實體 (mandatory)
        
    非標識非強制關係 (Non-Identifying Non-Mandatory Relationship):                                                                              
        實體 PK 遷移到子實體當作非主鍵且與子實體為 非標識行 ( Non-Identifying ),
        實體與父實體間的標識為獨立存在性,實體資訊本身不需完全依賴父實體。
    多對多關係(Many-to-many relationship):  
        兩實體間存在多對多的關係。
    遞迴關係 (Recursive relationship):
        同一個實體既是父也是子,任何遞迴關係必須是非標識的。
        
    子類關係(Subtype relationship):                                                                                                                                                           
        子類實體和所屬父實體的關係 。                                                                                                                                            
    子類( Subtype )和超類(Supertype):                                                                                                                                       
        為了進一步描述一個實體集中某些實體的不同性質,可以從該實體集中取出一部分實體構成一個(或多個)新的實體集,
        稱新的實體集是原來實體集的子類,而原實體集是新實體集的超類。
        
(7)正規化
    第一正規化           
        The key                    
    第二正規化           
        The whole key      
    第三正規化           
        Nothing but the key
    第一正規化
        定義:如果一個關係模式R 的每個屬性值都是不可以再分的資料單位,那麼關係模式R是第一正規化的。
        符合第一正規化的特點有 
        (1)有主關鍵字 
        (2)主鍵不能為空, 
        (3)主鍵不能重複
        (4)欄位不可以再分
        
    第二正規化                      
        定義:如果一個關係模式R 滿足第一正規化,且每一個非鍵值屬性完全依賴於主屬性(主關鍵字),則滿足第二正規化。
        
    第三正規化                                                                                                                                           
        定義:如果一個關係模式R 滿足第二正規化,且每一個非主屬性均非轉遞函式依賴於主屬性,則該關係滿足3NF。                                                                    
            實體中沒有非鍵屬性依賴另一個非鍵屬性,即非鍵屬性僅僅依賴於主鍵。                                                                         
        滿足第三正規化的關係必須滿足以下三個條件:                             
            每個屬性的值唯一,不具有多義性;                                     
            每個非主屬性必須完全依賴於整個主鍵,而非主鍵的一部分;               
            關係模式中不存在傳遞依賴。 
            
7.邏輯資料模型舉例  
    
第四部分:銀行業資料模型分主題介紹 
1.PARTY主題:
    當事人(PARTY)是指銀行作為一個金融機構所服務的任意物件和感興趣進行分析的各種個人或團體客戶、潛在客戶、代理機構、僱員、分行、部門等。
    一個PARTY可以同時是這當中許多種角色。
    該主題除了要存放各種基本資訊之外,還可以儲存當事人所擁有的固有資產類資訊;                                                                                                                                   
    當事人和其他多個主題之間(賬戶、內部機構等)存在密切的關聯;                                                                                                              
    建立銀行客戶的單一檢視;                                                                                                                                                  
    實現基於客戶基本資訊的分析;                                                                                                                                              
    為進行全面的客戶關係管理和市場營銷奠定基礎;
    PARTY主題—主要實體:
    
    PARTY主題—主要分類:
    
    PARTY主題—主要關係:
    
    PARTY主題—主要派生資料:
    

2.Internal Organization主題:
    內部組織機構是指金融機構的內部組織和業務單元,如分行、客服中心、支行、儲蓄所、部門、銷售團隊等等。                                                                                                                             
    是一種特殊的PARTY                                                                                
    包括所有的組織型別                                                                               
    體現內部機構之間複雜的關係                                                                       
    提供層次和矩陣結構                                                                               
    不僅包含自身的內部組織機構,還包括其他的內部組織                                                 
    和多個主題有關聯  
    Internal Organization-主要實體:
    
    Internal Org主題—主要關係:
    

3.PRODUCT主題:   
    產品是金融機構銷售或提供的可市場化的產品、產品包和服務。                                                                                                                                                                                                                     
    產品可以通過產品特徵加以描述,產品特徵是金融機構提供的所有可以應用於產品的有效產品特徵。
    它標識了金融機構在提供產品時的限制或附加條件。在銀行業的例子有手續費、期限、允許的展期和提前通知的要求等。
    產品與當事人、帳戶之間都存在各種關係。                                                                                                                                                            
    為滿足銀行內部管理的需要和適應不斷變化的業務需求,可以根據實際情況結合產品特性將產品分組,如個人存款產品組、公司貸款產品組等 ,這些即“產品組”。                                                 
    出於市場競爭的需要,或作為市場營銷的結果,將一些產品打包、捆綁銷售,稱其為“產品包”。
    PRODUCT主題—業務規則:
        一個產品有一個命名和描述;                                                                                                                                 
        一個產品可能是一個產品包的一部分;              
        一個產品被若干個產品特徵(feature)所描述;     
        一個產品特徵可以應用於若干個產品;              
        產品可以被劃分成產品組(group);               
        一個當事人可以針對一個產品或產品包充當若干角色;
        產品和產品的特徵可以隨著地區的不同而有所差異;
    PRODUCT主題– 關鍵實體:
    
    PRODUCT主題—分類:
    
4.AGREEMENT主題:
    AGREEMENT是金融機構與客戶之間針對某種特定產品或服務而籤立的契約關係。例如銀行的帳戶,保險公司的保單。                             
    包括AGREEMENT的申請、報價、還價以及開立等完整資訊。                                                                             
    建立AGREEMENT 、當事人、產品主題之間的關係,識別持有某種產品客戶的特徵,尋找具有相似特徵的潛在客戶銷售相同的產品,實現交叉銷售。
    AGREEMENT主題與事件主題和內部機構主題也有密切的聯絡
    AGREEMENT協議業務規則:
        當金融機構與客戶之間針對某種產品或服務的條款和條件達成協議時, 一個AGREEMENT就會被開立。                                                                                                             
        在一個時間點,一個AGREEMENT只能對應一種產品,該產品可能是一個產品包的一部分。                                           
        AGREEMENT可能是客戶接受金融機構關於某項產品報價的結果。                                                                 
        一個AGREEMENT除了持有人外,可能與其他的當事人有關係,如受益人、共同簽字人、擔保人等,這些也是當事人對AGREEMENT的角色。  
        AGREEMENT也可能與其他AGREEMENT相關聯,如一個帳戶由於籌措資金的需要而被另一個帳戶所取代,或一個帳戶對另一個帳戶提供擔保。
    AGREEMENT主題-主要實體:
        (1)協議唯一標識由兩部分組成:協議號+協議修飾符。其中“協議號”沿用源業務系統使用的編號(目前為帳號),
        “協議修飾符”目前預設填預設值,如果多個系統的協議號可能重複,則協議修飾符再根據不同的業務系統分配相應取值。
        (2)活期帳戶(18位)、定期(19位)、內部帳戶(28位)、定期一本通(14位)                                                                                                                                                    
        (3)該實體記錄了客戶在金融機構開立的帳戶的詳細資訊。一個帳戶由Account Num和Account Modifier Num唯一識別。
    
    AGREEMENT主題-主要關係:
    
    AGREEMENT主題-分類:
    

    AGREEMENT主題-與其他主題的關係:
    
5.EVENT主題:
    事件是銀行與客戶或潛在客戶之間的聯絡或交易活動,它記錄了詳細的行為和交易資料,
    包括存取款、收費、計息、諮詢投訴、查詢、市場調查、網上交易等。                                                                                                                                                             
    可能需要也可能不需要銀行與客戶的直接接觸;可能與帳戶相關,也可能與帳戶無關;
    可能與資金相關,也可能與資金無關。                              
    通過事件可以幫助瞭解哪些客戶使用哪些渠道做哪種交易事件,
    交易金額多少、什麼時間、在什麼地點、與金融機構的哪位員工或部門打交道。
    EVENT主題-關鍵實體:
        事件實體記錄了銀行的所有互動活動。                                                                                                                                                        
        事件作為總表,記錄來自各個系統的所有事件資訊,包括交易機構、交易日期、交易碼、交易金額、交易涉及的協議等主要資訊。                                                          
        這些事件可能與資金相關,也可能與資金無關。可能與帳戶相關,也可能與帳戶無關。                                                                                                
        事件屬性中保留業務系統的交易碼。                                                                                                                                            
        與事件相關的當事人記錄在“當事人事件關係”中,一個事件可能與多個當事人相關,
        包括引發事件的客戶、聯絡客戶的員工、處理事件的金融機構、購買事件的商戶、提供電話服務的呼叫中心。
        

    EVENT主題-關鍵分類:
        儲蓄事件記錄了來自儲蓄統版系統的事件資訊,包括儲蓄業務流水、非帳務流水、會計清算流水。                                                                                      
        中間業務事件和匯兌事件,記錄來自中間業務系統和匯兌系統的事件。
        
    EVENT主題-關鍵關係:
        事件關係歷史——記錄特殊事件如衝正事件、恢復事件、調整事件等與原交易事件的關係。                                                    
        事件重要介質——記錄交易過程中與重要介質間的關係,例如一筆來自匯兌系統的(包含帳戶)事件和匯票號間存在著關係。
        這些事件可能與資金相關,也可能與資金無關。可能與帳戶相關,也可能與帳戶無關。
        

6.CHANNEL主題:
    使用者通過渠道向金融機構獲取關金融機構或金融機構產品資訊以及使用金融產品。
    金融機構通過渠道向用戶銷售產品或提供服務。
    渠道與當事人、產品、帳號等其他實體存在各種關係。                                                                  
    渠道分為若干渠道型別。
    CHANNEL主題 – 業務規則:
        渠道分為若干型別,例如ATM渠道。                                                                                                                           
        當事人可以和渠道之間存在一種或多種關係,也可以不存在任何關係。
        一個帳戶可以屬於一個渠道或者通過一個渠道來進行管理。          
        渠道有自己的一些相關資訊,例如功能,特徵或地理位置。          
        一個渠道有其最大容量,例如每小時可以處理的業務筆數。
    CHANNEL主題 - 渠道實體:
        實體CHANNEL標識了所有金融機構用來與使用者進行銷售或服務聯絡時所使用的渠道。                                         
        一個渠道是使用者用來接受有關金融機構或金融機構產品資訊以及使用金融產品時的載體。                          
        在實體CHANNEL 中每一個特定的渠道都有一個ID號相對應。例如,一臺ATM機有一個ID號,一個POS終端也有一個ID號。
        實體CHANNEL也包含了外部渠道。例如其他機構的ATM機器  
    CHANNEL主題—分類:
    
7.FINANCE財務
    該主題直接與總帳相對應,是描述科目組織、控制、內部核算等核心科目帳務以及預算管理有關的內容。
    FINANCE財務主題-主要實體:
        會計科目描述會計科目的相關資訊,對應會計不同的科目型別,包括資產類科目、貸款科目、負債類科目等。                                                  
        會計科目餘額歷史描述每個機構每個科目在每天的財務實際值,包括髮生額、筆數和餘額。                
        儲蓄科目餘額詳細資訊描述每個機構每個科目在每天的財務實際明細值,包括現金、轉帳等分類明細。
        
8.CAMPAIGN主題  
    營銷活動是為了獲取、維護、增強銀行與客戶的關係而開展的一些促銷的活動;                                    
    營銷活動是一些有組織的活動,其目的可以是為了把某些產品推向市場,也有可能是為了樹立銀行在市場上的形象;
    完整的營銷活動應該包括營銷策略、營銷行為以及營銷活動的反饋資訊;                                      
    收集營銷活動的資訊可以幫助銀行發現最有效的營銷方式,瞭解不同型別客戶對營銷活動的反饋;
    CAMPAIGN主題—業務規則:
        營銷活動的策略可能是很多層次的;                                                                                                                                                                    
        一個營銷活動可能會導致實施一個或多個實際的促銷事件;                                                                                                                                
        一個營銷活動可以通過和其他主題的關係,實現一些特別的活動,如只針對某些地區(LOCATION);
        只涉及某些產品(PRODUCT)、只在某些機構進行(內部組織機構)或者只和某類賬戶(ACCOUNT)相關;
        一些外部的市場資訊(如市場細分等)可以服務一些特定的營銷活動;                                                                                                                      
        高層營銷策略會針對多種渠道設計,但是具體的一個營銷事件只涉及一種渠道;                                                                                                              
        營銷事件的結果可能會導致開立一個賬戶;                                                                                                                                              
        一個營銷活動可能有多種優惠措施和條件;
    CAMPAIGN主題-主要實體:
        營銷實體主要記錄營銷活動計劃收入、預計成本等。                                                                                                                                              
        自關聯,可存放所有層次的營銷策略,
        營銷活動與其他主題的關係。例如:營銷活動地址關係歷史,主要記錄開展營銷活動的地區 
        促銷活動主要記錄實際實施的一些結果的記錄;
        
9.客戶資產Asset 
    客戶資產(ASSET)主題是所有可能採集到的各種客戶的資產(負債)資訊,包括有形的和無形的各種客戶資產/負債,
    同時還可以儲存銀行向外租賃的各種資產資訊。          
    可能是客戶的不動產、商品存貨、珠寶、機動車輛、以及在其他金融機構的存款、貸款等。
    客戶資產Asset主題:
    
10.LOCATION主題
    LOCATION主題是指銀行希望關注或考察的任何層次的地理區域和地址。如國家、省份、城市、縣、鄉村等。                                                                  
    LOCATION主題包含“具體地址”、“地區”、“地理位置”等不同層次的資訊。                        
    該主題和事件、產品、渠道、內部組織機構、營銷活動等主題都有著密切的聯絡。
    LOCATION主題—業務規則:
        一個地址可能是實體地址、電子地址、電話、郵箱地址等;                                                     
        一個當事人可能有0~n個地址,這些地址又可以分成主地址、次選地址或者郵寄地址等;      
        賬戶的對帳單可能需要寄送到某個地址;                                                
        地區的定義可以根據銀行不同目的進行設計,比如某項產品的銷售區域或者某項評級的地區等;
        可以體現具體地址和地區之間的關聯;                                                  
        內部組織機構可以覆蓋多個地區;
    LOCATION主題—主要實體和分類:
    

第五部分:ODS和EDW
    一個相對完整的BI資料架構:
    
    各層設計重點:
        整合模型層:
            主題定義
            框架設計
            整合策略
            實施方法
        共性加工層:
            應用篩選
            應用提煉
        應用集市層:
            整體性
            一致性

    不同型別專案的資料層次建議:
     ODS:
        技術緩衝層:視加工過程是否需要而定,非必須,但一般會有同源設計,基本不做處理
        近源模型層:必須,是ODS核心模型層簡單處理
        整合模型層:視專案具體需求而定,非必須建設層次只針對必須整合且比較基礎的部分才考慮建設此層
        共性加工層:視專案具體需求而定,非必須建設層次
        應用集市層:視專案具體需求而定,分倉內倉外兩種建設策略
    EDW:
        技術緩衝層:視加工過程是否需要而定,非必須,但一般會有同源設計,基本不做處理
        近源模型層:視專案具體需求而定,非必須建設層次
        整合模型層:必須,是EDW核心模型層整合設計
        共性加工層:建議保留兼顧業務需求和資料處理效能雙方需求
        應用集市層:視具體情況而定,分倉內倉外兩種建設策略按單個應用分別建設

    1.共性加工層
        定位:                                                                                
            提供相對中性,具有業務意義的初級加工資料,支援上層應用的資料加工,或供業務人員的訪問                                                      
        特點:                                                                                
            全域性考慮,提煉需求共性                                                              
            多層次設計,多種資料粒度                                                            
            側重業務理解,蘊含豐富的業務規則
    2.應用集市層 
        定位:                                                                           
            提供特定應用支援            
        特點:                        
            面向應用                    
            形式各異,各自獨立          
            按需定製,滿足特定業務的需求