数据仓库的基本特征
什么是數倉
基本概念
英文名稱為Data Warehouse,可簡寫為DW或DWH。數據倉庫的目的是構建面向分析的集成化數據環境,為企業提供決策支持(Decision Support)。它出于分析性報告和決策支持目的而創建。
數據倉庫本身并不“生產”任何數據,同時自身也不需要“消費”任何的數據,數據來源于外部,并且開放給外部應用,這也是為什么叫“倉庫”,而不叫“工廠”的原因
主要特征
數據倉庫是面向主題的(Subject-Oriented )、集成的(Integrated)、非易失的(Non-Volatile)和時變的(Time-Variant )數據集合,用以支持管理決策。
面向主題
傳統數據庫中,最大的特點是面向應用進行數據的組織,各個業務系統可能是相互分離的。而數據倉庫則是面向主題的。主題是一個抽象的概念,是較高層次上企業信息系統中的數據綜合、歸類并進行分析利用的抽象。在邏輯意義上,它是對應企業中某一宏觀分析領域所涉及的分析對象。操作型處理(傳統數據)對數據的劃分并不適用于決策分析。而基于主題組織的數據則不同,它們被劃分為各自獨立的領域,每個領域有各自的邏輯內涵但互不交叉,在抽象層次上對數據進行完整、一致和準確的描述。一些主題相關的數據通常分布在多個操作型系統中。
集成性
通過對分散、獨立、異構的數據庫數據進行抽取、清理、轉換和匯總便得到了數據倉庫的數據,這樣保證了數據倉庫內的數據關于整個企業的一致性。
數據倉庫中的綜合數據不能從原有的數據庫系統直接得到。因此在數據進入數據倉庫之前,必然要經過統一與綜合,這一步是數據倉庫建設中最關鍵、最復雜的一步,所要完成的工作有:
1. 要統一源數據中所有矛盾之處,如字段的同名異義、異名同義、單位不統一、字長不一致,等等。
2. 進行數據綜合和計算。數據倉庫中的數據綜合工作可以在從原有數據庫抽取數據時生成,但許多是在數據倉庫內部生成的,即進入數據倉庫以后進行綜合生成的。
下圖說明一個保險公司綜合數據的簡單處理過程,其中數據倉庫中與“保險” 主題有關的數據來自于多個不同的操作型系統。這些系統內部數據的命名可能不同,數據格式也可能不同。把不同來源的數據存儲到數據倉庫之前,需要去除這些不一致。
非易失性(不可更新性)
操作型數據庫主要服務于日常的業務操作,使得數據庫需要不斷地對數據實時更新,以便迅速獲得當前最新數據,不至于影響正常的業務運作。在數據倉庫中只要保存過去的業務數據,不需要每一筆業務都實時更新數據倉庫,而是根據商業需要每隔一段時間把一批較新的數據導入數據倉庫。
數據倉庫的數據反映的是一段相當長的時間內歷史數據的內容,是不同時點的數據庫快照的集合,以及基于這些快照進行統計、綜合和重組的導出數據。
數據非易失性主要是針對應用而言。數據倉庫的用戶對數據的操作大多是數據查詢或比較復雜的挖掘,一旦數據進入數據倉庫以后,一般情況下被較長時間保留。數據倉庫中一般有大量的查詢操作,但修改和刪除操作很少。因此,數據經加工和集成進入數據倉庫后是極少更新的,通常只需要定期的加載和更新。
時變性
數據倉庫包含各種粒度的歷史數據。數據倉庫中的數據可能與某個特定日期、星期、月份、季度或者年份有關。數據倉庫的目的是通過分析企業過去一段時間業務的經營狀況,挖掘其中隱藏的模式。雖然數據倉庫的用戶不能修改數據,但并不是說數據倉庫的數據是永遠不變的。分析的結果只能反映過去的情況,當業務變化后,挖掘出的模式會失去時效性。因此數據倉庫的數據需要更新,以適應決策的需要。從這個角度講,數據倉庫建設是一個項目,更是一個過程 。數據倉庫的數據隨時間的變化表現在以下幾個方面。
1. 數據倉庫的數據時限一般要遠遠長于操作型數據的數據時限。
2. 操作型系統存儲的是當前數據,而數據倉庫中的數據是歷史數據。
3. 數據倉庫中的數據是按照時間順序追加的,它們都帶有時間屬性。
總結
- 上一篇: MapReduce-Reduce端joi
- 下一篇: 数据仓库分层和元数据管理