執行個體構建過程與分析
1.現在以一個比較簡單的執行個體來分析和探討MS SQL SERVER 資料倉儲的構建過程。實際上資料倉的構建是相當複雜的,他結合了資料倉儲的前端技術和很強的業務要求。在這兒只是以一個簡單的執行個體來說明他大致的構建流程。
2.構建資料倉儲模型,他包括兩部分,一是要考慮原來的資料來源能夠提供哪些有用的資料,也就是經過資料的篩選之後能夠為資料倉儲所用。二是要看公司業務層需要什麼樣的分析結果。這要和公司的進階決策層緊密配合,完全瞭解他的業務需求,因為資料倉儲的使用者主要是公司的進階決策者。[U1]
在這一階段要做好很多前期的工作,因為你的未經處理資料庫中的資料也許和你的正要建立的資料倉儲的需求也許有很大的出入,結構完全是兩馬事。你如何才能將你的未經處理資料提取出來,作為資料倉儲的有用資料呢,你的未經處理資料庫中儲存的是零碎的交易資料,而你的資料倉儲中要的是經過轉化和提煉過的統計資料,比如說,你的未經處理資料庫中儲存這每天的所有存款和取款記錄,而你的資料倉儲並不關心你的每條記錄的資料,而是希望在最短的時間內,以最快的速度統計出這個月的所有存款和取款的總數量,如果這種查詢放在原來的資料庫上來做的話,也就失去了資料倉儲的意義,超大規模的資料使你無法查詢下去,這時候你就要將對這個查詢有意義的資料轉化到資料倉儲,這就是資料清洗,即ETL。實現資料清洗有很多的方法,也有很多的細節問題,比如,資料類型的匹配,資料格式的轉換,異地資料表資料集中到一起時有主鍵重複,以及你如何定期,按時的將資料加工到資料倉儲中來等等。在我的樣本中沒有嚴格的經過著一步,因為我沒有規範的未經處理資料庫,也沒有規範的業務需求。我只是運用星型模型和雪花模型做了幾個典型的資料倉儲表。其表關係如下:
視窗中FACT為事實表,TIME,ADDRESS,DETAIL分別為時間維,地址維,詳細地址維,DETAIL又是ADDRESS的子維。他們又構成雪花模型。其中都有部分資料。
3現在,資料倉儲已經建立成功,下一步就是在OLAP伺服器上建立中繼資料資料庫。這個資料庫和我們以前所說的資料庫不同,他是存放中繼資料的資料庫,比如我們下一步要建立的Cube、角色、資料來源、共用維度和採礦模型等。然後需要和早期在 ODBC 資料來源管理器中建立的資料來源串連,使其與資料倉儲串連上。
我建立了資料庫MMM和資料來源TEST,如下:
這些工作做好了之後,就可以用資料倉儲中的維表來建立共用維度,現在以時間維和地址維為例。其建立過程一樣。
依此點下一步即可建立時間維(TIME),下面用ADDRESS和DETAIL建立雪花模型共用維度
點下一步即可建立DETAIL維。建立完成之後都要進行處理才會生效
維度建立好了之後就該建立Cube了。Cube是一種基於維表和事實表的資料集,以他來對資料倉儲進行快速的訪問。我們的Cube結構如下:
DETAIL(SREET)
DETAIL(MARK)
ADDRESS(PROVINCE,CITY)
TIME(YEAR,DAY)
CubeSTUDY的建立過程如下:
點下一步即可建立成功(STUDY),處理如下:
緊接著我門就應該建立採礦模型
完成後處理如下:
到現在一個簡單的資料倉儲架構已經建立成功,我們利用前端分析工具來對建立的資料倉儲做查詢,看能否實現我們的簡單的業務要求,先以EXCEL作為查詢工具:
我們除了用EXCEL,ENGLISH QUERY 等現成工具做查詢外,還可以用MDX函數直接對OLAP做查詢
到現在為止,一個簡單的資料倉儲已經建立成功,可以實現一些簡單的業務查詢。這個執行個體主要是分析資料倉庫的建立過程以及進一步加深對資料倉儲的認識和瞭解,進一步理解其中的基本概念。
[U1]Qianti