數(shù)據(jù)倉庫是什么
數(shù)據(jù)倉庫,英文名稱為DataWarehouse,可簡寫為DW或DWH。數(shù)據(jù)倉庫,是為企業(yè)所有級別的決策制定過程,提供所有類型數(shù)據(jù)支持的戰(zhàn)略集合。它是單個數(shù)據(jù)存儲,出于分析性報告和決策支持目的而創(chuàng)建。為需要業(yè)務智能的企業(yè),提供指導業(yè)務流程改進、監(jiān)視時間、成本、質量以及控制。
數(shù)據(jù)倉庫的特點
1.主題性
數(shù)據(jù)倉庫是一般從用戶實際需求出發(fā),將不同平臺的數(shù)據(jù)源按設定主題進行劃分整合,與傳統(tǒng)的面向事務的操作型數(shù)據(jù)庫不同,具有較高的抽象性。面向主題的數(shù)據(jù)組織方式,就是在較高層次對分析對象數(shù)據(jù)的一個完整、統(tǒng)一并一致的描述,能完整及統(tǒng)一地刻畫各個分析對象所涉及的有關企業(yè)的各項數(shù)據(jù),以及數(shù)據(jù)之間的聯(lián)系。
2.集成性
數(shù)據(jù)倉庫中存儲的數(shù)據(jù)大部分來源于傳統(tǒng)的數(shù)據(jù)庫,但并不是將原有數(shù)據(jù)簡單的直接導入,而是需要進行預處理。這是因為事務型數(shù)據(jù)中的數(shù)據(jù)一般都是有噪聲的、不完整的和數(shù)據(jù)形式不統(tǒng)一的。這些“臟數(shù)據(jù)”的直接導入將對在數(shù)據(jù)倉庫基礎上進行的數(shù)據(jù)挖掘造成混亂?!芭K數(shù)據(jù)”在進入數(shù)據(jù)倉庫之前必須經(jīng)過抽取、清洗、轉換才能生成從面向事務轉而面向主題的數(shù)據(jù)集合。數(shù)據(jù)集成是數(shù)據(jù)倉庫建設中最重要,也是最為復雜的一步。
3.穩(wěn)定性
數(shù)據(jù)倉庫中的數(shù)據(jù)主要為決策者分析提供數(shù)據(jù)依據(jù)。決策依據(jù)的數(shù)據(jù)是不允許進行修改的。即數(shù)據(jù)保存到數(shù)據(jù)倉庫后,用戶僅能通過分析工具進行查詢和分析,而不能修改。數(shù)據(jù)的更新升級主要都在數(shù)據(jù)集成環(huán)節(jié)完成,過期的數(shù)據(jù)將在數(shù)據(jù)倉庫中直接篩除。
4.動態(tài)性
數(shù)據(jù)倉庫數(shù)據(jù)會隨時間變化而定期更新,不可更新是針對應用而言,即用戶分析處理時不更新數(shù)據(jù)。每隔一段固定的時間間隔后,抽取運行數(shù)據(jù)庫系統(tǒng)中產(chǎn)生的數(shù)據(jù),轉換后集成到數(shù)據(jù)倉庫中。隨著時間的變化,數(shù)據(jù)以更高的綜合層次被不斷綜合,以適應趨勢分析的要求。當數(shù)據(jù)超過數(shù)據(jù)倉庫的存儲期限,或對分析無用時,從數(shù)據(jù)倉庫中刪除這些數(shù)據(jù)。關于數(shù)據(jù)倉庫的結構和維護信息保存在數(shù)據(jù)倉庫的元數(shù)據(jù)(Metadata)中,數(shù)據(jù)倉庫維護工作由系統(tǒng)根據(jù)其中的定義自動進行或由系統(tǒng)管理員定期維護。
數(shù)據(jù)倉庫的基本架構
數(shù)據(jù)倉庫的目的是構建面向分析的集成化數(shù)據(jù)環(huán)境,為企業(yè)提供決策支持(DecisionSupport)。其實數(shù)據(jù)倉庫本身并不“生產(chǎn)”任何數(shù)據(jù),同時自身也不需要“消費”任何的數(shù)據(jù),數(shù)據(jù)來源于外部,并且開放給外部應用,這也是為什么叫“倉庫”,而不叫“工廠”的原因。因此數(shù)據(jù)倉庫的基本架構主要包含的是數(shù)據(jù)流入流出的過程,可以分為三層——源數(shù)據(jù)、數(shù)據(jù)倉庫、數(shù)據(jù)應用:

從圖中可以看出數(shù)據(jù)倉庫的數(shù)據(jù)來源于不同的源數(shù)據(jù),并提供多樣的數(shù)據(jù)應用,數(shù)據(jù)自上而下流入數(shù)據(jù)倉庫后向上層開放應用,而數(shù)據(jù)倉庫只是中間集成化數(shù)據(jù)管理的一個平臺。
數(shù)據(jù)倉庫的數(shù)據(jù)來源
數(shù)據(jù)倉庫從各數(shù)據(jù)源獲取數(shù)據(jù)及在數(shù)據(jù)倉庫內(nèi)的數(shù)據(jù)轉換和流動都可以認為是ETL(抽取Extra,轉化Transfer,裝載Load)的過程,ETL是數(shù)據(jù)倉庫的流水線,也可以認為是數(shù)據(jù)倉庫的血液,它維系著數(shù)據(jù)倉庫中數(shù)據(jù)的新陳代謝,而數(shù)據(jù)倉庫日常的管理和維護工作的大部分精力就是保持ETL的正常和穩(wěn)定。
數(shù)據(jù)倉庫的數(shù)據(jù)存儲
數(shù)據(jù)倉庫并不需要儲存所有的原始數(shù)據(jù),同時數(shù)據(jù)倉庫需要儲存部分細節(jié)數(shù)據(jù)。簡單地解釋下:
a.為什么不需要所有原始數(shù)據(jù)?數(shù)據(jù)倉庫面向分析處理,但是某些源數(shù)據(jù)對于分析而言沒有價值或者其可能產(chǎn)生的價值遠低于儲存這些數(shù)據(jù)所需要的數(shù)據(jù)倉庫的實現(xiàn)和性能上的成本。比如我們知道用戶的省份、城市足夠,至于用戶究竟住哪里可能只是物流商關心的事,或者用戶在博客的評論內(nèi)容可能只是文本挖掘會有需要,但將這些冗長的評論文本存在數(shù)據(jù)倉庫就得不償失;
b.為什么要存細節(jié)數(shù)據(jù)?細節(jié)數(shù)據(jù)是必需的,數(shù)據(jù)倉庫的分析需求會時刻變化,而有了細節(jié)數(shù)據(jù)就可以做到以不變應萬變。如果我們只存儲根據(jù)某些需求搭建起來的數(shù)據(jù)模型,那么顯然對于頻繁變動的需求會手足無措;
數(shù)據(jù)倉庫基于維護細節(jié)數(shù)據(jù)的基礎上在對數(shù)據(jù)進行處理,使其真正地能夠應用于分析。主要包括三個方面:
1.數(shù)據(jù)的聚合
這里的聚合數(shù)據(jù)指的是基于特定需求的簡單聚合(基于多維數(shù)據(jù)的聚合體現(xiàn)在多維數(shù)據(jù)模型中),簡單聚合可以是網(wǎng)站的總Pageviews、Visits、UniqueVisitors等匯總數(shù)據(jù),也可以是Avg.timeonpage、Avg.timeonsite等平均數(shù)據(jù),這些數(shù)據(jù)可以直接地展示于報表上。
2.多維數(shù)據(jù)模型
多維數(shù)據(jù)模型提供了多角度多層次的分析應用,比如基于時間維、地域維等構建的銷售星形模型、雪花模型,可以實現(xiàn)在各時間維度和地域維度的交叉查詢,以及基于時間維和地域維的細分。所以數(shù)據(jù)倉庫面向特定群體的數(shù)據(jù)集市都是基于多維數(shù)據(jù)模型進行構建的。
3.業(yè)務模型
這里的業(yè)務模型指的是基于某些數(shù)據(jù)分析和決策支持而建立起來的數(shù)據(jù)模型,比如我之前介紹過的用戶評價模型、關聯(lián)推薦模型、RFM分析模型等,或者是決策支持的線性規(guī)劃模型、庫存模型等;同時,數(shù)據(jù)挖掘中前期數(shù)據(jù)的處理也可以在這里完成。
數(shù)據(jù)倉庫的數(shù)據(jù)應用
報表展示
報表幾乎是每個數(shù)據(jù)倉庫的必不可少的一類數(shù)據(jù)應用,將聚合數(shù)據(jù)和多維分析數(shù)據(jù)展示到報表,提供了最為簡單和直觀的數(shù)據(jù)。
即時查詢
理論上數(shù)據(jù)倉庫的所有數(shù)據(jù)(包括細節(jié)數(shù)據(jù)、聚合數(shù)據(jù)、多維數(shù)據(jù)和分析數(shù)據(jù))都應該開放即時查詢,即時查詢提供了足夠靈活的數(shù)據(jù)獲取方式,用戶可以根據(jù)自己的需要查詢獲取數(shù)據(jù)。
數(shù)據(jù)分析
數(shù)據(jù)分析大部分基于構建的業(yè)務模型展開,當然也可以使用聚合的數(shù)據(jù)進行趨勢分析、比較分析、相關分析等,而多維數(shù)據(jù)模型提供了多維分析的數(shù)據(jù)基礎;同時從細節(jié)數(shù)據(jù)中獲取一些樣本數(shù)據(jù)進行特定的分析也是較為常見的一種途徑。
數(shù)據(jù)挖掘
數(shù)據(jù)挖掘用一些高級的算法可以讓數(shù)據(jù)展現(xiàn)出各種令人驚訝的結果。數(shù)據(jù)挖掘可以基于數(shù)據(jù)倉庫中已經(jīng)構建起來的業(yè)務模型展開,但大多數(shù)時候數(shù)據(jù)挖掘會直接從細節(jié)數(shù)據(jù)上入手,而數(shù)據(jù)倉庫為挖掘工具諸如SAS、SPSS等提供數(shù)據(jù)接口。
元數(shù)據(jù)
數(shù)據(jù)倉庫環(huán)境中一個重要方面是元數(shù)據(jù)。元數(shù)據(jù)是關于數(shù)據(jù)的數(shù)據(jù)。只要有程序和數(shù)據(jù),元數(shù)據(jù)就是信息處理環(huán)境的一部分。但是在數(shù)據(jù)倉庫中,元數(shù)據(jù)扮演一個新的重要角色。也正因為有了元數(shù)據(jù),可以最有效地利用數(shù)據(jù)倉庫。元數(shù)據(jù)使得最終用戶/DSS分析員能夠探索各種可能性。
元數(shù)據(jù)在數(shù)據(jù)倉庫的上層,并且記錄數(shù)據(jù)倉庫中對象的位置。典型地,元數(shù)據(jù)記錄:
程序員所知的數(shù)據(jù)結構。
DSS分析員所知的數(shù)據(jù)結構。
數(shù)據(jù)倉庫的源數(shù)據(jù)。
數(shù)據(jù)加入數(shù)據(jù)倉庫時的轉換。
數(shù)據(jù)模型。
數(shù)據(jù)模型和數(shù)據(jù)倉庫的關系。
抽取數(shù)據(jù)的歷史記錄。

數(shù)據(jù)倉庫用途
信息技術與數(shù)據(jù)智能大環(huán)境下,數(shù)據(jù)倉庫在軟硬件領域、Internet和企業(yè)內(nèi)部網(wǎng)解決方案以及數(shù)據(jù)庫方面提供了許多經(jīng)濟高效的計算資源,可以保存極大量的數(shù)據(jù)供分析使用,且允許使用多種數(shù)據(jù)訪問技術。
開放系統(tǒng)技術使得分析大量數(shù)據(jù)的成本趨于合理,并且硬件解決方案也更為成熟。在數(shù)據(jù)倉庫應用中主要使用的技術如下:
并行
計算的硬件環(huán)境、操作系統(tǒng)環(huán)境、數(shù)據(jù)庫管理系統(tǒng)和所有相關的數(shù)據(jù)庫操作、查詢工具和技術、應用程序等各個領域都可以從并行的最新成就中獲益。
分區(qū)
分區(qū)功能使得支持大型表和索引更容易,同時也提高了數(shù)據(jù)管理和查詢性能。
數(shù)據(jù)壓縮
數(shù)據(jù)壓縮功能降低了數(shù)據(jù)倉庫環(huán)境中通常需要的用于存儲大量數(shù)據(jù)的磁盤系統(tǒng)的成本,新的數(shù)據(jù)壓縮技術也已經(jīng)消除了壓縮數(shù)據(jù)對查詢性能造成的負面影響。

數(shù)據(jù)倉庫的五大好處
1、提供加強的商業(yè)智能(BI)
利用從各種數(shù)據(jù)源提供的數(shù)據(jù),管理人員和高管們將不再需要憑著有限的數(shù)據(jù)或他們的直覺做出商業(yè)決策。此外,“數(shù)據(jù)倉庫及相關商業(yè)智能(BI)可直接用于包括市場細分、庫存管理、財務管理、銷售這樣的業(yè)務流程中?!?/p>
2、可節(jié)省時間
因為業(yè)務用戶可以在一個地方快速訪問許多數(shù)據(jù)源,他們就在關鍵方案上迅速做出知情的決策,而不會用浪費寶貴的時間從多種數(shù)據(jù)源中檢索數(shù)據(jù)。
不僅如此,業(yè)務主管們可以在很少或者根本沒有IT的支持下自己查詢數(shù)據(jù)—節(jié)約了更多的時間和資金。這意味著商業(yè)用戶不需要等待IT的出現(xiàn)就能生成報表,而那些在IT努力工作的人員可以做他們最好該做事情—維持業(yè)務的運行。
3、能提高數(shù)據(jù)的質量和一致性
一個數(shù)據(jù)倉庫的實施包括將數(shù)據(jù)從眾多的數(shù)據(jù)源系統(tǒng)中轉換成共同的格式。由于每個來自各個部門的數(shù)據(jù)被標準化了,每個部門將會產(chǎn)生與所有其它部門符合的結果。所以你可以對你數(shù)據(jù)的準確性更有信心。而準確的數(shù)據(jù)是強大的商業(yè)決策的基礎。
4、能提供歷史的智慧
一個數(shù)據(jù)倉庫儲存了大量的歷史數(shù)據(jù),所以你可以通過分析不同的時期和趨勢來做出對未來的預測。這些數(shù)據(jù)通常不能被存儲在一個交易型的數(shù)據(jù)庫里或用來從一個交易系統(tǒng)中生成報表。
5、能創(chuàng)建高的投資回報率
最后,最值得一提的是投資回報率。已經(jīng)安裝了數(shù)據(jù)倉庫和完善了商業(yè)智能(BI)系統(tǒng)的企業(yè)比沒有在商業(yè)智能(BI)系統(tǒng)和數(shù)據(jù)倉庫投資的企業(yè)能產(chǎn)生更多的利潤和節(jié)約更多的資金。而這應該成為高級管理層快速加入到數(shù)據(jù)倉庫這個潮流中的足夠理由。

