數據倉庫專題(3)-分布式數據倉庫事實表設計思考


一、前言

  最近在設計數據倉庫的數據邏輯模型,考慮到海量數據存儲在分布式數據倉庫中的技術架構模式,需要針對傳統的面相關系型數據倉庫的數據存儲模型進行技術改造。設計出一套真正適合分布式數據倉庫的數據存儲模型。

二、事實表設計基礎

      事實表記錄發生在現實世界中的操作型事件,其所產生的可度數值。事實表的設計完全依賴於物理活動,不受可能產生的最終報表的影響。事實表中,除數字度量外,事實表總是包含外鍵,用於關聯與之相關的維度,也可以包含退化的維度鍵日期/時間戳

三、傳統模式

  以FS-LDM數據存儲模型Event主題域數據存儲模型設計為例,其事件主題域數據邏輯模型結構如下圖所示:

   傳統模式的主要問題如下:如果數據量很小的情況下,執行多表關聯,沒有問題,但是當在分布式數據倉庫,單表存儲海量數據的情況下,很明顯模式將面臨挑戰。

三、分布式模式-維度建模新原則

  (1)以值代鍵:針對鍵值唯一的維表,除非必要,否則不引入維表,如IP地址維表,采用IP作為維表的主鍵,事實表中存儲IP值;

      (2)合理分表:傳統關系型數據倉庫存在多表整合的沖動,如上圖Event事實表,各種Acount Ind,Finance Ind等,用來擴展表的通用性,試圖把所有的數據都存儲到一張表 中。分布式數據倉庫的設計,恰恰相反,因為單表數據規模的問題,如果要滿足分析和處理的性能,合理的按照業務進行數據的分表存儲。如財務相關事件、賬戶相關事件,單獨成表。更有利於數據的計算和分析。 

四、分布式維度模型實例

序號 字段英文 字段中文 字段解釋 字段映射 字段加工邏輯 指標字段
1 event_id 事件ID 記錄標識     標識
2 tm 時間 時間戳     維度
3 domain       維度-值
4 ip IP地址 IP地址     維度-值
5 os 操作系統 操作系統     維度-值
6 user_id 用戶ID 用戶ID     維度-FK
7 date 日期 日期(新增)     維度-值
8 from 來源 訪問來源系統     維度-值

 五、未完待續

       分布式數據倉庫數據存儲模型設計進行中,后續會持續更新,請關注QQ群:分布式數據倉庫建模 398419457。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM