天天看點

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

SqlServer 2012 建立資料倉庫

接上一篇:資料倉庫與資料挖掘 4(上)

複習一下,資料倉庫模型

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

年齡維表

點選SSIS右鍵建立SSIS包,設定資料流任務,添加OLEDB源【這部分方法都是一樣的,省略】

抽取Customers資料,選取OnRet資料庫的Customers表,勾選年齡外部列
資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考
添加派生,派生維成員

文法:

«boolean_expression» ? «when_true» : «when_false»
           
資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

派生列:年齡層次的資料類型和資料倉庫中維表設定的資料類型不一緻,有一個很讨巧的方法,在增加一個派生列年齡層次1,将年齡層次轉換資料類型。用的是類型轉換函數。

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

增加排序,去除重複記錄

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

最後,添加OLEDB目标,設定輸出表為SDW的Age表,并設定映射,部署之後就能得到結果。

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

Education 維表

點選SSIS右鍵建立SSIS包,設定資料流任務,添加OLEDB源【這部分方法都是一樣的,省略】

抽取Customers資料,選取OnRet資料庫的Customers表,勾選學曆外部列。

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

老問題,沒有維層次。于是–增加派生列!

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

(本想直接在前面轉換類型但,但是不成功,唉)

文法,

[學曆] =="博士" || [學曆] =="碩士" ? "高" : ([學曆] =="大學" || [學曆] =="高中"?
"中" : "低")
           

為了比對資料類型,再一次派生

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

文法

最後,添加OLEDB目标,設定輸出表為SDW的Education表,并設定映射,部署之後就能得到結果。

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

商品維表

這裡省略一些步驟 。。。

抽取Products資料,選取OnRet資料庫的Products表,勾選分類、子類、品牌外部列。

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

排序,去除重複行

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

添加OLEDB目标,設定輸出表為SDW的Products表,并設定映射,部署之後就能得到結果。

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

事實表

終于等到你。。。

大概要這樣:
資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

一樣的,點選SSIS右鍵建立SSIS包,設定資料流任務,添加OLEDB源,資料來源為Sales表

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

數量、金額是我們關心的路徑成本,而日期,使用者名和分類是連接配接維表

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

添加 查找元件在下方,輕按兩下編輯

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

此時事實表記錄要比對剛剛輸出的時間次元的主鍵,是以連接配接為SDW

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

選擇主鍵

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

其它維表也是同理,正常設定均一緻

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

商品類别維表比對

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考
資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

學曆維表比對

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考
資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

對學曆進行查找,設定連接配接為SDW下Education表,列設定如上。

年齡維表比對

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

對年齡進行查找,設定連接配接為SDW下Age表,列設定如上。

地理維表比對

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

對地理進行查找,設定連接配接為SDW下Locates表,列設定如上。

排序

之後對兩個比對輸出均按使用者名進行排序。

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考
資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

最後,添加OLEDB目标,設定輸出表為SDW的Sales表,并設定映射,部署之後就能得到結果

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考
資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

實驗結果

事實表:

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

時間維表

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

年齡次元Age表

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

受教育程度Education表

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

地理次元Locates表

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

商品次元Products表

資料倉庫與資料挖掘 4(下)SqlServer 2012 建立資料倉庫參考

參考

https://docs.microsoft.com/en-us/sql/integration-services/sql-server-integration-services?view=sql-server-ver15