數據倉庫是什麼

  • 2019 年 12 月 23 日
  • 筆記

什麼是數據倉庫?

數據倉庫,英文名稱為Data Warehouse,可簡寫為DW或DWH。數據倉庫,是為企業所有級別的決策制定過程,提供所有類型數據支援的戰略集合。它出於分析性報告和決策支援目的而創建。 為需要業務智慧的企業,提供指導業務流程改進、監視時間、成本、品質以及控制。

數據倉庫的特點

1. 數據倉庫的數據是面向主題的

與傳統資料庫面嚮應用進行數據組織的特點相對應,數據倉庫中的數據是面向主題進行組織的。什麼是主題呢?首先,主題是一個抽象的概念,是較高層次上企業資訊系統中的數據綜合、歸類並進行分析利用的抽象。在邏輯意義上,它是對應企業中某一宏觀分析領域所涉及的分析對象。面向主題的數據組織方式,就是在較高層次上對分析對象的數據的一個完整、一致的描述,能完整、統一地刻劃各個分析對象所涉及的企業的各項數據,以及數據之間的聯繫。所謂較高層次是相對面嚮應用的數據組織方式而言的,是指按照主題進行數據組織的方式具有更高的數據抽象級別。

2. 數據倉庫的數據是集成的

數據倉庫的數據是從原有的分散的資料庫數據抽取來的。操作型數據與DSS分析型數據之間差別甚大。第一,數據倉庫的每一個主題所對應的源數據在原有的各分散資料庫中有許多重複和不一致的地方,且來源於不同的聯機系統的數據都和不同的應用邏輯捆綁在一起;第二,數據倉庫中的綜合數據不能從原有的資料庫系統直接得到。因此在數據進入數據倉庫之前,必然要經過統一與綜合,這一步是數據倉庫建設中最關鍵、最複雜的一步,所要完成的工作有:

(1)要統一源數據中所有矛盾之處,如欄位的同名異義、異名同義、單位不統一、字長不一致,等等。

(2)進行數據綜合和計算。數據倉庫中的數據綜合工作可以在從原有資料庫抽取 數據時生成,但許多是在數據倉庫內部生成的,即進入數據倉庫以後進行綜合生成的。

3. 數據倉庫的數據是不可更新的

數據倉庫的數據主要供企業決策分析之用,所涉及的數據操作主要是數據查詢,一般情況下並不進行修改操作。數據倉庫的數據反映的是一段相當長的時間內歷史數據的內容,是不同時點的資料庫快照的集合,以及基於這些快照進行統計、綜合和重組的導出數據,而不是聯機處理的數據。資料庫中進行聯機處理的數據經過集成輸入到數據倉庫中,一旦數據倉庫存放的數據已經超過數據倉庫的數據存儲期限,這些數據將從當前的數據倉庫中刪去。因為數據倉庫只進行數據查詢操作,所以數據倉庫管理系統相比資料庫管理系統而言要簡單得多。資料庫管理系統中許多技術難點,如完整性保護、並發控制等等,在數據倉庫的管理中幾乎可以省去。但是由於數據倉庫的查詢數據量往往很大,所以就對數據查詢提出了更高的要求,它要求採用各種複雜的索引技術;同時由於數據倉庫面向的是商業企業的高層管理者,他們會對數據查詢的介面友好性和數據表示提出更高的要求。

4. 數據倉庫的數據是隨時間不斷變化的

數據倉庫中的數據不可更新是針對應用來說的,也就是說,數據倉庫的用戶進行分析處理時是不進行數據更新操作的。但並不是說,在從數據集成輸入數據倉庫開始到最終被刪除的整個數據生存周期中,所有的數據倉庫數據都是永遠不變的。

數據倉庫的數據是隨時間的變化而不斷變化的,這是數據倉庫數據的第四個特徵。這一特徵表現在以下3方面:

(1)數據倉庫隨時間變化不斷增加新的數據內容。數據倉庫系統必須不斷捕捉OLTP資料庫中變化的數據,追加到數據倉庫中去,也就是要不斷地生成OLTP資料庫的快照,經統一集成後增加到數據倉庫中去;但對於確實不再變化的資料庫快照,如果捕捉到新的變化數據,則只生成一個新的資料庫快照增加進去,而不會對原有的資料庫快照進行修改。

(2)數據倉庫隨時間變化不斷刪去舊的數據內容。數據倉庫的數據也有存儲期限,一旦超過了這一期限,過期數據就要被刪除。只是數據倉庫內的數據時限要遠遠長於操作型環境中的數據時限。在操作型環境中一般只保存有60~90天的數據,而在數據倉庫中則需要保存較長時限的數據(如5~10年),以適應DSS進行趨勢分析的要求。

(3)數據倉庫中包含有大量的綜合數據,這些綜合數據中很多跟時間有關,如數據經常按照時間段進行綜合,或隔一定的時間片進行抽樣等等。這些數據要隨著時間的變化不斷地進行重新綜合。因此,數據倉庫的數據特徵都包含時間項,以標明數據的歷史時期。

數據倉庫發展歷程

數據倉庫的發展大致經歷了這樣的三個過程:

· 簡單報表階段:這個階段,系統的主要目標是解決一些日常的工作中業務人員需要的報表,以及生成一些簡單的能夠幫助領導進行決策所需要的匯總數據。這個階段的大部分表現形式為資料庫和前端報表工具。

· 數據集市階段:這個階段,主要是根據某個業務部門的需要,進行一定的數據的採集,整理,按照業務人員的需要,進行多維報表的展現,能夠提供對特定業務指導的數據,並且能夠提供特定的領導決策數據。

· 數據倉庫階段:這個階段,主要是按照一定的數據模型,對整個企業的數據進行採集,整理,並且能夠按照各個業務部門的需要,提供跨部門的,完全一致的業務報表數據,能夠通過數據倉庫生成對對業務具有指導性的數據,同時,為領導決策提供全面的數據支援。

通過數據倉庫建設的發展階段,我們能夠看出,數據倉庫的建設和數據集市的建設的重要區別就在於數據模型的支援。因此,數據模型的建設,對於我們數據倉庫的建設,有著決定性的意義。