數(shù)據(jù)倉庫是什么_數(shù)據(jù)倉庫有什么特點_數(shù)據(jù)庫和數(shù)據(jù)倉庫區(qū)別分析
數(shù)據(jù)倉庫是一個面向主題的、集成的、不可更新的、隨時間不斷變化的數(shù)據(jù)集合,它用于支持企業(yè)或組織的決策分析處理。
數(shù)據(jù)倉庫是一個過程而不是一個項目。
數(shù)據(jù)倉庫系統(tǒng)是一個信息提供平臺,他從業(yè)務處理系統(tǒng)獲得數(shù)據(jù),主要以星型模型和雪花模型進行數(shù)據(jù)組織,并為用戶提供各種手段從數(shù)據(jù)中獲取信息和知識。
從功能結(jié)構(gòu)化分,數(shù)據(jù)倉庫系統(tǒng)至少應該包含數(shù)據(jù)獲?。―ata AcquisiTIon)、數(shù)據(jù)存儲(Data Storage)、數(shù)據(jù)訪問(Data Access)三個關(guān)鍵部分。
企業(yè)數(shù)據(jù)倉庫的建設(shè),是以現(xiàn)有企業(yè)業(yè)務系統(tǒng)和大量業(yè)務數(shù)據(jù)的積累為基礎(chǔ)。數(shù)據(jù)倉庫不是靜態(tài)的概念,只有把信息及時交給需要這些信息的使用者,供他們做出改善其業(yè)務經(jīng)營的決策,信息才能發(fā)揮作用,信息才有意義。而把信息加以整理歸納和重組,并及時提供給相應的管理決策人員,是數(shù)據(jù)倉庫的根本任務。因此,從產(chǎn)業(yè)界的角度看,數(shù)據(jù)倉庫建設(shè)是一個工程,是一個過程。
數(shù)據(jù)倉庫系統(tǒng)體系結(jié)構(gòu)
·數(shù)據(jù)源:是數(shù)據(jù)倉庫系統(tǒng)的基礎(chǔ),是整個系統(tǒng)的數(shù)據(jù)源泉。通常包括企業(yè)內(nèi)部信息和外部信息。內(nèi)部信息包括存放于RDBMS中的各種業(yè)務處理數(shù)據(jù)和各類文檔數(shù)據(jù)。外部信息包括各類法律法規(guī)、市場信息和競爭對手的信息等等;
·數(shù)據(jù)的存儲與管理:是整個數(shù)據(jù)倉庫系統(tǒng)的核心。數(shù)據(jù)倉庫的真正關(guān)鍵是數(shù)據(jù)的存儲和管理。數(shù)據(jù)倉庫的組織管理方式?jīng)Q定了它有別于傳統(tǒng)數(shù)據(jù)庫,同時也決定了其對外部數(shù)據(jù)的表現(xiàn)形式。要決定采用什么產(chǎn)品和技術(shù)來建立數(shù)據(jù)倉庫的核心,則需要從數(shù)據(jù)倉庫的技術(shù)特點著手分析。針對現(xiàn)有各業(yè)務系統(tǒng)的數(shù)據(jù),進行抽取、清理,并有效集成,按照主題進行組織。數(shù)據(jù)倉庫按照數(shù)據(jù)的覆蓋范圍可以分為企業(yè)級數(shù)據(jù)倉庫和部門級數(shù)據(jù)倉庫(通常稱為數(shù)據(jù)集市)。
·OLAP(聯(lián)機分析處理)服務器:對分析需要的數(shù)據(jù)進行有效集成,按多維模型予以組織,以便進行多角度、多層次的分析,并發(fā)現(xiàn)趨勢。其具體實現(xiàn)可以分為:ROLAP(關(guān)系型在線分析處理)、MOLAP(多維在線分析處理)和HOLAP(混合型線上分析處理)。ROLAP基本數(shù)據(jù)和聚合數(shù)據(jù)均存放在RDBMS之中;MOLAP基本數(shù)據(jù)和聚合數(shù)據(jù)均存放于多維數(shù)據(jù)庫中;HOLAP基本數(shù)據(jù)存放于RDBMS之中,聚合數(shù)據(jù)存放于多維數(shù)據(jù)庫中。
·前端工具:主要包括各種報表工具、查詢工具、數(shù)據(jù)分析工具、數(shù)據(jù)挖掘工具以數(shù)據(jù)挖掘及各種基于數(shù)據(jù)倉庫或數(shù)據(jù)集市的應用開發(fā)工具。其中數(shù)據(jù)分析工具主要針對OLAP服務器,報表工具、數(shù)據(jù)挖掘工具主要針對數(shù)據(jù)倉庫。
目前,數(shù)據(jù)倉庫一詞尚沒有一個統(tǒng)一的定義,著名的數(shù)據(jù)倉庫專家W.H.Inmon在其著作《Building the Data Warehouse》一書中給予如下描述:數(shù)據(jù)倉庫(Data Warehouse)是一個面向主題的(Subject Oriented)、集成的(Integrate)、相對穩(wěn)定的(Non-VolaTIle)、反映歷史變化(TIme Variant)的數(shù)據(jù)集合,用于支持管理決策。對于數(shù)據(jù)倉庫的概念我們可以從兩個層次予以理解,首先,數(shù)據(jù)倉庫用于支持決策,面向分析型數(shù)據(jù)處理,它不同于企業(yè)現(xiàn)有的操作型數(shù)據(jù)庫;其次,數(shù)據(jù)倉庫是對多個異構(gòu)的數(shù)據(jù)源有效集成,集成后按照主題進行了重組,并包含歷史數(shù)據(jù),而且存放在數(shù)據(jù)倉庫中的數(shù)據(jù)一般不再修改。
數(shù)據(jù)倉庫的組成數(shù)據(jù)倉庫數(shù)據(jù)庫
是整個數(shù)據(jù)倉庫環(huán)境的核心,是數(shù)據(jù)存放的地方和提供對數(shù)據(jù)檢索的支持。相對于操縱型數(shù)據(jù)庫來說其突出的特點是對海量數(shù)據(jù)的支持和快速的檢索技術(shù)。
數(shù)據(jù)抽取工具
把數(shù)據(jù)從各種各樣的存儲方式中拿出來,進行必要的轉(zhuǎn)化、整理,再存放到數(shù)據(jù)倉庫內(nèi)。對各種不同數(shù)據(jù)存儲方式的訪問能力是數(shù)據(jù)抽取工具的關(guān)鍵,應能生成COBOL程序、MVS作業(yè)控制語言(JCL)、UNIX腳本、和SQL語句等,以訪問不同的數(shù)據(jù)。數(shù)據(jù)轉(zhuǎn)換都包括,刪除對決策應用沒有意義的數(shù)據(jù)段;轉(zhuǎn)換到統(tǒng)一的數(shù)據(jù)名稱和定義;計算統(tǒng)計和衍生數(shù)據(jù);給缺值數(shù)據(jù)賦給缺省值;把不同的數(shù)據(jù)定義方式統(tǒng)一。
元數(shù)據(jù)
元數(shù)據(jù)是描述數(shù)據(jù)倉庫內(nèi)數(shù)據(jù)的結(jié)構(gòu)和建立方法的數(shù)據(jù)??蓪⑵浒从猛镜牟煌譃閮深?,技術(shù)元數(shù)據(jù)和商業(yè)元數(shù)據(jù)。
技術(shù)元數(shù)據(jù)是數(shù)據(jù)倉庫的設(shè)計和管理人員用于開發(fā)和日常管理數(shù)據(jù)倉庫是用的數(shù)據(jù)。包括:數(shù)據(jù)源信息;數(shù)據(jù)轉(zhuǎn)換的描述;數(shù)據(jù)倉庫內(nèi)對象和數(shù)據(jù)結(jié)構(gòu)的定義;數(shù)據(jù)清理和數(shù)據(jù)更新時用的規(guī)則;源數(shù)據(jù)到目的數(shù)據(jù)的映射;用戶訪問權(quán)限,數(shù)據(jù)備份歷史記錄,數(shù)據(jù)導入歷史記錄,信息發(fā)布歷史記錄等。
商業(yè)元數(shù)據(jù)從商業(yè)業(yè)務的角度描述了數(shù)據(jù)倉庫中的數(shù)據(jù)。包括:業(yè)務主題的描述,包含的數(shù)據(jù)、查詢、報表;
元數(shù)據(jù)為訪問數(shù)據(jù)倉庫提供了一個信息目錄(informaTIondirectory),這個目錄全面描述了數(shù)據(jù)倉庫中都有什么數(shù)據(jù)、這些數(shù)據(jù)怎么得到的、和怎么訪問這些數(shù)據(jù)。是數(shù)據(jù)倉庫運行和維護的中心,數(shù)據(jù)倉庫服務器利用他來存貯和更新數(shù)據(jù),用戶通過他來了解和訪問數(shù)據(jù)。
訪問工具
為用戶訪問數(shù)據(jù)倉庫提供手段。有數(shù)據(jù)查詢和報表工具;應用開發(fā)工具;管理信息系統(tǒng)(EIS)工具;在線分析(OLAP)工具;數(shù)據(jù)挖掘工具。
數(shù)據(jù)集市(DataMarts)
為了特定的應用目的或應用范圍,而從數(shù)據(jù)倉庫中獨立出來的一部分數(shù)據(jù),也可稱為部門數(shù)據(jù)或主題數(shù)據(jù)(subjectarea)。在數(shù)據(jù)倉庫的實施過程中往往可以從一個部門的數(shù)據(jù)集市著手,以后再用幾個數(shù)據(jù)集市組成一個完整的數(shù)據(jù)倉庫。需要注意的就是再實施不同的數(shù)據(jù)集市時,同一含義的字段定義一定要相容,這樣再以后實施數(shù)據(jù)倉庫時才不會造成大麻煩。
數(shù)據(jù)倉庫管理:安全和特權(quán)管理;跟蹤數(shù)據(jù)的更新;數(shù)據(jù)質(zhì)量檢查;管理和更新元數(shù)據(jù);審計和報告數(shù)據(jù)倉庫的使用和狀態(tài);刪除數(shù)據(jù);復制、分割和分發(fā)數(shù)據(jù);備份和恢復;存儲管理。
信息發(fā)布系統(tǒng):把數(shù)據(jù)倉庫中的數(shù)據(jù)或其他相關(guān)的數(shù)據(jù)發(fā)送給不同的地點或用戶?;赪eb的信息發(fā)布系統(tǒng)是對付多用戶訪問的最有效方法。
數(shù)據(jù)倉庫的幾大特點
1、數(shù)據(jù)倉庫是面向主題的;操作型數(shù)據(jù)庫的數(shù)據(jù)組織面向事務處理任務,而數(shù)據(jù)倉庫中的數(shù)據(jù)是按照一定的主題域進行組織。主題是指用戶使用數(shù)據(jù)倉庫進行決策時所關(guān)心的重點方面,一個主題通常與多個操作型信息系統(tǒng)相關(guān)。
2、數(shù)據(jù)倉庫是集成的,數(shù)據(jù)倉庫的數(shù)據(jù)有來自于分散的操作型數(shù)據(jù),將所需數(shù)據(jù)從原來的數(shù)據(jù)中抽取出來,進行加工與集成,統(tǒng)一與綜合之后才能進入數(shù)據(jù)倉庫;
數(shù)據(jù)倉庫中的數(shù)據(jù)是在對原有分散的數(shù)據(jù)庫數(shù)據(jù)抽取、清理的基礎(chǔ)上經(jīng)過系統(tǒng)加工、匯總和整理得到的,必須消除源數(shù)據(jù)中的不一致性,以保證數(shù)據(jù)倉庫內(nèi)的信息是關(guān)于整個企業(yè)的一致的全局信息。
數(shù)據(jù)倉庫的數(shù)據(jù)主要供企業(yè)決策分析之用,所涉及的數(shù)據(jù)操作主要是數(shù)據(jù)查詢,一旦某個數(shù)據(jù)進入數(shù)據(jù)倉庫以后,一般情況下將被長期保留,也就是數(shù)據(jù)倉庫中一般有大量的查詢操作,但修改和刪除操作很少,通常只需要定期的加載、刷新。
數(shù)據(jù)倉庫中的數(shù)據(jù)通常包含歷史信息,系統(tǒng)記錄了企業(yè)從過去某一時點(如開始應用數(shù)據(jù)倉庫的時點)到當前的各個階段的信息,通過這些信息,可以對企業(yè)的發(fā)展歷程和未來趨勢做出定量分析和預測。
3、數(shù)據(jù)倉庫是不可更新的,數(shù)據(jù)倉庫主要是為決策分析提供數(shù)據(jù),所涉及的操作主要是數(shù)據(jù)的查詢;
4、數(shù)據(jù)倉庫是隨時間而變化的,傳統(tǒng)的關(guān)系數(shù)據(jù)庫系統(tǒng)比較適合處理格式化的數(shù)據(jù),能夠較好的滿足商業(yè)商務處理的需求。穩(wěn)定的數(shù)據(jù)以只讀格式保存,且不隨時間改變。
5、匯總的。操作性數(shù)據(jù)映射成決策可用的格式。
6、大容量。時間序列數(shù)據(jù)集合通常都非常大。
7、非規(guī)范化的。Dw數(shù)據(jù)可以是而且經(jīng)常是冗余的。
8、元數(shù)據(jù)。將描述數(shù)據(jù)的數(shù)據(jù)保存起來。
9、數(shù)據(jù)源。數(shù)據(jù)來自內(nèi)部的和外部的非集成操作系統(tǒng)。
數(shù)據(jù)倉庫用途
信息技術(shù)與數(shù)據(jù)智能大環(huán)境下,數(shù)據(jù)倉庫在軟硬件領(lǐng)域、Internet 和企業(yè)內(nèi)部網(wǎng)解決方案以及數(shù)據(jù)庫方面提供了許多經(jīng)濟高效的計算資源,可以保存極大量的數(shù)據(jù)供分析使用,且允許使用多種數(shù)據(jù)訪問技術(shù)。
開放系統(tǒng)技術(shù)使得分析大量數(shù)據(jù)的成本趨于合理,并且硬件解決方案也更為成熟。在數(shù)據(jù)倉庫應用中主要使用的技術(shù)如下:
并行
計算的硬件環(huán)境、操作系統(tǒng)環(huán)境、 數(shù)據(jù)庫管理系統(tǒng)和所有相關(guān)的數(shù)據(jù)庫操作、查詢工具和技術(shù)、應用程序等各個領(lǐng)域都可以從并行的最新成就中獲益。
分區(qū)
分區(qū)功能使得支持大型表和索引更容易,同時也提高了數(shù)據(jù)管理和查詢性能。
數(shù)據(jù)壓縮
數(shù)據(jù)壓縮功能降低了數(shù)據(jù)倉庫環(huán)境中通常需要的用于存儲大量數(shù)據(jù)的磁盤系統(tǒng)的成本,新的數(shù)據(jù)壓縮技術(shù)也已經(jīng)消除了壓縮數(shù)據(jù)對查詢性能造成的負面影響。
數(shù)據(jù)庫和數(shù)據(jù)倉庫區(qū)別分析數(shù)據(jù)庫:傳統(tǒng)的關(guān)系型數(shù)據(jù)庫的主要應用,主要是基本的、日常的事務處理,例如銀行交易。
數(shù)據(jù)倉庫:數(shù)據(jù)倉庫系統(tǒng)的主要應用主要是OLAP(On-Line Analytical Processing),支持復雜的分析操作,側(cè)重決策支持,并且提供直觀易懂的查詢結(jié)果。
舉個最常見的例子,拿電商行業(yè)來說。
基本每家電商公司都會經(jīng)歷,從只需要業(yè)務數(shù)據(jù)庫到要數(shù)據(jù)倉庫的階段。
電商早期啟動非常容易,入行門檻低。找個外包團隊,做了一個可以下單的網(wǎng)頁前端 + 幾臺服務器 + 一個MySQL,就能開門迎客了。這好比手工作坊時期。
第二階段,流量來了,客戶和訂單都多起來了,普通查詢已經(jīng)有壓力了,這個時候就需要升級架構(gòu)變成多臺服務器和多個業(yè)務數(shù)據(jù)庫(量大+分庫分表),這個階段的業(yè)務數(shù)字和指標還可以勉強從業(yè)務數(shù)據(jù)庫里查詢。初步進入工業(yè)化。
第三個階段,一般需要 3-5 年左右的時間,隨著業(yè)務指數(shù)級的增長,數(shù)據(jù)量的會陡增,公司角色也開始多了起來,開始有了 CEO、CMO、CIO,大家需要面臨的問題越來越復雜,越來越深入。高管們關(guān)心的問題,從最初非常粗放的:“昨天的收入是多少”、“上個月的 PV、UV 是多少”,逐漸演化到非常精細化和具體的用戶的集群分析,特定用戶在某種使用場景中,例如“20~30歲女性用戶在過去五年的第一季度化妝品類商品的購買行為與公司進行的促銷活動方案之間的關(guān)系”。
這類非常具體,且能夠?qū)緵Q策起到關(guān)鍵性作用的問題,基本很難從業(yè)務數(shù)據(jù)庫從調(diào)取出來。原因在于:
業(yè)務數(shù)據(jù)庫中的數(shù)據(jù)結(jié)構(gòu)是為了完成交易而設(shè)計的,不是為了而查詢和分析的便利設(shè)計的。
業(yè)務數(shù)據(jù)庫大多是讀寫優(yōu)化的,即又要讀(查看商品信息),也要寫(產(chǎn)生訂單,完成支付)。因此對于大量數(shù)據(jù)的讀(查詢指標,一般是復雜的只讀類型查詢)是支持不足的。
而怎么解決這個問題,此時我們就需要建立一個數(shù)據(jù)倉庫了,公司也算開始進入信息化階段了。數(shù)據(jù)倉庫的作用在于:
數(shù)據(jù)結(jié)構(gòu)為了分析和查詢的便利;
只讀優(yōu)化的數(shù)據(jù)庫,即不需要它寫入速度多么快,只要做大量數(shù)據(jù)的復雜查詢的速度足夠快就行了。
那么在這里前一種業(yè)務數(shù)據(jù)庫(讀寫都優(yōu)化)的是業(yè)務性數(shù)據(jù)庫,后一種是分析性數(shù)據(jù)庫,即數(shù)據(jù)倉庫。
最后總結(jié)一下:
數(shù)據(jù)庫 比較流行的有:MySQL, Oracle, SqlServer等
數(shù)據(jù)倉庫 比較流行的有:AWS Redshift, Greenplum, Hive等
這樣把數(shù)據(jù)從業(yè)務性的數(shù)據(jù)庫中提取、加工、導入分析性的數(shù)據(jù)庫就是傳統(tǒng)的 ETL 工作。現(xiàn)在也有一些新的方法,這展開說又是另一件事情了。