資料倉儲與資料前置處理 報告者:謝仁瑋
報告大鋼 資料倉儲 資料倉儲的特性 資料倉儲的實作 資料前置處理的原因
資料倉儲 資料倉儲(Data warehouse) 利用大量歷史資料之資料庫,提供彙總或是統計的資訊,以支援決策
線上分析處理與資料探勘 線上分析處理(OLAP) 資料探勘(Data mining) 是多維度結構的資料分析工具,能夠以不同的主題和角度,快速查出各種統計資料,例資料排名、增長率等。 資料探勘(Data mining) 利用分類、群集分析、關連性、序列分析、機器自我學習及其它統計方法,自歷史資料庫中,找出隱藏、未知的,但卻有用的資訊。 線上分析處理是真實的呈現出查詢的結果,而結果的解讀則是由使用者自行加以判斷。而資料探勘則是探勘出新且有用的知識,在資料的運用更勝於資料倉儲。
資料倉儲的特性(1) 整合的資料 將不同來源的資料以一致的命名方式、統一度量單位、相同格式等加以整合儲存,以利未來使用者的存取。 ◦ 主題導向的資料 在公司內,各部門因為業務性質不同,所使用的作業性資料也會因部門而有所不同,像是客服部門就只會存放產品和客戶資料;製造部門就只會存放零件與供應商的資料。其中有些資料對決策並沒有幫助,例如客戶的電話。
資料倉儲的特性(2) 歷史性資料 資料倉儲主要是提供過去某個時期的運作狀態,例如過去三年、五年,或是最近半年的銷售金額、獲利率等資訊,藉此分析、幫助決策,決定未來企業應採取的策略。 唯讀資料 當我們將作業性資料轉移到資料倉儲後,應當就不需再做什麼變動,除非是輸入錯誤的資料,所以資料倉儲主要是在提供資料快速彙總與查詢的功能,而不在於資料修改的功能。不需更新,頂多只需定期加入新資料,或是移出部分老舊的資料
資料倉儲與一般資料庫的差異 一般關聯式資料庫使用關聯資料表儲存資料;而資料倉儲則使用多維度資料庫結構
資料倉儲的操作 分為下鑽(dirll-down)、上捲(roll-up)、切片(slice)、轉軸(piovt) 下鑽(再細分)
資料倉儲的操作 上捲(一季變一年)
資料倉儲的操作 切片(3d轉2d) 轉軸(橫的轉縱的)
資料倉儲的實作 資料描述 ◦ 假設一個類似網路線上購物網站◦ 其線上資料庫(簡稱OLT: On-Line Transaction 資料庫)包含四個資料表 會員資料表 商品資料表 商品類別資料表 交易資料表
需求假設 假設依據訪談結果,得到以下需求 針對上述各種分析需求,發現主要的索引主軸有:客戶、產品、時間三大類。 希望能對每一位客戶做銷售分析 希望能針對每一項產品做銷售業績分析 希望能對每一分類產品做銷售業績分析 希望能對付款方式做銷售分析 希望能對年度、季、月做銷售分析 針對上述各種分析需求,發現主要的索引主軸有:客戶、產品、時間三大類。
過程 第一步去排不需要的資料如電話、地址等
設計事實資料表 在交易資料表內,交易編號與交易數量是因為銷售所產生,所以兩者一定是事實資料。 訂單中的單價與銷售總金額,也是事實資料,單價可以由產品資料表的「售價」欄位提供。 (事先將其納入,可以避免每次必須到商品資料表查詢售價,加快彙總的計算) 在事實資料表內還需要包含關聯到三個維度資料表的索引欄位:會員帳號、商品編號、交易時間。 另外還加入付款方式欄位
設計時間維度資料表 由交易紀錄表得知交易時間是時間維度資料,時間階層選擇「年、季、月、日」。 實際上資料庫內並沒有一個時間資料表,但是可以由交易日期欄位計算出日期所屬的「年、季、月、日」資訊(關聯)。
最後設計完成的資料倉儲
資料前置處理的原因 資料不完整(data incomplete) 資料有雜訊(noise) 資料中某些屬性值有遺缺(少寫資料) 資料有雜訊(noise) 資料有錯誤或是特例(outlier)造成 資料不一致(data inconsistency) Ex: 商品價格在台灣是以台幣計價,在美國則是美金計價
資料遺缺填補法 直接忽略法 人工填補法 自動填補法 將資料遺缺的地方填入”未知/unKown”
雜訊去除法-裝箱法(等寬分割法) 公式為W=(B-A)/N 將資料的數值範圍劃分為N 個間隔相同的區間 A和B 分別為此屬性中的最小與最大值 12, 15, 18, 21, 28, 33, 36, 45, 50, 52 , 60 , 80 欲分割為四個箱子則箱子寬度=(80-12)/4=17
雜訊去除法-裝箱法(等深分割法) 將資料劃分為N 個資料數量大致相同的區間 《例》假設將12樣商品的價格資料排序如下: 12, 15, 18, 21, 28, 33, 36, 45, 50, 52 , 60 , 80 四個箱子則每個箱子均含三筆資料(寬度12/4=3)
裝箱資料的平緩處理 邊界值是若一數值離最小值較接近便用最小值取代、若離最大值較近便由最大值取代
資料正規化-極值正規化 主要目的是將不同標準之下所記錄的資料轉換到同一個標準,以便提高分析時的準確度。 極值正規化 公式 + 公式 + 假設某a地月收入範圍為[20000(a),100000()b] ,某b地上班族月收入範圍為[2000(c),10000(d)];在某a地收入30000(v)元相當於某b地收入多少?
資料正規化-Z-分數正規化 Z-分數正規化是運用平均值和標準差做計算 公式 /標準差 公式 /標準差 假設臺灣人月收入平均為35000元,標準差是10000元,將月收入30000元做正規化