目錄
- 前言
- 原則
- 內容
- 小結
前言
上一篇講述了數據倉庫模型設計中的業務建模和領域概念建模,接下來就自然而然的來到了邏輯數據建模LDM(Logical Data Model)的階段,這個階段可以說是建模最重要的一環(也就是維度建模)。邏輯建模涉及到了整個數據倉庫所有層次的模型設計,從DW到DM甚至到了OLAP。當然重點的設計還是在DW和DM層當中。
有些地方邏輯建模的范疇更加寬泛,包含了前面的業務主題和領域概念模型的設計(看下圖)。 本篇只是涉及了狹隘的部分(紅色框住的部分)。
內容
了解了邏輯模型設計的范疇以及重要地位,那么具體需要做些什么呢?
- 分析主題域
確定要裝載到鑄具倉庫的主題名稱,以及各自主題的碼鍵和屬性組;主題內的實體,及其容量和更新頻率;實體的列的屬性等
- 粒度模型的設計
通過粗略估算數據量來確定粒度層次的划分,是單一粒度還是多重粒度(比如1年內的數據是天粒度的,歷史記錄是月粒度的)
- 數據分割設計
針對某一實體的數據應該是按怎樣的方式來分割,一般是按照時間來分割,比如每天的數據放在一個分區里面。
- 元數據模型的建立
在各種轉換和匯總的過程中建立好元數據模型能更好的維護和理解數據。
原則
邏輯數據模型設計是數據倉庫項目的核心基礎。為什么這樣講呢,因為邏輯數據模型設計是有原則的,通過滿足了這些原則,能夠保證整個數據倉庫的穩定性,同時讓數據需求方使用起來很容易理解數據,處理數據的效率也很高。
- 粒度性
數據倉庫不同的層次具有的粒度是不同的,DW層是數據是原子粒度的數據,比如交易數據原子粒度是訂單,記錄也包括購買的用戶以及商家,DM層的數據是面向主題按一定的維度進行匯總的數據,比如商戶集市計算當天出售的訂單量。
- 共享性
在數據倉庫中,通過抽象和集成,把一些(維度)信息匯總起來,並做全局的一致化,使其在整個數據倉庫中處於共享狀態,任何用戶都可以來使用。比如一致性維度。
-
歷史性
針對業務分析的需求,需要從歷史信息中獲取有用的信息,比如評估客戶生命周期價值。
-
一致性
邏輯數據模型必須在設計過程中保持一個統一的業務定義。比如,渠道的定義、團體的分類等,應該在整個企業內部保持一致。將來各種分析應用都使用同樣的數據,這些數據應按照預先約定的規則進行刷新,保證同步和一致。
-
擴展性
當有新的需要和改變的時候,邏輯數據模型結構要能夠做到可擴展,並能使得對用戶透明。
當然還有一些其他的原則,這些原則的最終目標是更好的滿足用戶的使用。
小結
邏輯模型設計是實踐維度建模的重要組成部分,后續會從維度建模的三個核心來深入探討和總結。
維度建模的三個核心: 總線架構,一致性維度,一致性事實。