资料仓储的OLAP操作方法_第1页
资料仓储的OLAP操作方法_第2页
资料仓储的OLAP操作方法_第3页
资料仓储的OLAP操作方法_第4页
资料仓储的OLAP操作方法_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2025/3/5DataMining1Chapter2資料探勘中的資料倉儲和OLAP技術

從交易性資料到分析用資料2025/3/5DataMining2操作型資料庫系統在業界廣為應用的資料庫軟體,常用到的功能不外乎為執行線上交易或是查詢處理,因而也稱為線上交易處理系統〔On-LineTransactionProcessing,OLTP〕線上交易處理系統,最主要在提供企業平日的所有交易紀錄之存取,因此,其資料庫又稱為操作型資料庫〔OperationalDatabase〕2025/3/5DataMining3

何謂資料倉儲(1/3)資料倉儲〔datawarehouse〕乃是利用儲存大量歷史資料之資料庫,提供彙總或是統計的資訊,以支援決策之使用。例一:在賣場超市透過收銀機的條碼掃描,客戶購買的每一種商品都會記錄到資料庫之中,但是傳統資料庫的設計,並不能有效地答复經營者所關心的問題。例如商品甲銷售量的增加,是否會同時帶動商品乙的銷售?用那一種商品來促銷,最能提振業績?2025/3/5DataMining4何謂資料倉儲(2/3)例二:亞瑪遜網站每當客戶購買一本書,它就主動推薦其他相關書籍供客戶參考,所推薦的書籍是根據過去許許多多客戶購買書籍的交易資料裡,探勘出那些書籍是具有強烈的關連性。這種推薦是由電腦在資料倉儲內經資料探勘所挖掘出來的,可以完全自動處理,不須假手人工,不過先決條件就是必須先建立好資料倉儲與資料探勘等系統。

2025/3/5DataMining5何謂資料倉儲(3/3)目前企業大都面臨到一個問題,就是現行營運用的電腦系統並不是針對資料探勘分析而設計的,因此當上級需要一些決策的資訊時,資訊部門常常無法即時提供相關的資訊,協助主管做有效的決策判斷。資料倉儲的誕生就是為了答复主管所關切的決策問題,建置過程首先從各分公司或是分店收集資料,經過資料清理〔例如:去掉不需要的瑣碎資料、補足缺失的資料等〕、資料轉換〔例如:轉換成一致單位或是格式〕、資料整合〔例如:整合不同來源的資料〕、資料載入〔例如建立資料立方體:datacube〕和定期資料更新,最後建置一套資料倉儲系統。6

資料倉儲的建置過程資料倉儲的建置過程:收集資料資料整理資料整合資料載入和

定期資料更新2025/3/5DataMining7資料來源資料倉儲的資料來源是由日常運作的資料庫系統所收集而來,例如:賣場或是連鎖店的每一筆交易資料電子商務網站所記錄的交易資料信用卡銀行記錄持卡人的消費行為人力資源網站記錄媒介結果入口網站記錄瀏覽路徑、畫面、停留時間電話公司記錄通話的型態與時間網路學習網站收集學習者的學習行為2025/3/5DataMining8

線上分析處理與資料探勘(1/2)資料倉儲根本上只是一個存放大量彙總資料的後端儲存體,還必須配合前端的運用才能顯示出它的價值,而線上分析處理〔OLAP:On-LineAnalyticalProcessing〕與資料探勘〔datamining〕則是兩個最常使用的應用。線上分析處理可將資料倉儲的資料加以整理、彙總。使用者有資訊上的需求時,不需撰寫程式,就能夠以不同的主題和角度,經由線上分析處理的瀏覽工具快速查出各種資料。2025/3/5DataMining9線上分析處理與資料探勘(2/2)資料探勘與線上分析處理的不同之處,在於線上分析處理主要是原原本本的呈現出使用者查詢的結果,而結果的解讀將由使用者自行加以判斷。資料探勘則能夠更進一步利用統計、機器學習等方法將資料再分析,探勘出新且有用的知識,在資料的運用上更勝於線上分析處理。

