重庆幸运农场中奖金额|重庆幸运农场官网
MyException - 我的異常網
當前位置:我的異常網» 數據倉庫 » 構建企業級數據倉庫的5步法

構建企業級數據倉庫的5步法

www.h0f1.com  網友分享于:2018-06-06  瀏覽:0次
構建企業級數據倉庫的五步法

一.?確定主題

?????? 即確定數據分析或前端展現的主題(例如:某年某月某地區的啤酒銷售情況). 主題要體現出某一方面的各分析角度(維度)和統計數值型數據(量度)之間的關系, 確定主題時要綜合考慮.

?

二.?確定量度

? ? ? ? 確定主題后, 需要考慮分析的技術指標(例如: 年銷售額等). 它們一般為數值型數據, 其中有些度量值不可以匯總; 有些可以匯總起來, 以便為分析者提供有用的信息. 量度是要統計的指標, 必須事先選擇恰當, 基于不同的量度可以進行復雜關鍵性指標(KPI)的設計和計算.

?

三.?確定事實數據粒度

? ? ? ? 確定量度之后, 需要考慮該量度的匯總情況和不同維度下量度的聚合情況; 例如在業務系統中數據最小記錄到秒, 而在將來分析需求中, 時間只要精確到天就可以了. 在ETL處理過程中, 按天來匯總數據, 這時數據倉庫中量度的粒度就是”天”. 如果不能確認將來的分析需求中是否要精確到秒, 那么, 我們要遵循”最小粒度原則”, 在數據倉庫中的事實表中保留每一秒的數據, 從而在后續建立多維分析模型(Cube)的時候, 會對數據提前進行匯總, 保障產生分析結果的效率.

?

四.?確定維度

??????? 維度是分析的各個角度, 例如:我們希望按照時間, 或者地區, 或者按照產品進行分析. 那么這里的時間, 地區, 產品就是相應的維度. 基于不同的維度, 可以看到各個量度匯總的情況, 也可以基于所有的維度進行交叉分析.

??????? 維度的層次(Hierarchy)和級別(Level). 例如: 在時間維度上, 按照”年-季度-月”形成一個層次, 其中的”年”, “季度”, “月”成為了這個層次的3個級別. 我們可以將”產品大類-產品子類-產品” 換分為一個層次, 其中包含”產品大類”, “產品子類”,”產品”三個級別.

??????? 我們可以將3個級別設置成一張數據表中的3個字段, 比如時間維度; 我們也可以使用三張表, 分別保存產品大類, 產品子類, 產品三部分數據, 比如產品維度.

??????? 建立維度表時要充分使用代理鍵, 代理鍵是數值型的IP號碼(每張表的第一個字段), 它唯一標識了第一維成員. 在聚合時, 數值型字段的匹配和比較, join效率高. 同時代理鍵在緩慢變化維中, 起到了對新數據與歷史數據的表示作用.

?

五.?創建事實表

??????? 在確定好事實數據和維度后, 將考慮加載事實表. 業務系統的一筆筆生產, 交易記錄就是要建立的事實表的原始數據.

??????? 我們的做法是將原始表與維度表進行關聯, 生成事實表. 關聯時有為空的數據時,需要使用外連接, 連接后將各維度的代理鍵取出放于事實表中, 事實表除了各維度代理鍵外, 還有各度量數據, 不應該存在描述性信息.

??????? 事實表中的記錄條數據都比較多, 要為其設置復合主鍵和索引, 以實現數據的完整性和基于數據倉庫的查詢性能優化.

?

六.?元數據

????????描述數據及其環境的數據. 兩方面用途:

????????首先, 元數據能夠提供基于用戶的信息, 如記錄數據項的業務描述信息的元數據能幫助用戶使用數據.

????????其次, 元數據能支持系統對數據的管理和維護, 如關于數據項存儲方法的元數據能支持系統以最有效的方式訪問數據.

????????

????????元數據機制主要支持一下五類系統管理功能:

? ? ? ? ? ? ? 1.?? 描述哪些數據在數據倉庫中;

? ? ? ? ? ? ??2.?? 定義要進入數據倉庫中的數據和從數據倉庫中產生的數據;

? ? ? ? ? ? ??3.?? 記錄根據業務時間發生而隨之進行的數據抽取工作時間安排;

? ? ? ? ? ? ??4.?? 記錄并檢測系統數據一致性的要求和執行情況;

? ? ? ? ? ? ??5.?? 衡量數據質量.

文章評論

軟件開發程序錯誤異常ExceptionCopyright © 2009-2015 MyException 版權所有
重庆幸运农场中奖金额