資料倉儲與資料集市的概念區別

2022-05-21 09:47:02 字數 2672 閱讀 6834

企業從事資料倉儲專案時,往往會遇到多個資料倉儲軟體**商。各**商除了推銷相關的軟體工具外,同時會向企業灌輸許多概念,其中,資料倉儲和資料集市是最常見的。由於術語定義不統一,另外各個**商銷售策略不一樣,往往會給企業帶來很大的混淆。最典型的問題是:到底是先上乙個企業級的資料倉儲呢?還是先上乙個部門級的資料集市?本文試圖說明這兩個概念之間的區別和聯絡,以期對具體的資料倉儲專案有所裨益。

1.為什麼會出現資料倉儲和資料集市?

「資料倉儲」的概念可以追溯到80 年代中期。從本質上講,最初資料倉儲是想為操作型系統到決策支援環境的資料流提供一種體系結構模型,並嘗試解決和這些資料流相關的各種問題。

在缺乏「資料倉儲」體系結構的情況下,早期的決策支援環境如圖1 所示。企業內部存在許多冗餘的、重複建設的決策支援系統(通常是報表系統),這些系統被不同型別的使用者使用,資料的抽取層次複雜,最初在oltp 上抽取,再在抽取後的資料集上抽取,如此等等,呈「蜘蛛網」狀,由於沒有公共的資料來源,並且資料沒有時間點,導致了產生的報表可信度下降,資料不一致問題特別顯著,更不用說轉化為有效的決策資訊。

為了解決上述問題,資料倉儲應運而生。資料倉儲構建了一種以集中式的資料儲存為核心的體系結構,資料儲存的模式為了適應決策分析的要求,從而形成一種與原來業務系統構

成的操作型環境(oltp)相獨立的決策支援環境。資料倉儲最基本的體系結構如圖2 所示。圖2 所示的以資料倉儲為基礎的決策支援環境,要求資料倉儲能夠滿足所有終端使用者的需求。然而,終端使用者的需求是不斷變化的,而且各種型別的使用者對資訊的需求也不一樣,這就要求資料倉儲儲存的資料具有充分的靈活性,能夠適應各類使用者的查詢和分析。另一方面,終端使用者對資訊的需求必須易於訪問,能夠在較高的效能上獲得結果。但是,靈活性和效能對資料倉儲而言,是一對矛盾體。為了適應靈活性的要求,資料倉儲需要儲存各種歷史資料,以規範化的模式儲存(一般是第3正規化)。於是,對於特定的使用者,他/她所需要的資訊就需要在許多張很大的表上連線後得到結果,這樣就無法滿足使用者對快速訪問的效能需求。為了解決靈活性和效能之間的矛盾,資料倉儲體系結構中增加了資料集市,資料集市儲存為特定使用者需求而預先計算好的資料,從而滿足使用者對效能的需求。帶有資料集市的體系結構如圖3 所示。

上文提及資料倉儲除了為資料流構建體系結構模型外,還嘗試解決與資料流相關的各種問題,這些問題如圖4 所示,包括資料倉儲構建過程中需要開展的各種任務及特點。

2.資料倉儲和資料集市的概念

3.資料倉儲和資料集市之間的區別

資料倉儲和資料集市之間的區別可以直觀地用下圖表示(圖5,www.billinmon.com)。

從圖中可以看出,資料倉儲中資料結構採用的規範化模式(關聯式資料庫設計理論),資料集市的資料結構採用的星型模式(多維資料庫設計理論)。資料倉儲中資料的粒度比資料集市的細。上圖只反映了資料結構和資料內容的兩個特徵,對於其他區別如下表所示,並且簡單的以銀行為例進行說明。

