ch07基于Kettle構(gòu)建數(shù)據(jù)倉庫_第1頁
ch07基于Kettle構(gòu)建數(shù)據(jù)倉庫_第2頁
ch07基于Kettle構(gòu)建數(shù)據(jù)倉庫_第3頁
ch07基于Kettle構(gòu)建數(shù)據(jù)倉庫_第4頁
ch07基于Kettle構(gòu)建數(shù)據(jù)倉庫_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

基于Kettle構(gòu)建數(shù)據(jù)倉庫新工科建設(shè)之路·數(shù)據(jù)科學(xué)與大數(shù)據(jù)系列樣本數(shù)據(jù)處理第七章01數(shù)據(jù)倉庫的介紹在建設(shè)數(shù)據(jù)倉庫之前,數(shù)據(jù)散落在企業(yè)各部門應(yīng)用的數(shù)據(jù)存儲中。如果要做數(shù)據(jù)分析,需要直接從業(yè)務(wù)數(shù)據(jù)庫中取數(shù)據(jù)來做分析。業(yè)務(wù)數(shù)據(jù)庫主要為業(yè)務(wù)操作服務(wù),雖然可以用于分析,但需要做很多額外的調(diào)整,主要有以下幾個問題:結(jié)構(gòu)復(fù)雜、數(shù)據(jù)臟亂、理解困難、缺少歷史、大規(guī)模查詢緩慢。數(shù)據(jù)倉庫的起因因為業(yè)務(wù)數(shù)據(jù)庫會接受大量用戶的輸入,如果業(yè)務(wù)系統(tǒng)沒有做好足夠的數(shù)據(jù)校驗,就會產(chǎn)生一些錯誤數(shù)據(jù),如不合法的身份證號等。數(shù)據(jù)臟亂業(yè)務(wù)數(shù)據(jù)庫中存在大量語義不明的操作代碼,如各種狀態(tài)的代碼、地理位置的代碼等,在不同業(yè)務(wù)中的同一名詞可能還有不同的叫法。理解困難數(shù)據(jù)倉庫的起因業(yè)務(wù)數(shù)據(jù)庫通常是根據(jù)業(yè)務(wù)操作的需要設(shè)計的,遵循3NF范式,盡可能減少數(shù)據(jù)冗余。結(jié)構(gòu)復(fù)雜當業(yè)務(wù)數(shù)據(jù)量較大時,查詢就會變得緩慢。大規(guī)模查詢緩慢數(shù)據(jù)倉庫的起因出于節(jié)約空間的考慮,業(yè)務(wù)數(shù)據(jù)庫通常不會記錄狀態(tài)流變歷史,這就使得某些基于流變歷史的分析無法進行。缺少歷史萌芽階段:分析系統(tǒng)和業(yè)務(wù)系統(tǒng)只能采用完全不同的架構(gòu)和設(shè)計方法分別處理。數(shù)據(jù)倉庫的探索階段:一個結(jié)構(gòu)化的環(huán)境,能支持最終用戶管理其全部的業(yè)務(wù),并支持信息技術(shù)部門保證數(shù)據(jù)質(zhì)量。數(shù)據(jù)倉庫的形成階段。數(shù)據(jù)倉庫的發(fā)展數(shù)據(jù)倉庫之父比爾·恩門在1991年出版的BuildingtheDataWarehouse《《建立數(shù)據(jù)倉庫》)一書中所提出的定義被廣泛接受數(shù)據(jù)倉庫是一個面向主題的、集成的、相對穩(wěn)定的、反映歷史變化的數(shù)據(jù)集合,用于支持管理決策和信息的全局共享。數(shù)據(jù)倉庫的定義數(shù)據(jù)倉庫的主要功能是將聯(lián)機事務(wù)處理(OLTP)經(jīng)年累月所累積的大量資料,通過數(shù)據(jù)倉庫理論所特有的數(shù)據(jù)儲存架構(gòu),對數(shù)據(jù)進行一個系統(tǒng)的分析整理,以利于各種分析方法如聯(lián)機分析處理(OLAP)、數(shù)據(jù)挖掘(DataMining)的進行,并進而支持如決策支持系統(tǒng)(DSS)、主管資訊系統(tǒng)(EIS)的創(chuàng)建,幫助決策者可以在大量資料中,快速有效地分析出有價值的信息,以利于決策的擬定及快速回應(yīng)外在環(huán)境變動,幫助構(gòu)建商務(wù)智能(BI)。數(shù)據(jù)倉庫的定義數(shù)據(jù)倉庫中的數(shù)據(jù)是面向主題的。操作型數(shù)據(jù)庫的數(shù)據(jù)組織面向事務(wù)處理任務(wù),各個聯(lián)機事務(wù)處理系統(tǒng)之間各自分離,而數(shù)據(jù)倉庫中的數(shù)據(jù)是按照一定的主題域進行組織的。主題是一個抽象的概念,是用戶使用數(shù)據(jù)倉庫進行決策時所關(guān)心的重點方面,一個主題通常與多個操作型信息系統(tǒng)相關(guān)。數(shù)據(jù)倉庫中的數(shù)據(jù)是集成的。面向事務(wù)處理的操作型數(shù)據(jù)庫通常與某些特定的應(yīng)用相關(guān),數(shù)據(jù)庫之間相互獨立,并且往往是異構(gòu)的。數(shù)據(jù)倉庫的特點數(shù)據(jù)倉庫中的數(shù)據(jù)是相對穩(wěn)定的。操作型數(shù)據(jù)庫中的數(shù)據(jù)通常實時更新,數(shù)據(jù)根據(jù)需要及時變化。數(shù)據(jù)倉庫中的數(shù)據(jù)反映歷史變化。操作型數(shù)據(jù)庫主要關(guān)心當前某一個時間段內(nèi)的數(shù)據(jù),而數(shù)據(jù)倉庫中的數(shù)據(jù)通常包含歷史信息,系統(tǒng)記錄了企業(yè)從過去某一時間點(如開始應(yīng)用數(shù)據(jù)倉庫的時間)到目前的各個階段的信息,通過這些信息,可以對企業(yè)的發(fā)展歷程和未來趨勢做出定量分析和預(yù)測。數(shù)據(jù)倉庫的特點數(shù)據(jù)倉庫的結(jié)構(gòu)倉庫的基本架構(gòu)主要包含的是數(shù)據(jù)流入流出的過程,可以分為三層一一源數(shù)據(jù)、數(shù)據(jù)倉庫、數(shù)據(jù)應(yīng)用,如圖7-1所示。數(shù)據(jù)倉庫建模如圖7-2所示,維度建模的架構(gòu)是典型的星型架構(gòu)。數(shù)據(jù)倉庫從各數(shù)據(jù)源獲取數(shù)據(jù)及在數(shù)據(jù)倉庫內(nèi)的數(shù)據(jù)轉(zhuǎn)換和流動都可以認為是ETL(Extract-Transform-Load)的過程,ETL是數(shù)據(jù)倉庫的流水線,也可以認為是數(shù)據(jù)倉庫的血液,它維系著數(shù)據(jù)倉庫中數(shù)據(jù)的新陳代謝,而數(shù)據(jù)倉庫日常的管理和維護工作的大部分精力就是保持ETL的正常和穩(wěn)定。數(shù)據(jù)倉庫與ETL的關(guān)系02構(gòu)建維度表最佳實踐表明,原則上在維度表中應(yīng)有代理鍵,一般用自動生成無意義的整型數(shù)值作為代理鍵。代理鍵的管理管理各種鍵業(yè)務(wù)主鍵的主要作用是區(qū)分業(yè)務(wù)主體,必須來源于源系統(tǒng),即來源于上游的業(yè)務(wù)系統(tǒng)。為方便管理,業(yè)務(wù)主鍵和代理鍵一起存儲在維度表中。業(yè)務(wù)主鍵的管理維度表的加載1.星型模式星型模式顧名思義,事實表和維度表形成星形的樣式,即以事實表為中心,外圍是若干張維度表;維度表通過主鍵和事實表的外鍵關(guān)聯(lián),如圖7-12所示。維度表的加載2.雪花模式雪花模式是在星型模式的基礎(chǔ)之上擴展而來的,每個維度可以再擴散出更多的維度,根據(jù)維度的層級拆分成顆粒度不同的多張表,如圖7-13所示。業(yè)務(wù)主體數(shù)據(jù)變化時,用當前最新數(shù)據(jù)覆蓋舊數(shù)據(jù),只保留最新版本數(shù)據(jù)。業(yè)務(wù)主體數(shù)據(jù)變化時,用當前最新數(shù)據(jù)生成新的記錄,保存多個歷史版本。業(yè)務(wù)主體數(shù)據(jù)變化時,用當前最新數(shù)據(jù)生成新的記錄,并且在該行記錄中記錄上一個版本部分關(guān)鍵信息。緩慢變化維度(1)部分重要性不高的字段,如果數(shù)據(jù)有更新,希望直接覆蓋舊記錄。(2)部分重要字段,如果數(shù)據(jù)有更新,希望保存本次記錄及歷史記錄。(3)部分次重要字段,如果數(shù)據(jù)有更新,希望保存本次記錄及上次記錄。數(shù)據(jù)倉庫與ETL的關(guān)系03構(gòu)建事實表事實表是業(yè)務(wù)數(shù)據(jù)的集合,其數(shù)據(jù)量較大,往往有幾GB、幾十GB、幾TB,某些行業(yè)甚至有幾PB的數(shù)據(jù)。在數(shù)據(jù)量不大的情況下,可以采用“表輸出”步驟實現(xiàn),但在數(shù)據(jù)量巨大的情況下,此方法是不適合的,原因在于:“表輸出”步驟對數(shù)據(jù)庫操作是基于數(shù)據(jù)操作語言(DataManipulationLanguage,DML)語句實現(xiàn)的,對數(shù)據(jù)庫進行DML操作會帶來兩個問題。批量加載批量加載1.MySQL批量加載“MySQL批量加載”的設(shè)置如圖7-25所示。批量加載2.Oracle批量加載“Oracle批量加載”的設(shè)置如圖7-28所示。參照完整性指的是事實表和維度表之間建立的外鍵約束。維護數(shù)據(jù)完整性獲取維度表代理鍵是構(gòu)建事實表重要環(huán)節(jié)之一。查找維度表代理鍵在數(shù)據(jù)加載中正常的加載順序應(yīng)是“先加載維度表,再加載事實表”。處理數(shù)據(jù)延遲查找維度常見的事實表主要有以下3種類型。事務(wù)型事實表(Transactionfacttable):是事務(wù)粒度的,以單個事務(wù)、單個事件為單位,每個事務(wù)作為事實表的一行數(shù)據(jù),如刷卡一次會有一條刷卡記錄。周期快照事實表(Periodicsnapshotfacttable):是時間周期粒度的,以固定時間周期為單位,每個時間周期對應(yīng)一行數(shù)據(jù),如每一天、每一個月的話費支出。累積快照事實表(Aecumulatingsnapshotfacttable):當新的事實到達后,更新事實表的記錄。事實表的處理事實表的處理事務(wù)型事實表示例如圖7-29所示。事實表的處理加載事務(wù)型事實表流程示例如圖7-30所

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論