数据仓库工具箱:维度建模权威指南3
數據倉庫工具箱:維度建模權威指南3
- 零售業務
- 維度模型設計的4步
- 選擇業務過程
- 聲明粒度
- 確定維度(列名帶有key后綴)
- 確定事實
- 零售業務案例研究
- 可加事實
- 不可加事實
- 維度表設計細節
- 日期維度(還有當天時間維度:time-of-day)
- 產品維度
- 商店維度
- 促銷維度
- 退化維度
- 無事實的事實表
- 維度與事實表建
- 維度表代理鍵
- 自然和持久的超自然鍵
- 退化維度代理建
- 日期維度中智能鍵
- 事實表代理鍵
- 抵制規范化沖動
- 雪花模型
- 支架表
- 錯誤案例:蜈蚣表
- 庫存
- 價值鏈
- 庫存模型
- 庫存周期快照
- 半可加事實
- 增強型庫存事實
- 庫存事務
- 庫存累計快照
- 事實表類型
- 價值鏈集成
- 數據倉庫總線架構
- 理解總線架構
- 總線矩陣(重點)
- 利益相關方矩陣
- 常見總線矩陣錯誤
- 一致性維度
- 多事實表鉆取
- 相同的一致性維度
- 包含屬性子集的縮減上卷一致性維度
- 包含行子集的縮減上卷一致性維度
- 總線矩陣縮減一致性維度
- 有限一致性
- 一致性事實
- 采購
零售業務
維度模型設計的4步
綜合考慮用戶需求、數據來源,設計維度模型。只考慮數據源,以數據驅動,基本不能取得成功。
選擇業務過程
聲明粒度
- 客戶銷售事務上的每個產品掃描到一行中
- 醫生開具的票據的列表內容項采用一行表示
- 機場登機口處理的每個登機牌采用一行表示
- 倉庫中每種材料庫存水平的每日快照采用一行表示
- 每個銀行賬戶每月的情況采用一行表示
應以業務數語表示,用主鍵聲明是不可取的
確定維度(列名帶有key后綴)
“誰、什么、何處、何時、為何、如何”
常見維度有:日期、產品、客戶、雇員、設備
確定事實
如:訂貨數量、成本總額
POS 系統收集的事實包括銷售數量、單價、折扣、凈支付價格、擴展折扣
零售業務案例研究
可加事實
收入
不可加事實
利潤率
計算公式:匯總的比率,而不是比率的匯總
維度表設計細節
日期維度(還有當天時間維度:time-of-day)
可以提前建立,制作10或20年的,20年為7300行。
當前與相對日期屬性 一節沒看懂
產品維度
價格可以定為維度也可以定為度量
商店維度
- 多層次維度
- 維度表中的日期
促銷維度
臨時降價、禮券、廣告、展示 可以分別制作維度表與統一制作一張促銷維度表
-
空外鍵
不應在事實表中使用空值鍵,正確的設計應該在對應的維度表中包括一行以表明該維度不可用于度量。
-
空屬性
應用“未知”與“不適用”代替空屬性,因為空值基本不會顯示在頁面上,會造成數據不一致,并且有些BI工具禁止使用空值屬性
-
空事實
沒看懂
退化維度
定義:處于事實表中,沒有鏈接到維度表
例如:POS機事務號(可以用來把同一個購物小票購物車中的商品關聯起來,并于原系統關聯),訂單號碼,發票號碼、
無事實的事實表
統計處于處于促銷狀態但尚未銷售的產品,事實表中只包含出售的商品
維度與事實表建
維度表代理鍵
維度表應該是代理鍵而不是操作系統標識符:無意義鍵、整數鍵、非自然鍵
強烈建議使用非自然鍵
自然和持久的超自然鍵
沒看懂
退化維度代理建
通常不會給退化維度分配代理鍵,如果多個商店的POS單號不唯一時,需要分配代理鍵。
日期維度中智能鍵
YYYYMMDD 整數,并未打算提供給業務用戶和bi應用,為了防止繞過維度表采用函數計算
事實表代理鍵
并未要求一定在事實表中使用代理鍵。
優點
- 直接的唯一標識:直接的獲得事務表的一行
- 返回或恢復海量加載:根據id斷點續傳。
- 插入加刪除替換更新
- 使用事實表代理鍵作為父\子模塊中的父節點
抵制規范化沖動
雪花模型
規范化的維度表稱為雪花模型:不利于多屬性瀏覽、與位圖索引
建議抵制采用雪花模型的沖動原因:易用性和性能
支架表
盡量避免使用支架表
錯誤案例:蜈蚣表
同一個事實表中中不能超過20個維度外鍵,多余則考慮維度合并,2個維度組合比笛卡爾積小則可以考慮合并。
庫存
價值鏈
多數企業存在關鍵業務過程價值鏈。
OLTP 通常為價值鏈每個步驟建立事務或快照。
OLAP主要目標是監控關鍵步驟的性能指標。
價值鏈為企業DW/BI環境提供高層知識。
庫存模型
提升獲利,減少脫銷情況,減少總的庫存管理費用。
庫存周期快照
每天600萬(60000種產品*100個商店),可以保存近60天日快照,其余周快照。
半可加事實
度量對某些維度是可加的,但不是所有維度。稱其為半可加事實。
庫存可以按照產品或商店匯總,不可按日期匯總。
增強型庫存事實
需要現存數量事實協同以度量庫存運動變化情況(流轉數量與日供貨數量)
日周轉次數:賣出/現存
年月周周轉次數:賣出/平均庫存
庫存事務
庫存累計快照
事實表類型
- 事務
- 周期快照
- 累計快照:不常見,通常表示效率與工作流經過時間
價值鏈集成
數據倉庫總線架構
為了數據倉庫的成功,需要一種架構化,增量式的方法。
理解總線架構
總線架構可以指導不同組、不同時間、實現不同的維度模型、使不同模型有效共存。
總線矩陣(重點)
最重要的交付產物
解決主數據管理和數據集成的需求/
用途:結構規劃、數據庫設計、數據治理、協調、項目評估以及組織交互
利益相關方矩陣
常見總線矩陣錯誤
定義的過寬或過窄
- 基于部門的或包含太多內容的行。
- 報表為中心或定義過于狹窄的行。
一致性維度
多事實表鉆取
跨鉆:
- 多個SQL 分別查詢每個維度模型
- 基于公共維度屬性全外連接
相同的一致性維度
包含屬性子集的縮減上卷一致性維度
包含行子集的縮減上卷一致性維度
沒看懂
總線矩陣縮減一致性維度
沒看懂
有限一致性
如果一個集團公司業務范圍由眾多分公司組成,則沒必要開展集成工作
一致性事實
采購
總結
以上是生活随笔為你收集整理的数据仓库工具箱:维度建模权威指南3的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hive中实现有序,有序concat拼接
- 下一篇: vs2013 未将对象引用设置到对象的实