假設為某銀行構建乙個分行級別的資料倉儲,再為該分行國際業務部構建資料集市。資料倉儲的資料**於銀行的業務系統,包括:儲蓄、卡、個貸、外匯寶、中間業務等等,分析的主題包括客戶、渠道、產品等。資料倉儲的資料粒度根據分析的要求而定,一般包括具體的歷史記錄(存款、取款、外匯交易、pos 消費、中間業務繳費記錄),然後,將這些記錄彙總到天/周/月/季度/年等各個層次,具體資料的粒度由分析的需求而定。另外,資料倉儲還儲存一些業務邏輯——為分析而計算的一些指標。比如,客戶的價值或客戶的忠誠度。這些指標的計算不能通過單一的業務系統,需要在所有業務上綜合考慮,這也是資料倉儲系統的優點之一。假設整個分行有20 萬個客戶,那麼資料倉儲將包含20 萬個客戶的所有業務的歷史資料、彙總資料、以及資料倉儲指標資料,資料量會達到幾十甚至數百g(這只是非常小規模的資料倉儲)。資料倉儲為了滿足全行所有部門使用者的查詢和分析,只能採用正規化化設計,這樣不管使用者有什麼需求,只要有資料存在,就能滿足。再假設國際業務部門的客戶有2 萬人(使用外匯寶),如果不構建資料集市,他們會直接在資料倉儲上查詢相關的資訊,比如外匯寶客戶去年一年外匯交易額在各種交易方式上(櫃檯、網上、**銀行等)的分布。查詢的效率和效能是非常低的,如果各個部門的所有使用者都直接在資料倉儲上查詢相關的資訊,資料倉儲的效能會下降,而且無法滿足使用者對效能的需求,誰都不願意為乙個簡單的查詢等待數分鐘甚至數小時。因此,構建部門級的資料集市是非常必要的,主要基於效能上的考慮。國際業務部門的資料集市包括2 萬個客戶的外匯交易歷史,以及彙總,採用星型模式(或雪片,或兩者混合),以方便olap 工具的查詢和分析。從這個簡單的例子,可以看出,資料集市的資料**於資料倉儲,主要是經過重新組織的彙總資料。因此,多個資料集市不能構成乙個企業級的資料倉儲,借用inmon 的比喻:我們不可能將大海浬的小魚堆在一起就構成一頭大鯨魚。這也說明了資料倉儲和資料集市有本質的不同。

跟隨資料倉儲和資料集市的概念,資料倉儲的設計方法也分為三種:自頂而下,自下而上,以及兩者的混合。所謂自頂而下是先建立乙個企業級的資料倉儲,再建立各個資料集市,自下而上與此相反,混合的方法是要求在建立資料集市時,同時考慮企業級資料倉儲的結構、內容。

資料倉儲到搭建資料集市

資料倉儲是一種關聯式資料庫模式,其中儲存了來自乙個或者多個源資料庫的歷史資料和元資料。資料倉儲的目的是便於將資料的報告和分析彙總到多個層次。或者更簡單點 是作為乙個存放企業各個領域的資料的單獨且有組織的庫。典型的資料倉儲有以下的一些特點 涉及多個主題域 有十分詳細的資訊 集合來自不同資料來源的資料 ...

資料倉儲 資料集市和資料湖三者的區別

資料倉儲,是為企業所有級別的決策制定過程,提供所有型別資料支援的戰略集合。它是單個資料儲存,出於分析性報告和決策支援目的而建立。資料倉儲算是優化的資料庫,用於分析來自事務系統和業務線應用程式的關係資料,事先定義資料結構和約束來優化sql查詢速度,其中結果通常用於操作報告和分析,資料經過etl,可以充...

資料倉儲(六) 資料倉儲的概念設計

在資料集市設計中可以使用3種基本的系統方法 資料驅動的方法 需求驅動的方法和混合方法。它們的區別在於源資料庫分析和終端使用者需求分析階段所佔的比重。方法的選擇將極大地影響概念設計的方式。資料驅動方法包括 基於實體 關係模式的設計 基於關係模式的設計 基於xml模式的設計。概念型實體 關係模式比關係型...