主資料區域中保留了資料倉儲的所有基礎資料及歷史資料,是資料倉儲中最重要的資料區域之一,那主資料區域中主要分為近源模型區和整合(主題)模型區。上一節講到了模型的設計流程如下圖所示。那近源模型層的設計在第2.3和3這兩個步驟中相對簡化,模型表設計的結構同源系統的表結構,欄位也一一對映即可。那下面以整合(主題)模型的設計步驟來進行介紹:
整合(主題)模型層主要按主題進行資料整合,以第3正規化為主進行表設計,有以下優點:
(1)主題模型從全行角度對客戶、產品、交易、賬戶等進行分類梳理,獲得全行業務資料檢視;
(2)資料模型比較穩定,只要業務實體關係沒有大的變化,不會因為源系統替換或公升級導致整合模型出現大的變動。對於資料使用系統和集市來說比較穩定。
(3)模型靈活易擴充套件,在增加功能的時可擴充套件模型,不需要重構資料模型,不影響已有資料實體。
當然主題模型梳理設計比較耗費人力,同時規則需要全行認可,需要由乙個管理全行資料的業務部門來統籌,可以和資料治理專案一起進行,將資料治理的資料標準等成果在資料倉儲主題模型進行落地。
1、主題模型設計步驟
1.1系統調研及篩選
(1)前期調研與資料收集:調研全行或全公司的系統,從架構、業務資料及流程方面概略了解系統,需要和架構師、各系統負責人進行前期調研溝通,獲取系統說明書、表結構、主要流程說明等資料。
(2)系統級篩選:確定需要入資料倉儲的系統範圍,篩選條件主要考慮系統是否自己產生業務資料或者是業務流程中的乙個部分,另外也考慮以下幾方面:
1)系統是否很快會被其他系統替代,是的話需要考慮對接新系統;
2)系統資料結構現階段是否穩定,業務是否有大改造,是的話可以考慮改造完接入;
3)系統與其他系統的關係,是否關聯系統也需要入倉;
4)分布式系統是否資料結構統一,業務全流程包括哪些系統;
5)純外購系統是否能夠得到提供商的支援,因為需要**商配合調研和分析;
(3)系統講解及整理:
確定入倉的系統後需要與系統負責人進行深入的調研和資料分析,主要步驟包括:
1)系統整體調研:包括系統整理介紹、系統在行內的架構定位、主要功能、和其它系統的上下文關係、以及重要的業務流程和業務規則,同時也要了解系統夜間的切日和日終處理情況,便於後續系統資料採集,那最後產出物為詳細的《xx系統調研報告》,同時也需要獲取源系統的資料庫設計文件及資料字典,建立和源系統調研問題跟進機制。
1.2確定入倉表及字段
(1)系統資料表篩選對映、**整理:
根據系統資料字典中的表清單進行各個表的功能、資料進行梳理,並確定是否入主資料區(入倉),同時對於確定入倉的表進行主題模型對映和**欄位的整理。那對於表是否入倉主要了解表中資料的業務含義,同時盡量保留粒度比較細的資料。那對於以下情況的表可以不進行入倉:
1)系統控制類和業務流程控制類表:如系統中的序號生成器、系統開門時間、批處理控制表、資料報接收和拆分的記錄;
2)為未來業務拓展預留的表:部分業務系統設計了一些目前尚未開展的業務資料表;未來的業務規則和處理流程存在不確定性,因此暫不入倉。可以在未來進行擴充套件和補充;
3)中間表和臨時表:在源業務系統中記錄業務操作中間狀態的表;
4)統計和報表類資料:部分系統中有大量的統計或報表類資料,可以使用入倉的明細資料在明確的邏輯和規則下自行進行加工;
5)資料備份表:一般情況下,資料備份表不入倉;
(2)字段級篩選對映
該步驟主要分析,逐一調研分析資料庫表中每個欄位的業務含義,向業務及源系統人員了解並使用樣本資料確認資料質量和資料資訊,並確定是否入整合模型。一般近源模型層除了敏感字段、二進位製欄位外會全部入倉,整合模型除了這兩類還會進行篩選,一般以下型別欄位也不進入整合模型:
1)無分析意義的字段:載入時間戳,密碼
3)中間計算結果字段:積數,本月累計積數,本期累計貸方發生額
4)未啟用字段:預留字元,預留數值、全空值字段
5)長文字資訊,需要明確業務上不使用的捨棄:備註,經辦人,批准人
6)冗餘字段:活期賬戶中的客戶名稱,行業型別,經濟性質
那對確定入倉的字段需要進行資料範圍以及關聯字段(主外來鍵)分析,看是否符合調研資訊,對異常資料需要進行跟進分析,確定原因。這部分工作需要源系統人員在生產環境配合跑驗證sql。最終產出物為《xx系統字段分析》、《xx系統字段資料質量調研》。
1.3邏輯模型設計
邏輯資料模型(logical data model)是一種圖形的展現方式,採用面向主題的方法有效組織**多樣的各種業務資料,全面反映銀行複雜的業務規則,它使用統一的邏輯語言描述銀行業務,通過實體和關係勾勒出企業的資料藍圖。有實體、屬性、關係概念,每個主題都是由多個表來實現的,表之間依靠主題的公共碼鍵聯絡在一起,形成乙個完整的主題。邏輯模型設計工具有商用的ewin、powerdesign等,目前開源的也有些,但功能和體驗稍差些。
那邏輯模型設計可以由2種路徑,一是銀行根據以往的業務經驗提煉本行業務的關鍵主題,設計出本行的概念模型;二是依託成熟產品進行客戶化,即根據一些資料模型實施公司的產品針對本行實際資料情況進行適應。許多行使用第二種方式,速度較快,專案風險小。那基於已有成熟產品的方案在專案初期就需要選擇好模型產品,一般可以調研其它行的模型落地情況,在我國銀行落地實施較多的產品一般成熟度較高,適用性也經得起實戰。那邏輯模型的客戶化主要有以下步驟:
(1)業務定義整合:主要包括客戶識別、產品定義、內部機構等。客戶識別整合即整合各系統客戶資訊,定義唯一客戶號,識別同一客戶。產品定義即在全行角度設定一套產品樹並賦予唯一編號,內部機構也是確定一套內部機構,同時各系統的產品、內部機構都能對映到全行定義的產品和內部機構中。
(2)確定各主題准入、分類、資料整合、歷史處理的主題設計原則,比如客戶分類包括對公、對私、同業等,歷史資料採用拉鍊方式;
(3)基於字段級對映的產出,根據主題設計原則再次檢視各主題梳理入倉欄位的所屬主題以及模型中的實體關係是否和源系統實體關係一致,然後將字段對映或新增到現有的主題基礎模型中。
(4)**整合:需要根據入倉的**字段整合一套數倉的標準**,並確定各系統**字段對映到數倉標準**的規則。一般這個工作也是資料治理資料標準的部分內容,最好先確定全行資料標準,以它作為數倉的**標準基礎並進行補充。
(5)模型評估和驗證:通過review會議由各主題設計人員進行主題設計的講解,由模型組人員進行模型架構、業務規則、實體關係等方面進行評審,修正。模型的驗證是乙個持續的過程,特別是在提供資料給應用系統以及資料集市後,還會發現設計的問題,因此需要定期總結和優化。
下一章中也將重點介紹主題模型各主題的資料和設計中的關注點。
1.4物理模型設計
邏輯模型適用於多個資料庫實現,也就是可以有多個物理模型。物理模型設計主要將邏輯模型轉化成可具體實施的資料表及關係並優化應用設計,優化儲存以及提高資料訪問效率,主要考慮點有:
(1)考慮刪除沒有資料**的實體和屬性,增加公共欄位如資料新增和修改日期。
(2)考慮刪除只有主鍵的實體,對於表較少的表或主題考慮合併到其它表或主題中,如渠道主題表和字段較少,可以考慮合併。
(3)選擇和調整主索引和分割槽字段,使資料均勻分布,提高效能。
(5)根據應用需求和關鍵字段適當增加關鍵的冗餘字段(反正規化),提高資料訪問效率,比如在客戶主表、協議主表增加常用查詢欄位的冗餘可以減少關聯,提高效率。
(6)考慮大表的分拆和多表的合併,提高效率。
(7)確定欄位的英文命名和資料型別,按命名規範對模型字段、索引、表等進行命名。特別對於字段長度和精度,物理模型中的字段設計比源系統要長,需要考慮後續的擴充套件,因為源系統經常會增加字段長度或精度,在物理模型中需要提前考慮,以免後續影響資料使用系統。
(8)分割槽、壓縮和其它類索引:需要對常用的查詢欄位或條件建立索引,提高查詢效率。
基於邏輯模型生成的物理表,並考慮上述優化點,可以得到最終的資料倉儲主題模型的物理模型並進行後續維護優化。
銀行資料倉儲體系實踐(7) 資料模型設計及流程
資料倉儲作為全行或全公司的資料中心和匯流排,匯集了全行各系統以及外部資料,通過良好的系統架構可以保證系統穩定性和處理高效性,那如何保障系統資料的完備性 規範性和統一性呢?這裡就需要有良好的資料分割槽和資料模型,那資料分割槽在第三部分資料架構中已經介紹,本節將介紹如何進行資料模型的設計。1 各資料分割...
如何構建銀行資料倉儲
ntext搜尋 按 tb 表中的 keyword 在 ta 中查詢 content 列出每個 keyword 在 content 中的具體位置 鄒建 2004.07 引用請保留此資訊 測試資料 create table ta id int identity 1,1 content ntext ins...
《資料倉儲實踐》
首先,這是一本關於大資料場景下如何實踐資料倉儲的書,以實踐為主並輔以部分的理論知識。書中內容主要側重於這幾個方面 資料建模 資料組織和資料管理。在本書中,我沒有過多地涉及到大資料的技術細節以及資料探勘的一些演算法,原因在於我希望這本書顯得更純粹針對性更強一些。其次,這是一本小書,說它小是因為它的涵蓋...