數(shù)據(jù)庫與數(shù)據(jù)倉庫的區(qū)別
簡而言之,數(shù)據(jù)庫是面向事務的設計,數(shù)據(jù)倉庫是面向主題設計的。
數(shù)據(jù)庫一般存儲在線交易數(shù)據(jù),數(shù)據(jù)倉庫存儲的一般是歷史數(shù)據(jù)。
數(shù)據(jù)庫設計是盡量避免冗余,一般采用符合范式的規(guī)則來設計,數(shù)據(jù)倉庫在設計是有意引入冗余,采用反范式的方式來設計。
數(shù)據(jù)庫是為捕獲數(shù)據(jù)而設計,數(shù)據(jù)倉庫是為分析數(shù)據(jù)而設計,它的兩個基本的元素是維表和事實表。維是看問題的角度,比如時間,部門,維表放的就是這些東西的定義,事實表里放著要查詢的數(shù)據(jù),同時有維的ID。
單從概念上講,有些晦澀。任何技術都是為應用服務的,結合應用可以很容易地理解。以銀行業(yè)務為例。數(shù)據(jù)庫是事務系統(tǒng)的數(shù)據(jù)平臺,客戶在銀行做的每筆交易都會寫入數(shù)據(jù)庫,被記錄下來,這里,可以簡單地理解為用數(shù)據(jù)庫記帳。數(shù)據(jù)倉庫是分析系統(tǒng)的數(shù)據(jù)平臺,它從事務系統(tǒng)獲取數(shù)據(jù),并做匯總、加工,為決策者提供決策的依據(jù)。比如,某銀行某分行一個月發(fā)生多少交易,該分行當前存款余額是多少。如果存款又多,消費交易又多,那么該地區(qū)就有必要設立ATM了。
顯然,銀行的交易量是巨大的,通常以百萬甚至千萬次來計算。事務系統(tǒng)是實時的,這就要求時效性,客戶存一筆錢需要幾十秒是無法忍受的,這就要求數(shù)據(jù)庫只能存儲很短一段時間的數(shù)據(jù)。而分析系統(tǒng)是事后的,它要提供關注時間段內(nèi)所有的有效數(shù)據(jù)。這些數(shù)據(jù)是海量的,匯總計算起來也要慢一些,但是,只要能夠提供有效的分析數(shù)據(jù)就達到目的了。
數(shù)據(jù)倉庫,是在數(shù)據(jù)庫已經(jīng)大量存在的情況下,為了進一步挖掘數(shù)據(jù)資源、為了決策需要而產(chǎn)生的,它決不是所謂的“大型數(shù)據(jù)庫”。那么,數(shù)據(jù)倉庫與傳統(tǒng)數(shù)據(jù)庫比較,有哪些不同呢?讓我們先看看W.H.Inmon關于數(shù)據(jù)倉庫的定義:面向主題的、集成的、與時間相關且不可修改的數(shù)據(jù)集合。
“面向主題的”:傳統(tǒng)數(shù)據(jù)庫主要是為應用程序進行數(shù)據(jù)處理,未必按照同一主題存儲數(shù)據(jù);數(shù)據(jù)倉庫側重于數(shù)據(jù)分析工作,是按照主題存儲的。這一點,類似于傳統(tǒng)農(nóng)貿(mào)市場與超市的區(qū)別—市場里面,白菜、蘿卜、香菜會在一個攤位上,如果它們是一個小販賣的;而超市里,白菜、蘿卜、香菜則各自一塊。也就是說,市場里的菜(數(shù)據(jù))是按照小販(應用程序)歸堆(存儲)的,超市里面則是按照菜的類型(同主題)歸堆的。
“與時間相關”:數(shù)據(jù)庫保存信息的時候,并不強調一定有時間信息。數(shù)據(jù)倉庫則不同,出于決策的需要,數(shù)據(jù)倉庫中的數(shù)據(jù)都要標明時間屬性。決策中,時間屬性很重要。同樣都是累計購買過九車產(chǎn)品的顧客,一位是最近三個月購買九車,一位是最近一年從未買過,這對于決策者意義是不同的。
“不可修改”:數(shù)據(jù)倉庫中的數(shù)據(jù)并不是最新的,而是來源于其它數(shù)據(jù)源。數(shù)據(jù)倉庫反映的是歷史信息,并不是很多數(shù)據(jù)庫處理的那種日常事務數(shù)據(jù)(有的數(shù)據(jù)庫例如電信計費數(shù)據(jù)庫甚至處理實時信息)。因此,數(shù)據(jù)倉庫中的數(shù)據(jù)是極少或根本不修改的;當然,向數(shù)據(jù)倉庫添加數(shù)據(jù)是允許的。
數(shù)據(jù)倉庫的出現(xiàn),并不是要取代數(shù)據(jù)庫。目前,大部分數(shù)據(jù)倉庫還是用關系數(shù)據(jù)庫管理系統(tǒng)來管理的??梢哉f,數(shù)據(jù)庫、數(shù)據(jù)倉庫相輔相成、各有千秋。
所以主要區(qū)別在于:
(1)數(shù)據(jù)庫是面向事務的設計,數(shù)據(jù)倉庫是面向主題設計的。
(2)數(shù)據(jù)庫一般存儲在線交易數(shù)據(jù),數(shù)據(jù)倉庫存儲的一般是歷史數(shù)據(jù)。
(3)數(shù)據(jù)庫設計是盡量避免冗余,數(shù)據(jù)倉庫在設計是有意引入冗余。
(4)數(shù)據(jù)庫是為捕獲數(shù)據(jù)而設計,數(shù)據(jù)倉庫是為分析數(shù)據(jù)而設計。
-
數(shù)據(jù)庫
+關注
關注
7文章
4020瀏覽量
68355
發(fā)布評論請先 登錄
數(shù)據(jù)倉庫的基本架構及架構圖介紹
什么是數(shù)據(jù)倉庫?數(shù)據(jù)倉庫的優(yōu)勢分析
多版本數(shù)據(jù)倉庫模型設計
統(tǒng)計行業(yè)數(shù)據(jù)倉庫構建及應用
電信數(shù)據(jù)倉庫設計
OLAP在電信數(shù)據(jù)倉庫中的設計
數(shù)據(jù)庫與數(shù)據(jù)倉庫的區(qū)別
保護MySQL數(shù)據(jù)倉庫的最佳實踐
數(shù)據(jù)倉庫是什么_數(shù)據(jù)倉庫有什么特點_數(shù)據(jù)庫和數(shù)據(jù)倉庫區(qū)別分析
如何建設企業(yè)級數(shù)據(jù)倉庫_多維數(shù)據(jù)庫模型的設計你知道多少
數(shù)據(jù)倉庫是什么_數(shù)據(jù)倉庫的特點_數(shù)據(jù)倉庫與數(shù)據(jù)庫區(qū)別
評論