1.模型分類
ER(Entities Relationship)模型
第一范式(1nf):屬性為原子類型甫窟,不可再分
第二范式(2nf):表中不存在“部分函數(shù)依賴”
第三范式(3nf):不能存在傳遞函數(shù)依賴,(使用外鍵)
維度模型
事實蛙婴、維度
事實 -> 行為數(shù)據(jù)
維度 -> 環(huán)境數(shù)據(jù)
2. 維度模型理論之事實表
事實表
核心蕴坪,圍繞業(yè)務(wù)過程進(jìn)行設(shè)計
事務(wù)型事實表
最細(xì)粒度的操作時間
設(shè)計流程
確認(rèn)業(yè)務(wù)過程(做什么) -> 聲明粒度(每行多細(xì)) -> 確定維度(列) -> 確定事實(計量單位)
周期型快照事實表
需要累積的數(shù)據(jù)(余額、速度)
設(shè)計流程
確定粒度(列) -> 確認(rèn)事實(度量值)
事實類型
可加事實(訂單金額)、半可加事實(庫存)、不可加事實(比例)
累積型快照事實表
多個業(yè)務(wù)過程,需要多次寫入谎痢,解決多事務(wù)關(guān)聯(lián)
設(shè)計流程
選擇業(yè)務(wù)過程(多個業(yè)務(wù))-> 聲明粒度(行)-> 確認(rèn)維度(列) -> 確認(rèn)事實(度量值)
3.維度模型理論之維度表
圍繞業(yè)務(wù)過程所處的環(huán)境進(jìn)行設(shè)計年叮。
設(shè)計步驟
確定維度(事實表就確定了,注意維度退化) -> 確定主維表和其他維表(最細(xì)粒度為主維表) -> 確定緯度屬性(豐富、不要編碼、預(yù)計算)
設(shè)計要點
1).維度表通常是反規(guī)范化的
2).維度變化
如何存儲維度的變化
全量快照表(用的最多)、拉鏈表(變化緩慢赞赖,但是數(shù)量大的數(shù)據(jù)使用)
3).多值維度
一個事實表的行對應(yīng)多個維度表的行,
兩種解決途徑:1冤灾、降低粒度 2前域、事實表采用多字段存多個維度
4).多值屬性
某個屬性同時又多個值,比如手機(jī)的平臺屬性值(屏幕尺寸韵吨、品牌匿垄、cpu)
解決方法:
鍵值對放到一個字段 or 多個字段(必須要屬性個數(shù)固定)