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

下载本文档

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

文档简介

1、2020/9/8,Data Mining,1,Chapter 2,資料探勘中的資料倉儲和OLAP技術 從交易性資料到分析用資料,2020/9/8,Data Mining,2,操作型資料庫系統,在業界廣為應用的資料庫軟體,常用到的功能不外乎為執行線上交易或是查詢處理,因而也稱為線上交易處理系統(On-Line Transaction Processing,OLTP) 線上交易處理系統,最主要在提供企業平日的所有交易紀錄之存取,因此,其資料庫又稱為操作型資料庫(Operational Database),2020/9/8,Data Mining,3,何謂資料倉儲 (1/3),資料倉儲(data w

2、arehouse)乃是利用儲存大量歷史資料之資料庫,提供彙總或是統計的資訊,以支援決策之使用。 例一:在賣場超市透過收銀機的條碼掃描,客戶購買的每一種商品都會記錄到資料庫之中,但是傳統資料庫的設計,並不能有效地回答經營者所關心的問題。 例如商品甲銷售量的增加,是否會同時帶動商品乙的銷售?用那一種商品來促銷,最能提振業績?,2020/9/8,Data Mining,4,何謂資料倉儲 (2/3),例二:亞瑪遜網站每當客戶購買一本書,它就主動推薦其他相關書籍供客戶參考,所推薦的書籍是根據過去許許多多客戶購買書籍的交易資料裡,探勘出那些書籍是具有強烈的關連性。 這種推薦是由電腦在資料倉儲內經資料探勘所

3、挖掘出來的,可以完全自動處理,不須假手人工,不過先決條件就是必須先建立好資料倉儲與資料探勘等系統。,2020/9/8,Data Mining,5,何謂資料倉儲 (3/3),目前企業大都面臨到一個問題,就是現行營運用的電腦系統並不是針對資料探勘分析而設計的,因此當上級需要一些決策的資訊時,資訊部門常常無法即時提供相關的資訊,協助主管做有效的決策判斷。 資料倉儲的誕生就是為了回答主管所關切的決策問題,建置過程首先從各分公司或是分店收集資料,經過資料清理(例如:去掉不需要的瑣碎資料、補足缺失的資料等)、資料轉換(例如:轉換成一致單位或是格式)、資料整合(例如:整合不同來源的資料)、資料載入(例如建立

4、資料立方體:data cube)和定期資料更新,最後建置一套資料倉儲系統 。,6,資料倉儲的建置過程,資料倉儲的建置過程: 收集資料 資料整理 資料整合 資料載入和定期資料更新,2020/9/8,Data Mining,7,資料來源,資料倉儲的資料來源是由日常運作的資料庫系統所收集而來,例如: 賣場或是連鎖店的每一筆交易資料 電子商務網站所記錄的交易資料 信用卡銀行記錄持卡人的消費行為 人力資源網站記錄媒介結果 入口網站記錄瀏覽路徑、畫面、停留時間 電話公司記錄通話的型態與時間 網路學習網站收集學習者的學習行為,2020/9/8,Data Mining,8,線上分析處理與資料探勘 (1/2),

5、資料倉儲基本上只是一個存放大量彙總資料的後端儲存體,還必須配合前端的運用才能顯示出它的價值,而線上分析處理(OLAP:On-Line Analytical Processing)與資料探勘(data mining)則是兩個最常使用的應用。 線上分析處理可將資料倉儲的資料加以整理、彙總。使用者有資訊上的需求時,不需撰寫程式,就能夠以不同的主題和角度,經由線上分析處理的瀏覽工具快速查出各種資料。,2020/9/8,Data Mining,9,線上分析處理與資料探勘 (2/2),資料探勘與線上分析處理的不同之處,在於線上分析處理主要是原原本本的呈現出使用者查詢的結果,而結果的解讀將由使用者自行加以判

6、斷。 資料探勘則能夠更進一步利用統計、機器學習等方法將資料再分析,探勘出新且有用的知識,在資料的運用上更勝於線上分析處理。,2020/9/8,Data Mining,10,線上分析處理與資料探勘的不同點,2020/9/8,Data Mining,11,從資料倉儲到資料探勘,2020/9/8,Data Mining,12,相關名詞定義,資料集合(data set)、資料表(table):資料集合通常是指收集並儲存於資料庫或資料倉儲中的資料,而為了更容易存取這些資料,資料庫或資料倉儲通常會利用各個資料表來記錄各種層面的資料。 例如會員資料表用來記錄會員的基本資料 。 資料維度(dimension)

7、:資料集合會利用有限的屬性或特徵(attribute)來描述所包含的資料,稱之為資料維度。 例如:會員資料表通常會記錄會員的姓名、電話、地址、生日、教育程度等等,來描述每一個會員,因此姓名、電話、地址、生日、教育程度即是會員資料表的資料維度。,2020/9/8,Data Mining,13,相關名詞定義,資料數值(value):每一資料維度會有一相對應的值域(domain),而值域中所有可能的值即所謂的資料數值。 例如:教育程度此資料維度中所可能包含之資料數值為國中以下、國中、高中/職、大學/大專和研究所。 資料紀錄(record):根據資料維度所描述之每一資料數值的集合。,2020/9/8,

8、Data Mining,14,資料倉儲的特性,整合的資料:將不同來源的資料以一致的命名方式、度量單位、統一格式等加以整合儲存,以利未來使用者的存取。 例如將所有的日期資料都轉成使用單一的格式;意義相同,但來源不同的資料,可能使用不同的名稱、度量,在輸入到資料倉儲之前就需先加以統一。 主題導向的資料:在將資料轉移至資料倉儲時,就必須將未來分析時所不需要的資料濾除,使資料倉儲只存放與分析主題相關的資料。,2020/9/8,Data Mining,15,資料倉儲的特性,歷史性資料:資料倉儲主要是提供過去某個時期的運作狀態,例如過去三年、五年,或是最近半年的銷售金額、獲利率等資訊,藉此分析、幫助決策,

9、決定未來企業應採取的策略。 唯讀的資料:當我們將資料轉移到資料倉儲後,應當就不需再做什麼變動,除非是輸入錯誤的資料。 由於存放的是歷史性的資料,所以不需更新,頂多只需定期加入新資料,或是移出部分老舊的資料。 所以資料倉儲主要是在提供資料快速彙總與查詢的功能,而不在於資料修改的功能。,2020/9/8,Data Mining,16,資料倉儲與一般資料庫的差異,資料倉儲典型的代表就是 OLAP 系統,一般資料庫最佳的代表就是 OLTP(On-Line Transaction Processing)。,2020/9/8,Data Mining,17,OLTP 與 OLAP 特性比較,2020/9/8

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

11、資料倉儲:指的是整個資料倉儲系統是由多個獨立的資料倉儲、資料超市或是多層次資料倉儲組合完成,但是能夠提供單一的介面供使用者使用,使用者不需知道資料究竟來自那一個資料倉儲。 Virtual Data Warehouse,2020/9/8,Data Mining,20,資料倉儲的儲存架構,一般常用的儲存架構在邏輯設計上稱為多維度資料庫結構(multidimensional database structure),但是實際的儲存實體結構可以是關聯式資料庫,或是【多維度資料立方體】(multidimensional data cube),或是兩者混合的結構。 存放在多維度資料庫結構的資料稱為【資料立方

12、體】(data cube),它是由【維度】(dimensions)與【事實】(facts)組合而成。資料立方體提供了資料的多維度觀察,並允許事先計算好彙總值以便將來快速存取彙總的資料。,2020/9/8,Data Mining,21,資料立方體的呈現方式,cell,2020/9/8,Data Mining,22,範例一,假設有一購物網站已經建置一個資料倉儲系統,主要作為銷售金額的分析 資料時間範圍從 2001 2003 總共三年。 將全省客戶依照地理區域分為北、中、南三區,北部包含台北、桃園與新竹;中部包含台中、彰化與南投;南部包含嘉義、台南與高雄。 販售商品分成食品、五金、服飾三大類,食品類

13、又分成肉類、餅乾、罐頭三小類;五金再分成汽車、建材、衛浴三小類;服飾類又分成女裝、男裝、童裝三小類。,2020/9/8,Data Mining,23,多維度立方體示意圖,2020/9/8,Data Mining,24,多維度立方體示意圖說明,資料立方體總共有三個維度,垂直的維度代表時間、橫軸的維度代表商品類別,最後一個客戶區域維度代表客戶所在的區域與縣市。 維度上的單位或是階層將立方體劃分成許多小【單元】(cell,例如以年、季、月來刻畫時間維度,而三者又有階層關係),每個小單元則存放某個彙總的【量值】(measure),在本例中所存放的量值就是銷售金額。例如左上角的單元,代表 2003年第四

14、季,食品賣給北部客戶總共金額是 300,000元,它被存放在 (2003 Q4,食品,北部)的座標單元之內。,2020/9/8,Data Mining,25,資料倉儲的OLAP操作方法,刻畫維度的單位可以設計成有階層關係存在,稱之為【概念階層】(concept hierarchy)。例如在時間維度,階層關係是年、季、月、日;商品維度的階層關係是商品類別、商品次類別、商品。 每一較高的階層會包含數個層次較低的階層,可以利用類似拉近、拉遠(zoom in/out)的方式快速瀏覽各階層的彙總資料。而較高層次的彙總資料則可以由較低的階層之彙總資料快速組合而成,這也是資料倉儲可以快速回答查詢的原因之一。

