BI之SSAS完整實戰教程3 -- 創建第一個多維數據集


上一篇我們已經完成了數據源的准備工作,現在我們就開始動手,創建第一個多維數據集(Cube)。

文章提綱

  • 使用多維數據集向導創建多維數據集
  • 總結Cube設計器簡介
  • 維度細化
  • 總結

一、使用向導創建多維數據集

在Analysis Services中,可以通過3種方法構建多維數據集:自上而下,自下而上或者基於一個空多維數據集。

一般我們從現有的關系數據庫自下而上構建。

在自下而上方式中,需要一個DSV作為多維數據集的構建基礎。

AS中的多維數據集(Cube)包括兩部分:

1. 一個或多個度量值組,其數據來自關系數據源中的一個或多個事實表。通常情況下,每個事實表對應一個度量值組,度量值組包含一個或多個度量值(例如銷售額,成本,售出產品計數)

2. 多維數據集還包含一個或多個來自關系維度表的維度(例如Product和Time).

構建多維數據集時,需要指定希望使用的事實表和維度表。每個多維數據集必須至少包含一個事實表,用於確定該多維數據集的內容。

后面使用向導時可以看到,如果不選量值組會提示:At least one measure group table must be selected.

另外構建多維數據集之前,必須基於維度表創建維度。

我們簡單小結一下:Cube=度量值組+維度

多維數據集向導將創建多維數據集所涉及的所有步驟打包在一起, 形成一個簡單的順序過程,創建步驟:

1. 右鍵 Cubes à New Cube…

點擊 Next進入下一步

 

選擇默認值,下一步

 

2.在Select Measure Group Table頁中,選擇FactInternetSales 和 FactResellerSales作為度量值組表,下一步

 

3. 在Select Measures頁面中,可以從度量值組表中選擇特定的列作為度量值。

默認情況下,會選中度量值組表中的所有列(鍵列除外)

按照默認選擇,下一步

 

4. 在Select New Dimensions頁面上,多維數據集向導將顯示可能的維度及其特性。默認情況下,多維數據集向導在每個維度中包含鍵特性,鍵特性將在此頁面上突出顯示,如下圖。取消選中Fact Internet Sales和Fact Reseller Sales維度,下一步。

 

5. 按照默認名稱,點擊Finish完成多維數據集的創建。

 

向導完成后,維度也會相應的創建,並且顯示在Solution Explorer中。

二、Cube設計器簡介

Adventure Works DW多維數據集將在多維數據集設計器中打開,如下圖

可以看到,多維數據集設計器具有多個tab, 通過這些tab, 可以對多維數據集進行各種操作。在多維數據集向導完成后打開的默認頁面是Cube Structure

其他的一些頁面包括:Dimension Usage, Caculation, KPIs, Actions, Partitions, Aggregations, Perspectives, Translations和Browser

 

Cube Structure頁面包含3個窗格:Measures(度量值)、Dimensions(維度)和Data Source View(數據源視圖)。

可以在Measures窗格中添加或修改度量值組和度量值。

使用Dimensions窗格可以添加或修改多維數據集的維度。

Data Source View 窗格顯示在多維數據集中使用的事實表和維度表,並使用不同顏色進行區分(黃色表示事實表,藍色表示維度表)

在每個窗格內部右擊,可以看到能夠在每個窗格中完成的各種操作。

三、維度細化

多維數據集向導僅向創建的維度中添加了最為基本的一些特性。若要對多維數據集中的數據進行分析,還需要對這些維度進行進一步細化, 后續文章我們專門有一篇講解維度的細化,下面我們先來一個維度細化示例。

1.在Solution Explorer中,雙擊Dim Date.dim維度。

Dim Date維度將在維度設計器中打開。

Dimension Structure頁面包含3個窗格:Attributes, Hierarchies和DSV

2.在DSV窗格中,選中DimDate表中除DateKey以外的所有列,拖到Attributes窗格。該操作會為DimDate表中的每一列創建一個特性。

3. 將鍵特性從Date Key重命名為Date