2025/3/5DataMining10線上分析處理與資料探勘的不同點線上分析處理資料探勘多少人曾購買筆記型電腦?哪些顧客可能會購買筆記型電腦?上個月有多少顧客沒有進入網站瀏覽商品?哪些顧客較有可能在未來三個月內不上站瀏覽商品?顧客的平均單月消費總金額是多少?哪些顧客下個月的消費有可能會超過一萬元?哪些顧客訂單超過三天未付款?哪些顧客較有可能延遲付款?電子報的點閱率多少?電子報行銷方式對那些會員較有效?去年的銷售業績統計報表明年預期之銷售業績額度。2025/3/5DataMining11從資料倉儲到資料探勘線上分析處理(OLAP)資料探勘廣告郵件顧客回覆率哪些顧客較容易回覆公司廣告郵件新產品的客戶銷售量何種類型的客戶較有傾向購買新產品公司年度十大客戶公司年度獲利最高十大客戶哪些客戶未續約哪些客戶可能在三個月內不再續約哪些客戶貸款逾期未還貸款逾期未還的客戶屬性前一季的地區銷售報告下一季各地區可能的銷售收入上週生產線的不良率如何提昇產品的良率2025/3/5DataMining12

相關名詞定義資料集合(dataset)、資料表(table):資料集合通常是指收集並儲存於資料庫或資料倉儲中的資料,而為了更容易存取這些資料,資料庫或資料倉儲通常會利用各個資料表來記錄各種層面的資料。例如會員資料表用來記錄會員的根本資料。資料維度(dimension):資料集合會利用有限的屬性或特徵(attribute)來描述所包含的資料,稱之為資料維度。例如:會員資料表通常會記錄會員的姓名、電話、地址、生日、教育程度等等,來描述每一個會員,因此姓名、電話、地址、生日、教育程度即是會員資料表的資料維度。2025/3/5DataMining13相關名詞定義資料數值(value):每一資料維度會有一相對應的值域(domain),而值域中所有可能的值即所謂的資料數值。例如:教育程度此資料維度中所可能包含之資料數值為〝國中以下〞、〝國中〞、〝高中/職〞、〝大學/大專〞和〝研究所〞。資料紀錄(record):

根據資料維度所描述之每一資料數值的集合。2025/3/5DataMining14資料倉儲的特性

整合的資料:將不同來源的資料以一致的命名方式、度量單位、統一格式等加以整合儲存,以利未來使用者的存取。例如將所有的日期資料都轉成使用單一的格式;意義相同,但來源不同的資料,可能使用不同的名稱、度量,在輸入到資料倉儲之前就需先加以統一。

主題導向的資料:在將資料轉移至資料倉儲時,就必須將未來分析時所不需要的資料濾除,使資料倉儲只存放與分析主題相關的資料。

2025/3/5DataMining15資料倉儲的特性歷史性資料:資料倉儲主要是提供過去某個時期的運作狀態,例如過去三年、五年,或是最近半年的銷售金額、獲利率等資訊,藉此分析、幫助決策,決定未來企業應採取的策略。唯讀的資料:當我們將資料轉移到資料倉儲後,應當就不需再做什麼變動,除非是輸入錯誤的資料。由於存放的是歷史性的資料,所以不需更新,頂多只需定期参加新資料,或是移出局部老舊的資料。所以資料倉儲主要是在提供資料快速彙總與查詢的功能,而不在於資料修改的功能。2025/3/5DataMining16資料倉儲與一般資料庫的差異

資料倉儲典型的代表就是OLAP系統,一般資料庫最正确的代表就是OLTP〔On-LineTransactionProcessing〕。2025/3/5DataMining17

OLTP與

OLAP特性比較

比較特性OLTP系統特性OLAP系統特性功能需求針對企業現行業務的自動化而設計針對企業資料分析需求而設計資料類別資料比較偏重細節資料偏重彙總或是統計資訊異動頻率資料隨時可被新增、刪除以及變更歷史性的資料,異動機會少設計方式資料庫設計採用正規化設計為了執行效率不採用正規設計儲存方式使用關聯式資料庫架構存資料使用多維度資料庫結構完整性資料未整理過,可能缺失或是不一致資料經過整理較一致、完整2025/3/5DataMining18資料倉儲的種類(1/2)

資料倉儲:這是一般典型的資料倉儲解決方案,首先分析未來決策支援的需求,所有的資料依照需求而加以整理、轉換至資料倉儲之中。建置方式是以整個公司的需求來建構的,以便讓決策者能從資料倉儲中取得所有決策資訊,像是公司整體的業績、各分店的績效等等。資料超市〔datamart〕:通常是指規模較小、只針對某些特定主題或是部門而設計的資料倉儲。2025/3/5DataMining19資料倉儲的種類(2/2)多層次資料倉儲:指的是前面兩者組合的一種應用方式,最上層的資料倉儲將資料提供給下層的資料超市,資料倉儲的組織有層次架構。

聯合式資料倉儲:指的是整個資料倉儲系統是由多個獨立的資料倉儲、資料超市或是多層次資料倉儲組合完成,但是能夠提供單一的介面供使用者使用,使用者不需知道資料究竟來自那一個資料倉儲。

VirtualDataWarehouse2025/3/5DataMining20

資料倉儲的儲存架構一般常用的儲存架構在邏輯設計上稱為多維度資料庫結構〔multidimensionaldatabasestructure〕,但是實際的儲存實體結構可以是關聯式資料庫,或是【多維度資料立方體】〔multidimensionaldatacube〕,或是兩者混合的結構。存放在多維度資料庫結構的資料稱為【資料立方體】〔datacube〕,它是由【維度】〔dimensions〕與【事實】〔facts〕組合而成。資料立方體提供了資料的多維度觀察,並允許事先計算好彙總值以便將來快速存取彙總的資料。2025/3/5DataMining21資料立方體的呈現方式

年度(z軸)2004筆記型2003IBM伺服器型Acer款式(y軸)廠牌(x軸)桌上型年度和廠牌年度和款式廠牌和款式加總cell2025/3/5DataMining22

範例一假設有一購物網站已經建置一個資料倉儲系統,主要作為銷售金額的分析資料時間範圍從

2001~2003總共三年。將全省客戶依照地理區域分為北、中、南三區,北部包含台北、桃園與新竹;中部包含台中、彰化與南投;南部包含嘉義、台南與高雄。販售商品分成食品、五金、服飾三大類,食品類又分成肉類、餅乾、罐頭三小類;五金再分成汽車、建材、衛浴三小類;服飾類又分成女裝、男裝、童裝三小類。2025/3/5DataMining23多維度立方體示意圖

2025/3/5DataMining24多維度立方體示意圖說明資料立方體總共有三個維度,垂直的維度代表時間、橫軸的維度代表商品類別,最後一個客戶區域維度代表客戶所在的區域與縣市。維度上的單位或是階層將立方體劃分成許多小【單元】〔cell,例如以年、季、月來刻畫時間維度,而三者又有階層關係〕,每個小單元則存放某個彙總的【量值】〔measure〕,在本例中所存放的量值就是銷售金額。例如左上角的單元,代表2003年第四季,食品賣給北部客戶總共金額是300,000元,它被存放在〔2003Q4,食品,北部〕的座標單元之內。2025/3/5DataMining25資料倉儲的OLAP操作方法

刻畫維度的單位可以設計成有階層關係存在,稱之為【概念階層】〔concepthierarchy〕。例如在時間維度,階層關係是年、季、月、日;商品維度的階層關係是商品類別、商品次類別、商品。每一較高的階層會包含數個層次較低的階層,可以利用類似拉近、拉遠〔zoomin/out〕的方式快速瀏覽各階層的彙總資料。而較高層次的彙總資料則可以由較低的階層之彙總資料快速組合而成,這也是資料倉儲可以快速答复查詢的原因之一。2025/3/5DataMining26資料倉儲的操作方法(下鑽)下鑽(drill-down)方法讓使用者可以更深入一層瀏覽彙總資料。例一:想要進一步瞭解

2003Q4內每個月的銷售情況,則可以在時間維度利用下鑽操作,看到

2003年

10~12月的銷售金額。

2025/3/5DataMining27資料倉儲的操作方法(下鑽)例二:在商品維度使用下鑽操作,去細看食品類別裡的肉類、餅乾與罐頭三個小類分別的銷售金額。2025/3/5DataMining28資料倉儲的操作方法(上捲)上捲(roll-up)方法讓使用者提高觀看的層次,去瞭解更概觀的情況。例一:想知道每年的銷售金額〔不需要細分到季〕,透過時間維度的上捲操作,將看到更高層級的彙總資料。食品五金服飾2025/3/5DataMining29資料倉儲的操作方法(上捲)例二:只希望看到每年北、中、南三地區客戶購買的總銷售金額〔不需要細分商品類別〕,同樣利用商品維度的上捲操作,將看到更高一層的統計資料。2025/3/5DataMining30資料倉儲的操作方法(切片)切片(slice)方法是在單一維度上進行條件設定與資料選擇,進而產生出一個子立方體,讓使用者能夠切割某一層面的資料。

例一:主管只想看北部客戶的購買情況,就可以利用切片操作,將只包含北部的資料切割出來。2025/3/5DataMining31資料倉儲的操作方法(切片)例二:只想看最近一年

2003的資料,同樣利用切片操作,切割出

2003年的資料。2025/3/5DataMining32資料倉儲的操作方法(切塊)切塊〔dice〕方法是對多個維度進行條件設定的資料選擇,進而產生一個子立方體。例如主管只想看北部客戶在2003年的購買情況,則可以利用客戶區域維度與時間維度切塊方式切出子立方體。2025/3/5DataMining33資料倉儲的操作方法(轉軸)轉軸〔pivot〕〔又稱旋轉:rotate〕方法讓使用者可以轉動2D切片或是3D的立方體,從不同的視角來觀看資料。例如將前頁圖之子立方體做一90度的旋轉。食品五金服飾Q12003Q22003Q32003Q4北部客戶140,000260,000280,000300,000140,000160,000180,000200,00040,00060,00080,000100,000140,000260,000280,000300,0002025/3/5DataMining34資料倉儲的查詢處理(1/5)資料倉儲根本上是建立在一個多維度資料庫結構上的一個儲存體,而多維度資料分析的核心是如何有效率的計算出多個維度集合上的統計值〔例如2003年每一季,每個區域服飾的銷售金額〕,以支援快速查詢之用。假设是使用一般關聯式資料庫,就是利用「groupby」語法來求得這些統計值〔groupby季、分店、服飾〕,只是SQL的groupby指令是在執行時,才即時去計算結果,當資料量大時,則可能需要等待上一段時間。2025/3/5DataMining35資料倉儲的查詢處理(2/5)範例一的多維度結構包含時間、商品、客戶區域三個維度與一個銷售金額量值,使用者可能使用下面任何一種的查詢方式來分析資料:(1)依照時間、商品、區域分組來計算銷售總金額〔形成時間、商品、區域三維度的立方體〕(2)依照時間、商品分組來計算銷售總金額〔形成時間、商品二維度的立方體〕(3)依照商品、區域分組來計算銷售總金額〔形成商品、區域二維度的立方體〕(4)依照時間、區域分組來計算銷售總金額〔形成時間、區域二維度的立方體〕2025/3/5DataMining36資料倉儲的查詢處理(3/5)(5)依照時間分組來計算銷售總金額〔形成時間一維度的立方體〕(6)依照商品分組來計算銷售總金額〔形成商品一維度的立方體〕(7)依照區域分組來計算銷售總金額〔形成區域一維度的立方體〕(8)所有銷售總金額〔形成0維度的立方體〕2025/3/5DataMining37資料倉儲的查詢處理(4/5)上面8種查詢分組是將三個維度所有可能的查詢組合都排列出來,這些分組查詢形成該資料立方體的【晶格】〔lattice〕。2025/3/5DataMining38資料倉儲的查詢處理(5/5)為了快速答复查詢,可以將所有可能組合查詢的彙總資料都事先計算並加以儲存,計算的過程可以由下而上聚集而成。假设是記憶空間足夠,可以事先將以上所列的3D~0D資料立方體的彙總資料,全部事先算出並加以儲存,假设是空間不夠,則可以只計算局部彙總資料,遇到查詢時,再及時由下層資料立方體以聚集方式快速算出。一般關聯式資料庫遇到每一次查詢,都必須一筆一筆慢慢累積計算,在效能上自然無法跟已經事先計算出彙總值的多維度資料庫結構相比。2025/3/5DataMining39資料倉儲建置程序需求分析:訪談主管,得到系統需求。資料來源:內部資料或是外購資料資料整理:正確資料,才能提供有用資訊資料倉儲架構設計事實資料表設計維度資料表設計2025/3/5DataMining40資料倉儲的架構設計

(1/4)一個資料倉儲主要是由「事實資料表」與「維度資料表」所構成,兩者之間透過索引鍵建立關聯。

事實資料指的是經過整理的原始交易資料,在事實資料表中,儲存的是各種事實與量值的詳細數值。2025/3/5DataMining41資料倉儲的架構設計(2/4)例如一個事實資料表可能存放如此一筆紀錄:各月份、各商品與各客戶購買的金額與數量,前三個欄位〔月份、商品與客戶〕是事實資料也是索引鍵欄位,將利用他們分別關聯到其他三個維度資料表〔時間維度、商品維度與客戶區域維度資料表〕。剩下銷售數量與金額兩個欄位則是量值欄位,主要是用來做統計數量的運算,例如計算2003年銷售金額為多少?為了將來資料分析,事實資料表必須包含最低層級的資料列〔例如提供統計銷售金額資訊最小細到以週為單位、則事實資料表最低層級也必須是週,而不能是月〕。2025/3/5DataMining42資料倉儲的架構設計(3/4)維度資料表指的是為建立某種維度〔時間維度、商品維度、客戶維度等等〕所需要的資料表,將來可以透過維度資料表,瀏覽或是擷取某一維度、某一層級的彙總資料。例如:(1)瀏覽2003年的銷售金額;(2)瀏覽2003年、服飾的銷售金額;(3)瀏覽2003年、服飾、在中部的銷售金額。維度資料表內的欄位常常會設計有階層關係存在,例如為方便分析某時期的銷售金額,在時間維度上就會以年、季、月、日來分成四個層級。2025/3/5DataMining43資料倉儲的架構設計(4/4)事實資料表只會包含最低層級的詳細資料,而不會包含彙總過的資料,維度資料表恰好相反,可以依據事實資料表的銷售資料〔例如交易日期〕配合維度資料表的階層關係,事先計算各層級的彙總資料。維度資料表必須有一個主鍵〔primarykey〕,用以辨識維度中的每一個成員。每個維度資料表的主鍵必須與事實資料表中的某個外部鍵〔foreignkey〕產生關聯,透過這些關聯關係,才有辦法計算彙總資料,為節省儲存空間,這些鍵值常以數字代號形式出現。2025/3/5DataMining44包含三個維度的資料立方體

2025/3/5DataMining45星狀式資料倉儲架構如果一個維度都儲存在單一資料表〔例如時間維度〕,這種方式稱為【星狀式維度】〔stardimension〕設計。2025/3/5DataMining46星狀雪花式資料倉儲架構

當維度資料分別存在多個資料表中時,這種方式稱為【雪花式維度】(snowflakedimension)設計〔例如商品資料表和商品類別資料表構成一個商品維度〕。而包含星狀式與雪花式兩種架構者,則稱為【星狀雪花式架構】。2025/3/5DataMining47資料倉儲常用的實體儲存架構

第一種是【ROLAP】(RelationalOLAP),利用傳統的關聯式資料庫來存放彙總資料,好處是利用現有的儲存架構較容易完成,但是效率可能較差。第二種是【MOLAP】(MultidimensionalOLAP),這是真正的多維度資料庫結構,可以存放彙總資料,好處是查詢效率較高,缺點是必須重新開發。第三種是【HOLAP】〔hybridOLAP〕為前兩者的混和體,在前兩者的優缺點之間取得平衡。2025/3/5DataMining48資料倉儲建置實例

假設我們有一個類似網路線上購物網站,這個網站大約有100萬個會員,5000種商品,每個月的平均交易量有8千筆。

2025/3/5DataMining49需求分析

假設依據訪談結果,得到下面的需求結果:(1)希望能對每一位客戶做銷售分析。(2)希望能針對每一項產品做銷售業績分析。(3)希望能對每一分類產品做銷售業績分析。(4)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论