15、,2020/9/8,Data Mining,26,資料倉儲的操作方法(下鑽),下鑽(drill-down)方法讓使用者可以更深入一層瀏覽彙總資料。 例一:想要進一步瞭解 2003 Q4 內每個月的銷售情況,則可以在時間維度利用下鑽操作,看到 2003年 10 12 月的銷售金額。,2020/9/8,Data Mining,27,資料倉儲的操作方法(下鑽),例二:在商品維度使用下鑽操作,去細看食品類別裡的肉類、餅乾與罐頭三個小類分別的銷售金額 。,2020/9/8,Data Mining,28,資料倉儲的操作方法(上捲),上捲(roll-up)方法讓使用者提高觀看的層次,去瞭解更概觀的情況。 例

16、一:想知道每年的銷售金額(不需要細分到季),透過時間維度的上捲操作,將看到更高層級的彙總資料。,2020/9/8,Data Mining,29,資料倉儲的操作方法(上捲),例二:只希望看到每年北、中、南三地區客戶購買的總銷售金額(不需要細分商品類別),同樣利用商品維度的上捲操作,將看到更高一層的統計資料。,2020/9/8,Data Mining,30,資料倉儲的操作方法(切片),切片(slice)方法是在單一維度上進行條件設定與資料選擇,進而產生出一個子立方體,讓使用者能夠切割某一層面的資料。 例一:主管只想看北部客戶的購買情況,就可以利用切片操作,將只包含北部的資料切割出來 。,2020/

17、9/8,Data Mining,31,資料倉儲的操作方法(切片),例二:只想看最近一年 2003 的資料,同樣利用切片操作,切割出 2003 年的資料。,2020/9/8,Data Mining,32,資料倉儲的操作方法(切塊),切塊(dice)方法是對多個維度進行條件設定的資料選擇,進而產生一個子立方體 。 例如主管只想看北部客戶在2003 年的購買情況,則可以利用客戶區域維度與時間維度切塊方式切出子立方體。,2020/9/8,Data Mining,33,資料倉儲的操作方法(轉軸),轉軸(pivot)(又稱旋轉:rotate)方法讓使用者可以轉動 2D 切片或是 3D 的立方體,從不同的視

18、角來觀看資料 。 例如將前頁圖之子立方體做一 90度的旋轉。,2020/9/8,Data Mining,34,資料倉儲的查詢處理 (1/5),資料倉儲基本上是建立在一個多維度資料庫結構上的一個儲存體,而多維度資料分析的核心是如何有效率的計算出多個維度集合上的統計值(例如 2003年每一季,每個區域服飾的銷售金額),以支援快速查詢之用。 若是使用一般關聯式資料庫,就是利用 group by 語法來求得這些統計值(group by 季、分店、服飾),只是SQL 的 group by 指令是在執行時,才即時去計算結果,當資料量大時,則可能需要等待上一段時間。,2020/9/8,Data Mining

19、,35,資料倉儲的查詢處理 (2/5),範例一的多維度結構包含時間、商品、客戶區域三個維度與一個銷售金額量值,使用者可能使用下面任何一種的查詢方式來分析資料: (1) 依照時間、商品、區域 分組來計算銷售總金額(形成時間、商品、區域三維度的立方體) (2) 依照時間、商品分組來計算銷售總金額(形成時間、商品二維度的立方體) (3) 依照商品、區域分組來計算銷售總金額(形成商品、區域二維度的立方體) (4) 依照時間、區域分組來計算銷售總金額(形成時間、區域二維度的立方體),2020/9/8,Data Mining,36,資料倉儲的查詢處理 (3/5),(5) 依照時間分組來計算銷售總金額(形成

20、時間一維度的立方體) (6) 依照商品分組來計算銷售總金額(形成商品一維度的立方體) (7) 依照區域分組來計算銷售總金額(形成區域一維度的立方體) (8) 所有銷售總金額(形成0維度的立方體),2020/9/8,Data Mining,37,資料倉儲的查詢處理 (4/5),上面 8 種查詢分組是將三個維度所有可能的查詢組合都排列出來,這些分組查詢形成該資料立方體的【晶格】(lattice)。,2020/9/8,Data Mining,38,資料倉儲的查詢處理 (5/5),為了快速回答查詢,可以將所有可能組合查詢的彙總資料都事先計算並加以儲存,計算的過程可以由下而上聚集而成 。 若是記憶空間足

21、夠,可以事先將以上所列的3D0D 資料立方體的彙總資料,全部事先算出並加以儲存,若是空間不夠,則可以只計算部分彙總資料,遇到查詢時,再及時由下層資料立方體以聚集方式快速算出。 一般關聯式資料庫遇到每一次查詢,都必須一筆一筆慢慢累積計算,在效能上自然無法跟已經事先計算出彙總值的多維度資料庫結構相比。,2020/9/8,Data Mining,39,資料倉儲建置程序,需求分析 :訪談主管,得到系統需求。 資料來源 :內部資料或是外購資料 資料整理 :正確資料,才能提供有用資訊 資料倉儲架構設計 事實資料表設計 維度資料表設計,2020/9/8,Data Mining,40,資料倉儲的架構設計 (1

22、/4),一個資料倉儲主要是由事實資料表與維度資料表所構成,兩者之間透過索引鍵建立關聯。 事實資料指的是經過整理的原始交易資料,在事實資料表中,儲存的是各種事實與量值的詳細數值。,2020/9/8,Data Mining,41,資料倉儲的架構設計 (2/4),例如一個事實資料表可能存放如此一筆紀錄:各月份、各商品與各客戶購買的金額與數量,前三個欄位(月份、商品與客戶)是事實資料也是索引鍵欄位,將利用他們分別關聯到其他三個維度資料表(時間維度、商品維度與客戶區域維度資料表)。剩下銷售數量與金額兩個欄位則是量值欄位,主要是用來做統計數量的運算,例如計算2003 年銷售金額為多少? 為了將來資料分析,

23、事實資料表必須包含最低層級的資料列(例如提供統計銷售金額資訊最小細到以週為單位、則事實資料表最低層級也必須是週,而不能是月)。,2020/9/8,Data Mining,42,資料倉儲的架構設計 (3/4),維度資料表指的是為建立某種維度(時間維度、商品維度、客戶維度等等)所需要的資料表,將來可以透過維度資料表,瀏覽或是擷取某一維度、某一層級的彙總資料。 例如:(1)瀏覽 2003 年的銷售金額;(2)瀏覽 2003 年、服飾的銷售金額;(3)瀏覽 2003 年、服飾、在中部的銷售金額。 維度資料表內的欄位常常會設計有階層關係存在,例如為方便分析某時期的銷售金額,在時間維度上就會以年、季、月、

24、日來分成四個層級。,2020/9/8,Data Mining,43,資料倉儲的架構設計 (4/4),事實資料表只會包含最低層級的詳細資料,而不會包含彙總過的資料,維度資料表恰好相反,可以依據事實資料表的銷售資料(例如交易日期)配合維度資料表的階層關係,事先計算各層級的彙總資料。 維度資料表必須有一個主鍵(primary key),用以辨識維度中的每一個成員。每個維度資料表的主鍵必須與事實資料表中的某個外部鍵(foreign key)產生關聯,透過這些關聯關係,才有辦法計算彙總資料,為節省儲存空間,這些鍵值常以數字代號形式出現。,2020/9/8,Data Mining,44,包含三個維度的資料

25、立方體,2020/9/8,Data Mining,45,星狀式資料倉儲架構,如果一個維度都儲存在單一資料表(例如時間維度),這種方式稱為【星狀式維度】(star dimension)設計。,2020/9/8,Data Mining,46,星狀雪花式資料倉儲架構,當維度資料分別存在多個資料表中時,這種方式稱為【雪花式維度】(snowflake dimension) 設計(例如商品資料表和商品類別資料表構成一個商品維度)。而包含星狀式與雪花式兩種架構者,則稱為【星狀雪花式架構】。,2020/9/8,Data Mining,47,資料倉儲常用的實體儲存架構,第一種是 【ROLAP】(Relation

26、al OLAP), 利用傳統的關聯式資料庫來存放彙總資料,好處是利用現有的儲存架構較容易完成,但是效率可能較差。 第二種是 【MOLAP】(Multidimensional OLAP), 這是真正的多維度資料庫結構,可以存放彙總資料,好處是查詢效率較高,缺點是必須重新開發。 第三種是 【HOLAP】(hybrid OLAP ) 為前兩者的混和體,在前兩者的優缺點之間取得平衡。,2020/9/8,Data Mining,48,資料倉儲建置實例,假設我們有一個類似網路線上購物網站,這個網站大約有100萬個會員,5000種商品,每個月的平均交易量有8千筆。,2020/9/8,Data Mining,49,需求分析,假設依據訪談結果,得到下面的需求結果: (1) 希望能對每一位客戶做銷售分析。 (2) 希望能針對每一項產品做銷售業績分析。 (3) 希望能對每一分類產品做銷售業績分析。 (4) 希望能對付款方式做銷售分析。 (5) 希望能對年度、季、月做銷售分析。 OLT 資料庫所記錄的資料基本上比較詳細與瑣碎,因此不需要將所有OLT 的 資料都納入資料倉儲之中。在會員資料表中排除會員密碼、

温馨提示

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

评论

0/150

提交评论