4. 將Fiscal Quarter特性從Attributes窗格拖放到Hierarchies窗格。該操作將創建一個層次結構,稱為Hierarchy.

將Month Number of Year 特性拖放到Hierarchies窗格的Fisical Quarter特性下面。該操作會在層次結構中創建另一個級別。

類似的,將Date特性拖放到Month Number of Year特性下面。

右擊層次結構並選擇Rename, 將層次結構重命名為Fiscal Quarter – Month Number of Year, 最終效果如下圖:

我們對其他維度也做一些調整。

Dim Currency.dim

Dim Customer.dim

將鍵特性從 Custom Key 重命名為 Custom

將DSV中來自DimCustomer表的所有列(Custom Key除外)拖放到Attributes窗格

Dim Sales Territory.dim

將鍵特性從Sales Territory Key 重命名為 Sales Territory

將DimSalesTerritory表中除SalesTerritoryKey和Image以外的所有列從DSV窗格拖放到Attributes窗格。

 

Dim Product.dim

將鍵特性從 Product Key重命名為Product

將DimProduct表中除ProductKey和LargePhoto以外的所有列從DSV拖放到Attributes 窗格。

 

Dim Promotion.dim

將鍵特性從Promotion Key 重命名為 Promotion

將DimPromotion表中除PromotionKey以外的所有列從DSV窗格拖放到Attributes窗格。

將 English Promotion Category特性從Attributes窗格拖放到Hierarchies窗格。該操作將創建一個新的層次結構。

將Discount Pct特性從Attributes窗格拖放到Hierarchies窗格的English Promotion Category特性下面。該操作會在層次結構中創建一個新的level.

將Promotion特性從Attributes窗格拖放到Hierarchies窗格的Discount Pct級別下面.

重命名層次結構為English Promotion Category – Discount Pct, 如下圖

 

 

Dim Reseller.dim

將鍵特性從Reseller Key重命名為Reseller

將DimReseller表中除ResellerKey以外的所有列從DSV窗格拖放到Attributes窗格。

將Annual Revenue特性從Attributes窗格拖放到Hierarchies窗格。改操作將創建一個新的層次結構。

將Number Employees特性從Attributes窗格拖放到Hierarchies窗格的Annual Revenue特性下面。該操作將創建一個新的level, 成為Number Employees

將Reseller特性從Attributes窗格拖放到Hierarchies窗格的Number Employees級別下面

重命名層次結構為Annual Revenue – Number of Employees , 如下圖

 

Dim Employee.dim

該維度具有多維數據集向導創建的3個鍵特性,與此相對的是,其他維度創建了一個鍵特性。這是因為,向導在Dim Employee維度內檢測到一種父子關系(后續教程介紹)

將Employee Key特性重命名為Employee

將DimEmployee表中除EmployeeKey, ParentEmployeeKey,Sales TerritoryKey和EmployeePhoto以外的所有列從DSV窗格拖放到Attributes窗格。

將Department Name特性從Attributes窗格拖放到Hierarchies窗格。該操作將創建一個新的層次結構。

將Title特性從Attributes窗格拖放到Hierarchies窗格的Department Name層次結構下面。

將Employee特性從Attributes窗格拖放進Hierarchies窗格的Title特性下面。

重命名層次結構為Department Name - Title

 

四、總結

現在,你已經成功使用SSDT創建了一個多維數據集,並對維度進行了細化。后續將會圍繞這個例子繼續進行擴展。

 

最后我們對本篇內容做個總結:

1. 需要了解向導創建多維數據集的順序 :

Select Creation Meathod (Use existing tables)

-->Select Measure Group Tables

-->Select Measures

-->Select New Dimensions

-->Completing the Wizard

2. Cube設計器的結構:

包含多個tab, 每個tab包含多個窗格,熟悉這些tab和窗格。

3. 初步了解維度細化的一些操作(后續會有專題講維度操作)

 

下一篇文章將會介紹如何部署這個項目到SSAS上,以及進行簡單的分析。

祝學習進步:)

 

首發博客園 by MiroYuan,轉載文章之后必須在文章頁面明顯位置給出作者和原文連接,否則保留追究法律責任的權利。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM