數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術課件_第1頁
數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術課件_第2頁
數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術課件_第3頁
數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術課件_第4頁
數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術課件_第5頁
已閱讀5頁,還剩147頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術1數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術什么是數(shù)據(jù)倉庫?多維數(shù)據(jù)模型數(shù)據(jù)倉庫的體系結構數(shù)據(jù)倉庫實現(xiàn)數(shù)據(jù)立方體技術的進一步發(fā)展從數(shù)據(jù)倉庫到數(shù)據(jù)挖掘數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術什么是數(shù)據(jù)倉庫?2什么是數(shù)據(jù)倉庫?數(shù)據(jù)倉庫的定義很多,但卻很難有一種嚴格的定義它是一個提供決策支持功能的數(shù)據(jù)庫,它與公司的操作數(shù)據(jù)庫分開維護。為統(tǒng)一的歷史數(shù)據(jù)分析提供堅實的平臺,對信息處理提供支持“數(shù)據(jù)倉庫是一個面向主題的、集成的、隨時間而變化的、不容易丟失的數(shù)據(jù)集合,支持管理部門的決策過程.”—W.H.Inmon(數(shù)據(jù)倉庫構造方面的領頭設計師)建立數(shù)據(jù)倉庫(datawarehousing):構造和使用數(shù)據(jù)倉庫的過程。什么是數(shù)據(jù)倉庫?數(shù)據(jù)倉庫的定義很多,但卻很難有一種嚴格的定義3數(shù)據(jù)倉庫關鍵特征一——面向主題圍繞一些主題,如顧客、供應商、產(chǎn)品等關注決策者的數(shù)據(jù)建模與分析,而不是集中于組織機構的日常操作和事務處理。排除對于決策無用的數(shù)據(jù),提供特定主題的簡明視圖。數(shù)據(jù)倉庫關鍵特征一——面向主題圍繞一些主題,如顧客、供應商、4數(shù)據(jù)倉庫關鍵特征二——數(shù)據(jù)集成一個數(shù)據(jù)倉庫是通過集成多個異種數(shù)據(jù)源來構造的。關系數(shù)據(jù)庫,一般文件,聯(lián)機事務處理記錄使用數(shù)據(jù)清理和數(shù)據(jù)集成技術。確保命名約定、編碼結構、屬性度量等的一致性。當數(shù)據(jù)被移到數(shù)據(jù)倉庫時,它們要經(jīng)過轉化。數(shù)據(jù)倉庫關鍵特征二——數(shù)據(jù)集成一個數(shù)據(jù)倉庫是通過集成多個異種5數(shù)據(jù)倉庫關鍵特征三——隨時間而變化數(shù)據(jù)倉庫的時間范圍比操作數(shù)據(jù)庫系統(tǒng)要長的多。操作數(shù)據(jù)庫系統(tǒng):主要保存當前數(shù)據(jù)。數(shù)據(jù)倉庫:從歷史的角度提供信息(比如過去5-10年)數(shù)據(jù)倉庫中的每一個關鍵結構都隱式或顯式地包含時間元素,而操作數(shù)據(jù)庫中的關鍵結構可能就不包括時間元素。數(shù)據(jù)倉庫關鍵特征三——隨時間而變化數(shù)據(jù)倉庫的時間范圍比操作數(shù)6數(shù)據(jù)倉庫關鍵特征四——數(shù)據(jù)不易丟失盡管數(shù)據(jù)倉庫中的數(shù)據(jù)來自于操作數(shù)據(jù)庫,但他們卻是在物理上分離保存的。操作數(shù)據(jù)庫的更新操作不會出現(xiàn)在數(shù)據(jù)倉庫環(huán)境下。不需要事務處理,恢復,和并發(fā)控制等機制只需要兩種數(shù)據(jù)訪問:數(shù)據(jù)的初始轉載和數(shù)據(jù)訪問(讀操作)數(shù)據(jù)倉庫關鍵特征四——數(shù)據(jù)不易丟失盡管數(shù)據(jù)倉庫中的數(shù)據(jù)來自于7數(shù)據(jù)倉庫與異種數(shù)據(jù)庫集成傳統(tǒng)的異種數(shù)據(jù)庫集成:在多個異種數(shù)據(jù)庫上建立包裝程序(wrappers)和中介程序(mediators)查詢驅動方法——當從客戶端傳過來一個查詢時,首先使用元數(shù)據(jù)字典將查詢轉換成相應異種數(shù)據(jù)庫上的查詢;然后,將這些查詢映射和發(fā)送到局部查詢處理器缺點:復雜的信息過慮和集成處理,競爭資源數(shù)據(jù)倉庫:更新驅動將來自多個異種源的信息預先集成,并存儲在數(shù)據(jù)倉庫中,供直接查詢和分析高性能數(shù)據(jù)倉庫與異種數(shù)據(jù)庫集成傳統(tǒng)的異種數(shù)據(jù)庫集成:8數(shù)據(jù)倉庫與操作數(shù)據(jù)庫系統(tǒng)操作數(shù)據(jù)庫系統(tǒng)的主要任務是聯(lián)機事務處理OLTP日常操作:購買,庫存,銀行,制造,工資,注冊,記帳等數(shù)據(jù)倉庫的主要任務是聯(lián)機分析處理OLAP數(shù)據(jù)分析和決策OLTP和OLAP的主要區(qū)別:用戶和系統(tǒng)的面向性:顧客VS.市場數(shù)據(jù)內(nèi)容:當前的、詳細的數(shù)據(jù)VS.歷史的、匯總的數(shù)據(jù)數(shù)據(jù)庫設計:實體-聯(lián)系模型(ER)和面向應用的數(shù)據(jù)庫設計VS.星型/雪花模型和面向主題的數(shù)據(jù)庫設計視圖:當前的、企業(yè)內(nèi)部的數(shù)據(jù)VS.經(jīng)過演化的、集成的數(shù)據(jù)訪問模式:事務操作VS.只讀查詢(但很多是復雜的查詢)數(shù)據(jù)倉庫與操作數(shù)據(jù)庫系統(tǒng)操作數(shù)據(jù)庫系統(tǒng)的主要任務是聯(lián)機事務處9OLTP系統(tǒng)和OLAP系統(tǒng)的比較特征OLTPOLAP任務特點操作處理信息處理面向事務分析用戶辦事員、DBA、數(shù)據(jù)庫專業(yè)人員經(jīng)理、主管、數(shù)據(jù)分析員功能日常操作長期信息分析、決策支持DB設計基于E-R,面向應用星型/雪花,面向主體數(shù)據(jù)最新的、詳細的歷史的、匯總的視圖詳細的、二維關系型匯總的、多維的任務單位簡短的事務復雜的查詢訪問數(shù)據(jù)量數(shù)十個數(shù)百萬個用戶數(shù)數(shù)千個數(shù)百個DB規(guī)模100M-數(shù)GB100GB-數(shù)TB優(yōu)先性高性能、高可用性高靈活性、端點用戶自治度量事務吞吐量查詢吞吐量、響應時間OLTP系統(tǒng)和OLAP系統(tǒng)的比較特征OLTPOLAP任務特點10為什么需要一個分離的數(shù)據(jù)倉庫?提高兩個系統(tǒng)的性能DBMS是為OLTP而設計的:存儲方式,索引,并發(fā)控制,恢復數(shù)據(jù)倉庫是為OLAP而設計:復雜的OLAP查詢,多維視圖,匯總不同的功能和不同的數(shù)據(jù):歷史數(shù)據(jù):決策支持需要歷史數(shù)據(jù),而這些數(shù)據(jù)在操作數(shù)據(jù)庫中一般不會去維護數(shù)據(jù)匯總:決策支持需要將來自異種源的數(shù)據(jù)統(tǒng)一(如聚集和匯總)數(shù)據(jù)質量:不同的源使用不一致的數(shù)據(jù)表示、編碼和格式,對這些數(shù)據(jù)進行有效的分析需要將他們轉化后進行集成為什么需要一個分離的數(shù)據(jù)倉庫?提高兩個系統(tǒng)的性能11從關系表和電子表格到數(shù)據(jù)立方體數(shù)據(jù)倉庫和數(shù)據(jù)倉庫技術基于多維數(shù)據(jù)模型。這個模型把數(shù)據(jù)看作是數(shù)據(jù)立方體形式。多維數(shù)據(jù)模型圍繞中心主題組織,該主題用事實表表示。事實是數(shù)值度量的。數(shù)據(jù)立方體允許以多維數(shù)據(jù)建模和觀察。它由維和事實定義。維是關于一個組織想要記錄的視角或觀點。每個維都有一個表與之相關聯(lián),稱為維表。事實表包括事實的名稱或度量以及每個相關維表的關鍵字在數(shù)據(jù)倉庫的研究文獻中,一個n維的數(shù)據(jù)的立方體叫做基本方體。給定一個維的集合,我們可以構造一個方體的格,每個都在不同的匯總級或不同的數(shù)據(jù)子集顯示數(shù)據(jù),方體的格稱為數(shù)據(jù)立方體。0維方體存放最高層的匯總,稱作頂點方體;而存放最底層匯總的方體則稱為基本方體。教科書第31頁從關系表和電子表格到數(shù)據(jù)立方體數(shù)據(jù)倉庫和數(shù)據(jù)倉庫技術基于多維12數(shù)據(jù)立方體——一個方體的格alltimeitemlocationsuppliertime,itemtime,locationtime,supplieritem,locationitem,supplierlocation,suppliertime,item,locationtime,item,suppliertime,location,supplieritem,location,suppliertime,item,location,supplier0-D(apex)cuboid1-Dcuboids2-Dcuboids3-Dcuboids4-D(base)cuboid數(shù)據(jù)立方體——一個方體的格alltimeitemlocati13數(shù)據(jù)倉庫的概念模型最流行的數(shù)據(jù)倉庫概念模型是多維數(shù)據(jù)模型。這種模型可以以星型模式、雪花模式、或事實星座模式的形式存在。星型模式(Starschema):事實表在中心,周圍圍繞地連接著維表(每維一個),事實表含有大量數(shù)據(jù),沒有冗余。雪花模式(Snowflakeschema):是星型模式的變種,其中某些維表是規(guī)范化的,因而把數(shù)據(jù)進一步分解到附加表中。結果,模式圖形成類似于雪花的形狀。事實星座(Factconstellations):多個事實表共享維表,這種模式可以看作星型模式集,因此稱為星系模式(galaxyschema),或者事實星座(factconstellation)數(shù)據(jù)倉庫的概念模型最流行的數(shù)據(jù)倉庫概念模型是多維數(shù)據(jù)模型。這14星型模式實例

time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcitystate_or_provincecountrylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranch星型模式實例time_keytimelocation_15雪花模式實例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcity_keylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_keyitembranch_keybranch_namebranch_typebranchsupplier_keysupplier_typesuppliercity_keycitystate_or_provincecountrycity雪花模式實例time_keytimelocation_key16事實星座模式實例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcityprovince_or_statecountrylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranchShippingFactTabletime_keyitem_keyshipper_keyfrom_locationto_locationdollars_costunits_shippedshipper_keyshipper_namelocation_keyshipper_typeshipper事實星座模式實例time_keytimelocation_k17一種數(shù)據(jù)挖掘查詢語言:DMQLDMQL首先包括定義數(shù)據(jù)倉庫和數(shù)據(jù)集市的語言原語,這包括兩種原語定義:一種是立方體定義,一種是維定義立方體定義(事實表)definecube<cube_name>[<dimension_list>]:<measure_list>維定義(維表)definedimension<dimension_name>as(<attribute_or_subdimension_list>)特殊案例(共享維表的定義)第一次作為維表定義“cubedefinition”然后:definedimension<dimension_name>as<dimension_name_first_time>incube<cube_name_first_time>一種數(shù)據(jù)挖掘查詢語言:DMQLDMQL首先包括定義數(shù)據(jù)倉庫18實例:使用DMQL定義星型模式definecubesales_star[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier_type)definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city,province_or_state,country)實例:使用DMQL定義星型模式definecubesal19實例:使用DMQL定義雪花模式definecubesales_snowflake[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier(supplier_key,supplier_type))definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city(city_key,province_or_state,country))實例:使用DMQL定義雪花模式definecubesal20度量的分類一個數(shù)據(jù)立方體的度量是一個數(shù)值函數(shù),該函數(shù)可以對數(shù)據(jù)立方體的每一個點求值。度量可以根據(jù)其所用的聚集函數(shù)分為三類:分布的(distributive):將函數(shù)用于n個聚集值得到的結果和將函數(shù)用于所有數(shù)據(jù)得到的結果一樣。比如:count(),sum(),min(),max()等代數(shù)的(algebraic):函數(shù)可以由一個帶M個參數(shù)的代數(shù)函數(shù)計算(M為有界整數(shù)),而每個參數(shù)值都可以有一個分布的聚集函數(shù)求得。比如:avg(),min_N(),standard_deviation()整體的(holistic):描述函數(shù)的子聚集所需的存儲沒有一個常數(shù)界。比如:median(),mode(),rank()度量的分類一個數(shù)據(jù)立方體的度量是一個數(shù)值函數(shù),該函數(shù)可以對數(shù)21概念分層:location維的一個概念分層allEuropeNorth_AmericaMexicoCanadaSpainGermanyVancouverM.WindL.Chan..................allregionofficecountryTorontoFrankfurtcity概念分層:location維的一個概念分層allEurope22多維數(shù)據(jù)模型上的OLAP操作上卷(roll-up):匯總數(shù)據(jù)通過一個維的概念分層向上攀升或者通過維規(guī)約下鉆(drill-down):上卷的逆操作由不太詳細的數(shù)據(jù)到更詳細的數(shù)據(jù),可以通過沿維的概念分層向下或引入新的維來實現(xiàn)切片和切塊(sliceanddice)投影和選擇操作轉軸(pivot)立方體的重定位,可視化,或將一個3維立方體轉化維一個2維平面序列其他OLAP操作鉆過(drill_across):執(zhí)行涉及多個事實表的查詢鉆透(drill_through):使用關系SQL機制,鉆到數(shù)據(jù)立方體的底層,到后端關系表多維數(shù)據(jù)模型上的OLAP操作上卷(roll-up):匯總數(shù)據(jù)23數(shù)據(jù)倉庫設計:一個商務分析框架數(shù)據(jù)倉庫設計中必須考慮的四種視圖自頂向下視圖允許我們選擇數(shù)據(jù)倉庫所需的相關信息,這些信息能夠滿足當前和未來商務的需求。數(shù)據(jù)源視圖揭示被操作數(shù)據(jù)庫系統(tǒng)所捕獲、存儲和管理的信息數(shù)據(jù)倉庫視圖有事實表和維表所組成,提供存放在數(shù)據(jù)倉庫內(nèi)部的信息,包括預先計算的綜合與技術,以及關于源、日期和源時間等信息商務查詢視圖從最終用戶的角度透視數(shù)據(jù)倉庫中的數(shù)據(jù)數(shù)據(jù)倉庫設計:一個商務分析框架數(shù)據(jù)倉庫設計中必須考慮的四種視24數(shù)據(jù)倉庫的設計過程(P43)自頂向下法、自底向上法或者兩者的混合方法自頂向下法:由總體設計和規(guī)劃開始(成熟)自底向上法:以實驗和原型開始(快速)從軟件過程的觀點瀑布式方法:在進行下一步前,每一步都進行結構化和系統(tǒng)的分析螺旋式方法:功能漸增的系統(tǒng)的快速產(chǎn)生,相繼版本之間間隔很短典型的數(shù)據(jù)倉庫設計過程選取待建模的商務過程選取商務過程的粒度選取用于每個事實表記錄的維選取將安放在事實表中的度量數(shù)據(jù)倉庫的設計過程(P43)自頂向下法、自底向上法或者兩者的25三層數(shù)據(jù)倉庫架構DataWarehouseExtractTransformLoadRefreshOLAP服務器AnalysisQueryReportsDataminingMonitor&IntegratorMetadata數(shù)據(jù)源前端工具ServeDataMartsOperational

DBsothersources數(shù)據(jù)倉庫服務器OLAPServer三層數(shù)據(jù)倉庫架構DataExtractOLAP服務器Anal26三種數(shù)據(jù)倉庫模型(從結構的角度)企業(yè)倉庫搜集關于跨越整個組織的主題的所有信息,來自一個或多個操作的系統(tǒng),跨功能的。數(shù)據(jù)集市企業(yè)范圍數(shù)據(jù)的一個子集,對于特定的客戶是有用的。其范圍限于選定的主題,比如一個商場的數(shù)據(jù)集市獨立的數(shù)據(jù)集市VS.非獨立的數(shù)據(jù)集市(數(shù)據(jù)來自于企業(yè)數(shù)據(jù)倉庫)虛擬倉庫操作數(shù)據(jù)庫上的一系列視圖只有一些可能的匯總視圖被物化三種數(shù)據(jù)倉庫模型(從結構的角度)企業(yè)倉庫27數(shù)據(jù)倉庫開發(fā)自頂向下開發(fā):一種系統(tǒng)的而解決方法,并能最大限度地減少集成問題。但費用高,長時間開發(fā),缺乏靈活性,因為整個組織的共同數(shù)據(jù)模型達到一致是困難的。自底向上:設計、開發(fā)、部署獨立的數(shù)據(jù)集市方法提供了靈活性、低花費,并能快速回報投資。然后,將分散的數(shù)據(jù)集市集成,形成一個一致的企業(yè)數(shù)據(jù)倉庫時,可能導致問題。數(shù)據(jù)倉庫開發(fā)自頂向下開發(fā):一種系統(tǒng)的而解決方法,并能最大限度28數(shù)據(jù)倉庫開發(fā)——一個推薦的方法定義高層數(shù)據(jù)模型數(shù)據(jù)集市數(shù)據(jù)集市分布式數(shù)據(jù)集市多層數(shù)據(jù)倉庫企業(yè)數(shù)據(jù)倉庫模型提煉模型提煉數(shù)據(jù)倉庫開發(fā)——一個推薦的方法定義高層數(shù)據(jù)模型數(shù)據(jù)集市數(shù)據(jù)集29OLAP服務器類型關系OLAP服務器(ROLAP)使用關系數(shù)據(jù)庫或擴展的關系數(shù)據(jù)庫存放并管理數(shù)據(jù)倉庫的數(shù)據(jù),而用OLAP中間件支持其余部分包括每個DBMS后端優(yōu)化,聚集導航邏輯的實現(xiàn),附加的工具和服務較大的可擴展性多維OLAP服務器(MOLAP)基于數(shù)組的多維存儲引擎(稀疏矩陣技術)能對預計算的匯總數(shù)據(jù)快速索引混合OLAP服務器(HOLAP)結合上述兩種技術,更大的使用靈活性特殊的SQL服務器在星型和雪花模型上支持SQL查詢OLAP服務器類型關系OLAP服務器(ROLAP)30數(shù)據(jù)倉庫的實現(xiàn)難點海量數(shù)據(jù)快速反應OLAP服務器要在幾秒內(nèi)響應決策支持查詢方法高效的數(shù)據(jù)立方體計算技術高效的存取方法高效的查詢處理技術數(shù)據(jù)倉庫的實現(xiàn)難點31數(shù)據(jù)立方體的有效計算數(shù)據(jù)立方體可以被看成是一個方體的格最底層的方體是基本方體最頂端的方體(頂點)只包含一個單元的值一個n維的數(shù)據(jù)立方體,每維Li層,可能產(chǎn)生的方體總數(shù)是多少?數(shù)據(jù)立方體的物化(materialization)預先計算所有方體(全物化):需要海量存儲空間,存放預先計算的方體不預先計算任何“非基本”方體(不物化),在運行時計算昂貴的多維聚集,可能很慢有選擇的計算一個所有方體的適當子集(部分物化):相應時間和存儲空間的折中。確定物化哪些方體考慮工作負荷下的查詢、它們的頻率和它們的開銷等等數(shù)據(jù)立方體的有效計算數(shù)據(jù)立方體可以被看成是一個方體的格32方體的操作DMQL中的方體定義和計算definecubesales[item,city,year]:sum(sales_in_dollars)computecubesales上述的computecube子句可以轉化為一個類似于SQL的語句SELECTitem,city,year,SUM(amount)FROMSALESCUBEBYitem,city,year需要計算以下的groupby子句(item,city,year)(item,city),(itemyear),(city,year)(item),(city),(year)()(item)(city)()(year)(city,item)(city,year)(item,year)(city,item,year)方體的操作DMQL中的方體定義和計算(item)(city)33方體計算:關系型OLAP的方法(ROLAP)方體計算的有效方法基于ROLAP的方體算法(Agarwaletal’96)基于數(shù)組的算法(MOLAP)(Zhaoetal’97)自底向上的計算方法(Beyer&Ramarkrishnan’99)H-cubing技術(Han,Pei,Dong&Wang:SIGMOD’01)基于ROLAP的方法將排序、散列(hashing)和分組操作應用于維的屬性,以便對相關元組重新排序和聚類在某些子聚集上分組,作為“部分分組步驟”??梢杂梢郧坝嬎愕木奂嬎阈碌木奂?,而不必有基本事實表計算方體計算:關系型OLAP的方法(ROLAP)方體計算的有效方34方體計算的多路數(shù)組聚集方法(1)將數(shù)組分成塊(chunk,一個可以裝入內(nèi)存的小子方)壓縮的稀疏數(shù)組尋址:(chunk_id,offset)通過訪問立方體單元,計算聚集。可以優(yōu)化訪問單元組的次序,使得每個單元被訪問的次數(shù)最小化,從而減少內(nèi)存訪問和磁盤I/O的開銷。A(month)B29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3C(item)B(city)442856402452362060哪個是多路數(shù)組聚集的最佳遍歷次序?方體計算的多路數(shù)組聚集方法(1)將數(shù)組分成塊(chunk,一35方體計算的多路數(shù)組聚集方法(2)A(month)40B29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3C(item)4000442856402452362060B(city)400方體計算的多路數(shù)組聚集方法(2)A(month)B2930336方體計算的多路數(shù)組聚集方法(3)AB29303132123459131415166463626148474645a1a0c3c2c1c0b3b2b1b0a2a3C442856402452362060B方體計算的多路數(shù)組聚集方法(3)AB29303132123437方體計算的多路數(shù)組聚集方法(4)方法:各平面要按他們大小的升序排列進行排序和計算詳見書P50例2.12思想:將最小的平面放在內(nèi)存中,對最大的平面每次只是取并計算一塊這種方法的限制:只有在維數(shù)比較小的情況下,效果才比較理想(要計算的立方體隨維數(shù)指數(shù)增長)如果維的數(shù)目比較多,可以考慮使用“自底向上的計算”或者時“冰山方體”計算方體計算的多路數(shù)組聚集方法(4)方法:各平面要按他們大小的升38元數(shù)據(jù)存儲在數(shù)據(jù)倉庫中,元數(shù)據(jù)就是定義數(shù)據(jù)倉庫對象的數(shù)據(jù)。關于數(shù)據(jù)的數(shù)據(jù)。有以下幾種:數(shù)據(jù)倉庫結構的描述倉庫模式、視圖、維、層次結構、導出數(shù)據(jù)的定義,以及數(shù)據(jù)集市的位置和內(nèi)容操作元數(shù)據(jù)包括數(shù)據(jù)血統(tǒng)(datalineage)、數(shù)據(jù)類別(currencyofdata),以及監(jiān)視信息匯總用的算法:包括度量和維定義算法,數(shù)據(jù)粒度、分割、主題領域、聚集、匯總、預定義的查詢和報告由操作環(huán)境到數(shù)據(jù)倉庫的映射:數(shù)據(jù)提取、清理、轉換規(guī)則、剪裁規(guī)則、安全等關于系統(tǒng)性能的數(shù)據(jù)索引,profiles,數(shù)據(jù)刷新、更新或復制事件的調度和定時商務元數(shù)據(jù)商務術語和定義、數(shù)據(jù)擁有者信息、收費政策等元數(shù)據(jù)存儲在數(shù)據(jù)倉庫中,元數(shù)據(jù)就是定義數(shù)據(jù)倉庫對象的數(shù)據(jù)。關39元數(shù)據(jù)的使用元數(shù)據(jù)與數(shù)據(jù)一起,構成了數(shù)據(jù)倉庫中的數(shù)據(jù)模型,元數(shù)據(jù)所描述的更多的是這個模型的結構方面的信息。在數(shù)據(jù)倉庫中,元數(shù)據(jù)的主要用途包括:用作目錄,幫助決策支持系統(tǒng)分析者對數(shù)據(jù)倉庫的內(nèi)容定義作為數(shù)據(jù)倉庫和操作性數(shù)據(jù)庫之間進行數(shù)據(jù)轉換時的映射標準用于指導當前細節(jié)數(shù)據(jù)和稍加綜合的數(shù)據(jù)之間的匯總算法,指導稍加綜合的數(shù)據(jù)和高度綜合的數(shù)據(jù)之間的匯總算法。元數(shù)據(jù)的使用元數(shù)據(jù)與數(shù)據(jù)一起,構成了數(shù)據(jù)倉庫中的數(shù)據(jù)模型,元40數(shù)據(jù)倉庫后端工具和使用程序用于加載和刷新它的數(shù)據(jù)數(shù)據(jù)提?。簭亩鄠€外部的異構數(shù)據(jù)源收集數(shù)據(jù)數(shù)據(jù)清理檢測數(shù)據(jù)種的錯誤并作可能的訂正數(shù)據(jù)變換將數(shù)據(jù)由歷史或主機的格式轉化為數(shù)據(jù)倉庫的格式裝載排序、匯總、合并、計算視圖,檢查完整性,并建立索引和分區(qū)刷新將數(shù)據(jù)源的更新傳播到數(shù)據(jù)倉庫中數(shù)據(jù)倉庫后端工具和使用程序用于加載和刷新它的數(shù)據(jù)41數(shù)據(jù)倉庫的應用數(shù)據(jù)倉庫的三種應用信息處理支持查詢和基本的統(tǒng)計分析,并使用交叉表、表、圖標和圖進行報表處理分析處理對數(shù)據(jù)倉庫中的數(shù)據(jù)進行多維數(shù)據(jù)分析支持基本的OLAP操作,切塊、切片、上卷、下鉆、轉軸等數(shù)據(jù)挖掘從隱藏模式中發(fā)現(xiàn)知識支持關聯(lián)分析,構建分析性模型,分類和預測,并用可視化工具呈現(xiàn)挖掘的結果三種應用間的差別(P62)數(shù)據(jù)倉庫的應用數(shù)據(jù)倉庫的三種應用42從聯(lián)機分析處理到聯(lián)機分析挖掘為什么要聯(lián)機分析挖掘(P63)數(shù)據(jù)倉庫中有高質量的數(shù)據(jù)數(shù)據(jù)倉庫中存放著整合的、一致的、清理過的數(shù)據(jù)圍繞數(shù)據(jù)倉庫的信息處理結構存取、集成、合并多個異種數(shù)據(jù)庫的轉換,ODBC/OLEDB連接,Web訪問和訪問工具等基于OLAP的探測式數(shù)據(jù)分析使用上卷、下鉆、切片、轉軸等技術進行數(shù)據(jù)挖掘數(shù)據(jù)挖掘功能的聯(lián)機選擇多種數(shù)據(jù)挖掘功能、算法和任務的整合從聯(lián)機分析處理到聯(lián)機分析挖掘為什么要聯(lián)機分析挖掘(P63)43聯(lián)機分析挖掘的體系結構數(shù)據(jù)倉庫元數(shù)據(jù)多維數(shù)據(jù)庫OLAM引擎OLAP引擎用戶圖形界面API數(shù)據(jù)方體API數(shù)據(jù)庫API數(shù)據(jù)清理數(shù)據(jù)集成Layer3OLAP/OLAMLayer2多維數(shù)據(jù)庫Layer1數(shù)據(jù)存儲Layer4用戶界面數(shù)據(jù)的過濾、集成過濾數(shù)據(jù)庫基于約束的數(shù)據(jù)挖掘挖掘結果聯(lián)機分析挖掘的體系結構數(shù)據(jù)倉庫元數(shù)據(jù)多維數(shù)據(jù)庫OLAMOLA44數(shù)據(jù)預處理數(shù)據(jù)預處理45主要內(nèi)容為什么要預處理數(shù)據(jù)?數(shù)據(jù)清理數(shù)據(jù)集成和變換數(shù)據(jù)歸約主要內(nèi)容為什么要預處理數(shù)據(jù)?46為什么要預處理數(shù)據(jù)?現(xiàn)實世界的數(shù)據(jù)是“骯臟的”不完整的:有些感興趣的屬性缺少屬性值,或僅包含聚集數(shù)據(jù)含噪聲的:包含錯誤或者“孤立點”不一致的:在編碼或者命名上存在差異沒有高質量的數(shù)據(jù),就沒有高質量的挖掘結果高質量的決策必須依賴高質量的數(shù)據(jù)數(shù)據(jù)倉庫需要對高質量的數(shù)據(jù)進行一致地集成為什么要預處理數(shù)據(jù)?現(xiàn)實世界的數(shù)據(jù)是“骯臟的”47數(shù)據(jù)質量的多維度量一個廣為認可的多維度量觀點:精確度完整度一致性合乎時機可信度附加價值可訪問性跟數(shù)據(jù)本身的含義相關的內(nèi)在的、上下文的、表象的數(shù)據(jù)質量的多維度量一個廣為認可的多維度量觀點:48數(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ù)的離散化來規(guī)約數(shù)據(jù),對數(shù)字型數(shù)據(jù)特別重要數(shù)據(jù)預處理的主要任務數(shù)據(jù)清理49數(shù)據(jù)預處理的形式數(shù)據(jù)預處理的形式50空缺值數(shù)據(jù)并不總是完整的例如:數(shù)據(jù)庫表中,很多條記錄的對應字段沒有相應值,比如銷售表中的顧客收入引起空缺值的原因設備異常與其他已有數(shù)據(jù)不一致而被刪除因為誤解而沒有被輸入的數(shù)據(jù)在輸入時,有些數(shù)據(jù)應為得不到重視而沒有被輸入對數(shù)據(jù)的改變沒有進行日志記載空缺值要經(jīng)過推斷而補上空缺值數(shù)據(jù)并不總是完整的51如何處理空缺值忽略元組:當類標號缺少時通常這么做(假定挖掘任務設計分類或描述),當每個屬性缺少值的百分比變化很大時,它的效果非常差。人工填寫空缺值:工作量大,可行性低使用一個全局變量填充空缺值:比如使用unknown或-∞使用屬性的平均值填充空缺值使用與給定元組屬同一類的所有樣本的平均值使用最可能的值填充空缺值:使用像Bayesian公式或判定樹這樣的基于推斷的方法如何處理空缺值忽略元組:當類標號缺少時通常這么做(假定挖掘任52噪聲數(shù)據(jù)噪聲:一個測量變量中的隨機錯誤或偏差引起不正確屬性值的原因數(shù)據(jù)收集工具的問題數(shù)據(jù)輸入錯誤數(shù)據(jù)傳輸錯誤技術限制命名規(guī)則的不一致其它需要數(shù)據(jù)清理的數(shù)據(jù)問題重復記錄不完整的數(shù)據(jù)不一致的數(shù)據(jù)噪聲數(shù)據(jù)噪聲:一個測量變量中的隨機錯誤或偏差53如何處理噪聲數(shù)據(jù)分箱(binning):首先排序數(shù)據(jù),并將他們分到等深的箱中然后可以按箱的平均值平滑、按箱中值平滑、按箱的邊界平滑等等聚類:監(jiān)測并且去除孤立點計算機和人工檢查結合計算機檢測可疑數(shù)據(jù),然后對它們進行人工判斷回歸通過讓數(shù)據(jù)適應回歸函數(shù)來平滑數(shù)據(jù)如何處理噪聲數(shù)據(jù)分箱(binning):54數(shù)據(jù)平滑的分箱方法price的排序后數(shù)據(jù)(單位:美元):4,8,15,21,21,24,25,28,34劃分為(等深的)箱:箱1:4,8,15箱2:21,21,24箱3:25,28,34用箱平均值平滑:箱1:9,9,9箱2:22,22,22箱3:29,29,29用箱邊界平滑:箱1:4,4,15箱2:21,21,24箱3:25,25,34數(shù)據(jù)平滑的分箱方法price的排序后數(shù)據(jù)(單位:美元):4,55聚類聚類56回歸xyy=x+1X1Y1Y1’回歸xyy=x+1X1Y1Y1’57數(shù)據(jù)集成數(shù)據(jù)集成:將多個數(shù)據(jù)源中的數(shù)據(jù)整合到一個一致的存儲中模式集成:整合不同數(shù)據(jù)源中的元數(shù)據(jù)實體識別問題:匹配來自不同數(shù)據(jù)源的現(xiàn)實世界的實體,比如:A.cust-id=B.customer_no檢測并解決數(shù)據(jù)值的沖突對現(xiàn)實世界中的同一實體,來自不同數(shù)據(jù)源的屬性值可能是不同的可能的原因:不同的數(shù)據(jù)表示,不同的度量等等數(shù)據(jù)集成數(shù)據(jù)集成:58處理數(shù)據(jù)集成中的冗余數(shù)據(jù)集成多個數(shù)據(jù)庫時,經(jīng)常會出現(xiàn)冗余數(shù)據(jù)同一屬性在不同的數(shù)據(jù)庫中會有不同的字段名一個屬性可以由另外一個表導出,如“年薪”有些冗余可以被相關分析檢測到仔細將多個數(shù)據(jù)源中的數(shù)據(jù)集成起來,能夠減少或避免結果數(shù)據(jù)中的冗余與不一致性,從而可以提高挖掘的速度和質量。處理數(shù)據(jù)集成中的冗余數(shù)據(jù)集成多個數(shù)據(jù)庫時,經(jīng)常會出現(xiàn)冗余數(shù)據(jù)59數(shù)據(jù)變換 平滑:去除數(shù)據(jù)中的噪聲聚集:匯總,數(shù)據(jù)立方體的構建數(shù)據(jù)概化:沿概念分層向上匯總規(guī)范化:將數(shù)據(jù)按比例縮放,使之落入一個小的特定區(qū)間最?。畲笠?guī)范化z-score規(guī)范化小數(shù)定標規(guī)范化屬性構造通過現(xiàn)有屬性構造新的屬性,并添加到屬性集中。數(shù)據(jù)變換 平滑:去除數(shù)據(jù)中的噪聲60數(shù)據(jù)變換——規(guī)范化最?。畲笠?guī)范化z-score規(guī)范化小數(shù)定標規(guī)范化其中,j是使Max(||)<1的最小整數(shù)數(shù)據(jù)變換——規(guī)范化最?。畲笠?guī)范化其中,j是使Max(|61數(shù)據(jù)歸約策略數(shù)據(jù)倉庫中往往存有海量數(shù)據(jù),在其上進行復雜的數(shù)據(jù)分析與挖掘需要很長的時間數(shù)據(jù)歸約數(shù)據(jù)歸約可以用來得到數(shù)據(jù)集的歸約表示,它小得多,但可以產(chǎn)生相同的(或幾乎相同的)分析結果數(shù)據(jù)歸約策略數(shù)據(jù)立方體聚集維歸約數(shù)據(jù)壓縮數(shù)值歸約離散化和概念分層產(chǎn)生用于數(shù)據(jù)歸約的時間不應當超過或“抵消”在歸約后的數(shù)據(jù)上挖掘節(jié)省的時間。數(shù)據(jù)歸約策略數(shù)據(jù)倉庫中往往存有海量數(shù)據(jù),在其上進行復雜的數(shù)據(jù)62數(shù)據(jù)立方體聚集最底層的方體對應于基本方體基本方體對應于感興趣的實體在數(shù)據(jù)立方體中存在著不同級別的匯總數(shù)據(jù)立方體可以看成方體的格每個較高層次的抽象將進一步減少結果數(shù)據(jù)數(shù)據(jù)立方體提供了對預計算的匯總數(shù)據(jù)的快速訪問使用與給定任務相關的最小方體在可能的情況下,對于匯總數(shù)據(jù)的查詢應當使用數(shù)據(jù)立方體數(shù)據(jù)立方體聚集最底層的方體對應于基本方體63維歸約通過刪除不相干的屬性或維減少數(shù)據(jù)量屬性子集選擇找出最小屬性集,使得數(shù)據(jù)類的概率分布盡可能的接近使用所有屬性的原分布減少出現(xiàn)在發(fā)現(xiàn)模式上的屬性的數(shù)目,使得模式更易于理解啟發(fā)式的(探索性的)方法逐步向前選擇逐步向后刪除向前選擇和向后刪除相結合判定歸納樹維歸約通過刪除不相干的屬性或維減少數(shù)據(jù)量64探索性選擇方法d個屬性有2d個可能的子集逐步向前選擇由空屬性集開始,選擇原屬性集中最好的屬性,并將其添加入該集合,重復該步驟。逐步向后刪除由整個屬性集開始,每一步都刪除掉尚在屬性集中的最壞屬性向前選擇和向后刪除相結合每一步選擇一個最好屬性,并刪除一個最壞屬性可以使用一個臨界值來判定上述三種方法的結束條件判定歸納樹探索性選擇方法d個屬性有2d個可能的子集65數(shù)據(jù)壓縮有損壓縮VS.無損壓縮字符串壓縮有廣泛的理論基礎和精妙的算法通常是無損壓縮在解壓縮前對字符串的操作非常有限音頻/視頻壓縮通常是有損壓縮,壓縮精度可以遞進選擇有時可以在不解壓整體數(shù)據(jù)的情況下,重構某個片斷兩種有損數(shù)據(jù)壓縮的方法:小波變換和主要成分分析數(shù)據(jù)壓縮有損壓縮VS.無損壓縮66數(shù)值歸約通過選擇替代的、較小的數(shù)據(jù)表示形式來減少數(shù)據(jù)量有參方法:使用一個參數(shù)模型估計數(shù)據(jù),最后只要存儲參數(shù)即可。線性回歸方法:Y=α+βX多元回歸:線性回歸的擴充對數(shù)線性模型:近似離散的多維數(shù)據(jù)概率分布無參方法:直方圖聚類選樣數(shù)值歸約通過選擇替代的、較小的數(shù)據(jù)表示形式來減少數(shù)據(jù)量67直方圖一種流行的數(shù)據(jù)歸約技術將某屬性的數(shù)據(jù)劃分為不相交的子集,或桶,桶中放置該值的出現(xiàn)頻率桶和屬性值的劃分規(guī)則等寬等深V-最優(yōu)MaxDiff直方圖一種流行的數(shù)據(jù)歸約技術68聚類將數(shù)據(jù)集劃分為聚類,然后通過聚類來表示數(shù)據(jù)集如果數(shù)據(jù)可以組成各種不同的聚類,則該技術非常有效,反之如果數(shù)據(jù)界線模糊,則方法無效數(shù)據(jù)可以分層聚類,并被存儲在多層索引樹中聚類的定義和算法都有很多選擇聚類將數(shù)據(jù)集劃分為聚類,然后通過聚類來表示數(shù)據(jù)集69選樣允許用數(shù)據(jù)的較小隨機樣本(子集)表示大的數(shù)據(jù)集對數(shù)據(jù)集D的樣本選擇:簡單隨機選擇n個樣本,不回放:由D的N個元組中抽取n個樣本簡單隨機選擇n個樣本,回放:過程同上,只是元組被抽取后,將被回放,可能再次被抽取聚類選樣:D中元組被分入M個互不相交的聚類中,可在其中的m個聚類上進行簡單隨機選擇(m<M)分層選樣:D被劃分為互不相交的“層”,則可通過對每一層的簡單隨機選樣得到D的分層選樣選樣允許用數(shù)據(jù)的較小隨機樣本(子集)表示大的數(shù)據(jù)集70離散化三種類型的屬性值:名稱型——e.g.無序集合中的值序數(shù)——e.g.有序集合中的值連續(xù)值——e.g.實數(shù)離散化將連續(xù)屬性的范圍劃分為區(qū)間有效的規(guī)約數(shù)據(jù)基于判定樹的分類挖掘基于判定樹的分類挖掘的大部分時間花在數(shù)據(jù)的分類和比較上(比如一個判定條件為:>400?,0-1000的整數(shù)將在比較1000次后得出結果,但是如果先將這1000個值劃分為10個區(qū)間:0-100,100-200…900-1000,則只要比較10次就可以得出結果)離散化的數(shù)值用于進一步分析離散化三種類型的屬性值:71離散化和概念分層離散化通過將屬性域劃分為區(qū)間,減少給定連續(xù)屬性值的個數(shù)。區(qū)間的標號可以代替實際的數(shù)據(jù)值。概念分層通過使用高層的概念(比如:青年、中年、老年)來替代底層的屬性值(比如:實際的年齡數(shù)據(jù)值)來規(guī)約數(shù)據(jù)概念分層后,數(shù)據(jù)的細節(jié)丟失了,但是概化后的數(shù)據(jù)更有意義,更容易解釋,而且所需的存儲空間更少。有效的減少I/O支出離散化和概念分層離散化72數(shù)據(jù)數(shù)值的離散化和概念分層生成分箱(binning)分箱技術遞歸的用于結果劃分,可以產(chǎn)生概念分層。分箱、遞歸的:比如將10,000個值,每個箱子中放10個,則可以將其規(guī)約為1000個值;如果要求將這10,000個值規(guī)約為10個概念,則只要將上述分箱方法遞歸的使用3次就可以了。直方圖分析(histogram)直方圖分析方法遞歸的應用于每一部分,可以自動產(chǎn)生多級概念分層。聚類分析將數(shù)據(jù)劃分成簇,每個簇形成同一個概念層上的一個節(jié)點,每個簇可再分成多個子簇,形成子節(jié)點?;陟氐碾x散化通過自然劃分分段數(shù)據(jù)數(shù)值的離散化和概念分層生成分箱(binning)73通過自然劃分分段將數(shù)值區(qū)域劃分為相對一致的、易于閱讀的、看上去更直觀或自然的區(qū)間。自然劃分的3-4-5規(guī)則:如果一個區(qū)間最高有效位上包含3,6,7或9個不同的值,就將該區(qū)間劃分為3個等寬子區(qū)間;如果一個區(qū)間最高有效位上包含2,4,或8個不同的值,就將該區(qū)間劃分為4個等寬子區(qū)間;如果一個區(qū)間最高有效位上包含1,5,或10個不同的值,就將該區(qū)間劃分為5個等寬子區(qū)間;將該規(guī)則遞歸的應用于每個子區(qū)間對于數(shù)據(jù)集中出現(xiàn)的最大值和最小值的極端分布,為了避免上述方法出現(xiàn)的結果扭曲,可以在頂層分段時,選用一個大部分的概率空間。e.g.5%-95%比如年收入最低的可能時5,000,最高的可能是50萬,如果之間進行區(qū)間劃分,就會將頂層劃分為5個分段(每10萬1個),但是95%以上的人他們的收入都是集中在【10,000~100,000】的范圍,也就是說都集中在第一段,這樣的分段就會引起結果的扭曲…通過自然劃分分段將數(shù)值區(qū)域劃分為相對一致的、易于閱讀的、看上74分類數(shù)據(jù)的概念分層生成分類數(shù)據(jù)是指無序的離散數(shù)據(jù),它有有限個值(可能很多個)。分類數(shù)據(jù)的概念分層生成方法:由用戶或專家在模式級顯式的說明屬性的部分序。通過顯示數(shù)據(jù)分組說明分層結構的一部分。說明屬性集,但不說明它們的偏序,然后系統(tǒng)根據(jù)算法自動產(chǎn)生屬性的序,構造有意義的概念分層。對只說明部分屬性集的情況,則可根據(jù)數(shù)據(jù)庫模式中的數(shù)據(jù)語義定義對屬性的捆綁信息,來恢復相關的屬性。分類數(shù)據(jù)的概念分層生成分類數(shù)據(jù)是指無序的離散數(shù)據(jù),它有有限個75屬性集的規(guī)格根據(jù)在給定屬性集中,每個屬性所包含的不同值的個數(shù),可以自動的生成概念分成;不同值個數(shù)最多的屬性將被放在概念分層的最底層。越底層的屬性集將有越多的不同值跟它相對應,而越高層的屬性值將有越少的不同值跟它相對應。因為底層屬性的值要通過匯總才可以生成高層屬性的值,而匯總就意味著不同值個數(shù)的減少。countryprovincecitystreet5個不同值65個不同值3567個不同值674,339個不同值屬性集的規(guī)格根據(jù)在給定屬性集中,每個屬性所包含的不同值的個數(shù)76數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術77數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術什么是數(shù)據(jù)倉庫?多維數(shù)據(jù)模型數(shù)據(jù)倉庫的體系結構數(shù)據(jù)倉庫實現(xiàn)數(shù)據(jù)立方體技術的進一步發(fā)展從數(shù)據(jù)倉庫到數(shù)據(jù)挖掘數(shù)據(jù)倉庫和數(shù)據(jù)挖掘的OLAP技術什么是數(shù)據(jù)倉庫?78什么是數(shù)據(jù)倉庫?數(shù)據(jù)倉庫的定義很多,但卻很難有一種嚴格的定義它是一個提供決策支持功能的數(shù)據(jù)庫,它與公司的操作數(shù)據(jù)庫分開維護。為統(tǒng)一的歷史數(shù)據(jù)分析提供堅實的平臺,對信息處理提供支持“數(shù)據(jù)倉庫是一個面向主題的、集成的、隨時間而變化的、不容易丟失的數(shù)據(jù)集合,支持管理部門的決策過程.”—W.H.Inmon(數(shù)據(jù)倉庫構造方面的領頭設計師)建立數(shù)據(jù)倉庫(datawarehousing):構造和使用數(shù)據(jù)倉庫的過程。什么是數(shù)據(jù)倉庫?數(shù)據(jù)倉庫的定義很多,但卻很難有一種嚴格的定義79數(shù)據(jù)倉庫關鍵特征一——面向主題圍繞一些主題,如顧客、供應商、產(chǎn)品等關注決策者的數(shù)據(jù)建模與分析,而不是集中于組織機構的日常操作和事務處理。排除對于決策無用的數(shù)據(jù),提供特定主題的簡明視圖。數(shù)據(jù)倉庫關鍵特征一——面向主題圍繞一些主題,如顧客、供應商、80數(shù)據(jù)倉庫關鍵特征二——數(shù)據(jù)集成一個數(shù)據(jù)倉庫是通過集成多個異種數(shù)據(jù)源來構造的。關系數(shù)據(jù)庫,一般文件,聯(lián)機事務處理記錄使用數(shù)據(jù)清理和數(shù)據(jù)集成技術。確保命名約定、編碼結構、屬性度量等的一致性。當數(shù)據(jù)被移到數(shù)據(jù)倉庫時,它們要經(jīng)過轉化。數(shù)據(jù)倉庫關鍵特征二——數(shù)據(jù)集成一個數(shù)據(jù)倉庫是通過集成多個異種81數(shù)據(jù)倉庫關鍵特征三——隨時間而變化數(shù)據(jù)倉庫的時間范圍比操作數(shù)據(jù)庫系統(tǒng)要長的多。操作數(shù)據(jù)庫系統(tǒng):主要保存當前數(shù)據(jù)。數(shù)據(jù)倉庫:從歷史的角度提供信息(比如過去5-10年)數(shù)據(jù)倉庫中的每一個關鍵結構都隱式或顯式地包含時間元素,而操作數(shù)據(jù)庫中的關鍵結構可能就不包括時間元素。數(shù)據(jù)倉庫關鍵特征三——隨時間而變化數(shù)據(jù)倉庫的時間范圍比操作數(shù)82數(shù)據(jù)倉庫關鍵特征四——數(shù)據(jù)不易丟失盡管數(shù)據(jù)倉庫中的數(shù)據(jù)來自于操作數(shù)據(jù)庫,但他們卻是在物理上分離保存的。操作數(shù)據(jù)庫的更新操作不會出現(xiàn)在數(shù)據(jù)倉庫環(huán)境下。不需要事務處理,恢復,和并發(fā)控制等機制只需要兩種數(shù)據(jù)訪問:數(shù)據(jù)的初始轉載和數(shù)據(jù)訪問(讀操作)數(shù)據(jù)倉庫關鍵特征四——數(shù)據(jù)不易丟失盡管數(shù)據(jù)倉庫中的數(shù)據(jù)來自于83數(shù)據(jù)倉庫與異種數(shù)據(jù)庫集成傳統(tǒng)的異種數(shù)據(jù)庫集成:在多個異種數(shù)據(jù)庫上建立包裝程序(wrappers)和中介程序(mediators)查詢驅動方法——當從客戶端傳過來一個查詢時,首先使用元數(shù)據(jù)字典將查詢轉換成相應異種數(shù)據(jù)庫上的查詢;然后,將這些查詢映射和發(fā)送到局部查詢處理器缺點:復雜的信息過慮和集成處理,競爭資源數(shù)據(jù)倉庫:更新驅動將來自多個異種源的信息預先集成,并存儲在數(shù)據(jù)倉庫中,供直接查詢和分析高性能數(shù)據(jù)倉庫與異種數(shù)據(jù)庫集成傳統(tǒng)的異種數(shù)據(jù)庫集成:84數(shù)據(jù)倉庫與操作數(shù)據(jù)庫系統(tǒng)操作數(shù)據(jù)庫系統(tǒng)的主要任務是聯(lián)機事務處理OLTP日常操作:購買,庫存,銀行,制造,工資,注冊,記帳等數(shù)據(jù)倉庫的主要任務是聯(lián)機分析處理OLAP數(shù)據(jù)分析和決策OLTP和OLAP的主要區(qū)別:用戶和系統(tǒng)的面向性:顧客VS.市場數(shù)據(jù)內(nèi)容:當前的、詳細的數(shù)據(jù)VS.歷史的、匯總的數(shù)據(jù)數(shù)據(jù)庫設計:實體-聯(lián)系模型(ER)和面向應用的數(shù)據(jù)庫設計VS.星型/雪花模型和面向主題的數(shù)據(jù)庫設計視圖:當前的、企業(yè)內(nèi)部的數(shù)據(jù)VS.經(jīng)過演化的、集成的數(shù)據(jù)訪問模式:事務操作VS.只讀查詢(但很多是復雜的查詢)數(shù)據(jù)倉庫與操作數(shù)據(jù)庫系統(tǒng)操作數(shù)據(jù)庫系統(tǒng)的主要任務是聯(lián)機事務處85OLTP系統(tǒng)和OLAP系統(tǒng)的比較特征OLTPOLAP任務特點操作處理信息處理面向事務分析用戶辦事員、DBA、數(shù)據(jù)庫專業(yè)人員經(jīng)理、主管、數(shù)據(jù)分析員功能日常操作長期信息分析、決策支持DB設計基于E-R,面向應用星型/雪花,面向主體數(shù)據(jù)最新的、詳細的歷史的、匯總的視圖詳細的、二維關系型匯總的、多維的任務單位簡短的事務復雜的查詢訪問數(shù)據(jù)量數(shù)十個數(shù)百萬個用戶數(shù)數(shù)千個數(shù)百個DB規(guī)模100M-數(shù)GB100GB-數(shù)TB優(yōu)先性高性能、高可用性高靈活性、端點用戶自治度量事務吞吐量查詢吞吐量、響應時間OLTP系統(tǒng)和OLAP系統(tǒng)的比較特征OLTPOLAP任務特點86為什么需要一個分離的數(shù)據(jù)倉庫?提高兩個系統(tǒng)的性能DBMS是為OLTP而設計的:存儲方式,索引,并發(fā)控制,恢復數(shù)據(jù)倉庫是為OLAP而設計:復雜的OLAP查詢,多維視圖,匯總不同的功能和不同的數(shù)據(jù):歷史數(shù)據(jù):決策支持需要歷史數(shù)據(jù),而這些數(shù)據(jù)在操作數(shù)據(jù)庫中一般不會去維護數(shù)據(jù)匯總:決策支持需要將來自異種源的數(shù)據(jù)統(tǒng)一(如聚集和匯總)數(shù)據(jù)質量:不同的源使用不一致的數(shù)據(jù)表示、編碼和格式,對這些數(shù)據(jù)進行有效的分析需要將他們轉化后進行集成為什么需要一個分離的數(shù)據(jù)倉庫?提高兩個系統(tǒng)的性能87從關系表和電子表格到數(shù)據(jù)立方體數(shù)據(jù)倉庫和數(shù)據(jù)倉庫技術基于多維數(shù)據(jù)模型。這個模型把數(shù)據(jù)看作是數(shù)據(jù)立方體形式。多維數(shù)據(jù)模型圍繞中心主題組織,該主題用事實表表示。事實是數(shù)值度量的。數(shù)據(jù)立方體允許以多維數(shù)據(jù)建模和觀察。它由維和事實定義。維是關于一個組織想要記錄的視角或觀點。每個維都有一個表與之相關聯(lián),稱為維表。事實表包括事實的名稱或度量以及每個相關維表的關鍵字在數(shù)據(jù)倉庫的研究文獻中,一個n維的數(shù)據(jù)的立方體叫做基本方體。給定一個維的集合,我們可以構造一個方體的格,每個都在不同的匯總級或不同的數(shù)據(jù)子集顯示數(shù)據(jù),方體的格稱為數(shù)據(jù)立方體。0維方體存放最高層的匯總,稱作頂點方體;而存放最底層匯總的方體則稱為基本方體。教科書第31頁從關系表和電子表格到數(shù)據(jù)立方體數(shù)據(jù)倉庫和數(shù)據(jù)倉庫技術基于多維88數(shù)據(jù)立方體——一個方體的格alltimeitemlocationsuppliertime,itemtime,locationtime,supplieritem,locationitem,supplierlocation,suppliertime,item,locationtime,item,suppliertime,location,supplieritem,location,suppliertime,item,location,supplier0-D(apex)cuboid1-Dcuboids2-Dcuboids3-Dcuboids4-D(base)cuboid數(shù)據(jù)立方體——一個方體的格alltimeitemlocati89數(shù)據(jù)倉庫的概念模型最流行的數(shù)據(jù)倉庫概念模型是多維數(shù)據(jù)模型。這種模型可以以星型模式、雪花模式、或事實星座模式的形式存在。星型模式(Starschema):事實表在中心,周圍圍繞地連接著維表(每維一個),事實表含有大量數(shù)據(jù),沒有冗余。雪花模式(Snowflakeschema):是星型模式的變種,其中某些維表是規(guī)范化的,因而把數(shù)據(jù)進一步分解到附加表中。結果,模式圖形成類似于雪花的形狀。事實星座(Factconstellations):多個事實表共享維表,這種模式可以看作星型模式集,因此稱為星系模式(galaxyschema),或者事實星座(factconstellation)數(shù)據(jù)倉庫的概念模型最流行的數(shù)據(jù)倉庫概念模型是多維數(shù)據(jù)模型。這90星型模式實例

time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcitystate_or_provincecountrylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranch星型模式實例time_keytimelocation_91雪花模式實例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcity_keylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_keyitembranch_keybranch_namebranch_typebranchsupplier_keysupplier_typesuppliercity_keycitystate_or_provincecountrycity雪花模式實例time_keytimelocation_key92事實星座模式實例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcityprovince_or_statecountrylocationSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranchShippingFactTabletime_keyitem_keyshipper_keyfrom_locationto_locationdollars_costunits_shippedshipper_keyshipper_namelocation_keyshipper_typeshipper事實星座模式實例time_keytimelocation_k93一種數(shù)據(jù)挖掘查詢語言:DMQLDMQL首先包括定義數(shù)據(jù)倉庫和數(shù)據(jù)集市的語言原語,這包括兩種原語定義:一種是立方體定義,一種是維定義立方體定義(事實表)definecube<cube_name>[<dimension_list>]:<measure_list>維定義(維表)definedimension<dimension_name>as(<attribute_or_subdimension_list>)特殊案例(共享維表的定義)第一次作為維表定義“cubedefinition”然后:definedimension<dimension_name>as<dimension_name_first_time>incube<cube_name_first_time>一種數(shù)據(jù)挖掘查詢語言:DMQLDMQL首先包括定義數(shù)據(jù)倉庫94實例:使用DMQL定義星型模式definecubesales_star[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier_type)definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city,province_or_state,country)實例:使用DMQL定義星型模式definecubesal95實例:使用DMQL定義雪花模式definecubesales_snowflake[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier(supplier_key,supplier_type))definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city(city_key,province_or_state,country))實例:使用DMQL定義雪花模式definecubesal96度量的分類一個數(shù)據(jù)立方體的度量是一個數(shù)值函數(shù),該函數(shù)可以對數(shù)據(jù)立方體的每一個點求值。度量可以根據(jù)其所用的聚集函數(shù)分為三類:分布的(distributive):將函數(shù)用于n個聚集值得到的結果和將函數(shù)用于所有數(shù)據(jù)得到的結果一樣。比如:count(),sum(),min(),max()等代數(shù)的(algebraic):函數(shù)可以由一個帶M個參數(shù)的代數(shù)函數(shù)計算(M為有界整數(shù)),而每個參數(shù)值都可以有一個分布的聚集函數(shù)求得。比如:avg(),min_N(),standard_deviation()整體的(holistic):描述函數(shù)的子聚集所需的存儲沒有一個常數(shù)界。比如:median(),mode(),rank()度量的分類一個數(shù)據(jù)立方體的度量是一個數(shù)值函數(shù),該函數(shù)可以對數(shù)97概念分層:location維的一個概念分層allEuropeNorth_AmericaMexicoCanadaSpainGermanyVancouverM.WindL.Chan..................allregionofficecountryTorontoFrankfurtcity概念分層:location維的一個概念分層allEurope98多維數(shù)據(jù)模型上的OLAP操作上卷(roll-up):匯總數(shù)據(jù)通過一個維的概念分層向上攀升或者通過維規(guī)約下鉆(drill-down):上卷的逆操作由不太詳細的數(shù)據(jù)到更詳細的數(shù)據(jù),可以通過沿維的概念分層向下或引入新的維來實現(xiàn)切片和切塊(sliceanddice)投影和選擇操作轉軸(pivot)立方體的重定位,可視化,或將一個3維立方體轉化維一個2維平面序列其他OLAP操作鉆過(drill_across):執(zhí)行涉及多個事實表的查詢鉆透(drill_through):使用關系SQL機制,鉆到數(shù)據(jù)立方體的底層,到后端關系表多維數(shù)據(jù)模型上的OLAP操作上卷(roll-up):匯總數(shù)據(jù)99數(shù)據(jù)倉庫設計:一個商務分析框架數(shù)據(jù)倉庫設計中必須考慮的四種視圖自頂向下視圖允許我們選擇數(shù)據(jù)倉庫所需的相關信息,這些信息能夠滿足當前和未來商務的需求。數(shù)據(jù)源視圖揭示被操作數(shù)據(jù)庫系統(tǒng)所捕獲、存儲和管理的信息數(shù)據(jù)倉庫視圖有事實表和維表所組成,提供存放在數(shù)據(jù)倉庫內(nèi)部的信息,包括預先計算的綜合與技術,以及關于源、日期和源時間等信息商務查詢視圖從最終用戶的角度透視數(shù)據(jù)倉庫中的數(shù)據(jù)數(shù)據(jù)倉庫設計:一個商務分析框架數(shù)據(jù)倉庫設計中必須考慮的四種視100數(shù)據(jù)倉庫的設計過程(P43)自頂向下法、自底向上法或者兩者的混合方法自頂向下法:由總體設計和規(guī)劃開始(成熟)自底向上法:以實驗和原型開始(快速)從軟件過程的觀點瀑布式方法:在進行下一步前,每一步都進行結構化和系統(tǒng)的分析螺旋式方法:功能漸增的系統(tǒng)的快速產(chǎn)生,相繼版本之間間隔很短典型的數(shù)據(jù)倉庫設計過程選取待建模的商務過程選取商務過程的粒度選取用于每個事實表記錄的維選取將安放在事實表中的度量數(shù)據(jù)倉庫的設計過程(P43)自頂向下法、自底向上法或者兩者的101三層數(shù)據(jù)倉庫架構DataWarehouseExtractTransformLoadRefreshOLAP服務器AnalysisQueryReportsDataminingMonitor&IntegratorMetadata數(shù)據(jù)源前端工具ServeDataMartsOperational

DBsothersources數(shù)據(jù)倉庫服務器OLAPServer三層數(shù)據(jù)倉庫架構DataExtractOLAP服務器Anal102三種數(shù)據(jù)倉庫模型(從結構的角度)企業(yè)倉庫搜集關于跨越整個組織的主題的所有信息,來自一個或多個操作的系統(tǒng),跨功能的。數(shù)據(jù)集市企業(yè)范圍數(shù)據(jù)的一個子集,對于特定的客戶是有用的。其范圍限于選定的主題,比如一個商場的數(shù)據(jù)集市獨立的數(shù)據(jù)集市VS.非獨立的數(shù)據(jù)集市(數(shù)據(jù)來自于企業(yè)數(shù)據(jù)倉庫)虛擬倉庫操作數(shù)據(jù)庫上的一系列視圖只有一些可能的匯總視圖被物化三種數(shù)據(jù)倉庫模型(從結構的角度)企業(yè)倉庫103數(shù)據(jù)倉庫開發(fā)自頂向下開發(fā):一種系統(tǒng)的而解決方法,并能最大限度地減少集成問題。但費用高,長時間開發(fā),缺乏靈活性,因為整個組織的共同數(shù)據(jù)模型達到一致是困難的。自底向上:設計、開發(fā)、部署獨立的數(shù)據(jù)集市方法提供了靈活性、低花費,并能快速回報投資。然后,將分散的數(shù)據(jù)集市集成,形成一個一致的企業(yè)數(shù)據(jù)倉庫時,可能導致問題。數(shù)據(jù)倉庫開發(fā)自頂向下開發(fā):一種系統(tǒng)的而解決方法,并能最大限度104數(shù)據(jù)倉庫開發(fā)——一個推薦的方法定義高層數(shù)據(jù)模型數(shù)據(jù)集市數(shù)據(jù)集市分布式數(shù)據(jù)集市多層數(shù)據(jù)倉庫企業(yè)數(shù)據(jù)倉庫模型提煉模型提煉數(shù)據(jù)倉庫開發(fā)——一個推薦的方法定義高層數(shù)據(jù)模型數(shù)據(jù)集市數(shù)據(jù)集105OLAP服務器類型關系OLAP服務器(ROLAP)使用關系數(shù)據(jù)庫或擴展的關系數(shù)據(jù)庫存放并管理數(shù)據(jù)倉庫的數(shù)據(jù),而用OLAP中間件支持其余部分包括每個DBMS后端優(yōu)化,聚集導航邏輯的實現(xiàn),附加的工具和服務較大的可擴展性多維OLAP服務器(MOLAP)基于數(shù)組的多維存儲引擎(稀疏矩陣技術)能對預計算的匯總數(shù)據(jù)快速索引混合OLAP服務器(HOLAP)結合上述兩種技術,更大的使用靈活性特殊的SQL服務器在星型和雪花模型上支持SQL查詢OLAP服務器類型關系OLAP服務器(ROLAP)106數(shù)據(jù)倉庫的實現(xiàn)難點海量數(shù)據(jù)快速反應OLAP服務器要在幾秒內(nèi)響應決策支持查詢方法高效的數(shù)據(jù)立方體計算技術高效的存取方法高效的查詢處理技術數(shù)據(jù)倉庫的實現(xiàn)難點107數(shù)據(jù)立方體的有效計算數(shù)據(jù)立方體可以被看成是一個方體的格最底層的方體是基本方體最頂端的方體(頂點)只包含一個單元的值一個n維的數(shù)據(jù)立方體,每維Li層,可能產(chǎn)生的方體總數(shù)是多少?數(shù)據(jù)立方體的物化(materialization)預先計算所有方體(全物化):需要海量存儲空間,存放預先計算的方體不預先計算任何“非基本”方體(不物化),在運行時計算昂貴的多維聚集,可能很慢有選擇的計算一個所有方體的適當子集(部分物化):相應時間和存儲空間的折中。確定物化哪些方體考慮工作負荷下的查詢、它們的頻率和它們的開銷等等數(shù)據(jù)立方體的有效計算數(shù)據(jù)立方體可以被看成是一個方體的格108方體的操作DMQL中的方體定義和計算definecubesales[item,city,year]:sum(sales_in_dollars)computecubesales上述的computecube子句可以轉化為一個類似于SQL的語句SELECTitem,city,year,SUM(amount)

溫馨提示

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

評論

0/150

提交評論