BI之SSAS完整實戰教程6 -- 設計維度、細化維度上:建立維度定義特性關係

前面咱們使用過數據源嚮導、數據源視圖嚮導、Cube嚮導來建立相應的對象。 html

本篇咱們將學習使用維度嚮導來建立維度。 工具

經過前面幾個嚮導的學習,咱們概括一下共同點,主要分紅兩步 性能

1. 使用某種對象類型的嚮導建立對象,完成主要結構搭建 學習

2. 使用相應的設計器完成最終對象的修改和細化 優化

有點像送快遞,先經過大的物流(建立對象嚮導)把貨物送到相應的城市,再經過快遞員(設計器進行細化)送到具體顧客手中。 spa

一樣的,咱們使用維度嚮導以一種通用的方式來建立維度,而後根據本身的業務需求,使用維度設計器將建立的維度放置到它們的最終目的地。 設計

文章提綱

  • 使用維度嚮導建立維度
  • 使用維度設計器設計維度
  • 總結

使用維度嚮導建立維度

維度能夠提供切分多維數據集數據的功能。 3d

前面提到過,維度包含層次結構的對象,分爲特性層次結構和多級或用戶層次結構。前者對應於關係表中的單個列,後者派生自兩個或更多特性層次結構。 orm

咱們接着使用咱們以前建立的項目ASMultidimensionalPOC 來進行進一步的練習。 htm

在原有的基礎上,咱們添加Geography維度,步驟:

1、 添加表DimGeography到dsv中

1. 切換到dsv視圖,點擊DSV設計器工具欄上的Add/Remove Objects按鈕

2. 選擇DimGeography 添加到DSV中。

2、 使用維度嚮導建立維度

1. 右擊Dimensions文件夾 -->New Dimension

2. 在Select Creation Method頁面選擇默認項 Use an existing table

3. 在Specify Source Information頁面中,須要選擇用於建立維度的DSV, 基於的主表,維度的鍵列及名稱列(可選),按照下面選擇,下一步

在Main table中選擇DimGeography表.

Key columns列表和Name column字段將自動設置爲選定表的主鍵。

4. Select Related Tables

5. Select Dimension Attributes頁面顯示選擇做爲要建立的維度的主表的列。

嚮導會將這些列轉換爲維度特性。按下圖設置, Next

6. 最後一個頁面顯示將要爲維度建立的特性,點擊完成。

至此,咱們用嚮導建立的第一個維度就完成了。

接下來使用維度設計器來進一步設計這個維度。

使用維度設計器設計維度

首先看下維度設計器的組成。

能夠看到,頂部有4個tab頁,分別是

Dimension Structure,Attribute Relationships, Translations, Browser

本篇會介紹前兩個tab, Translations和Browser後面再講。

第一個tab包括3個窗格,分別是Attributes, Hierarchies, DSV

Attributes顯示維度的特性,Hierarchies窗格顯示維度的層次結構及其級別,DSV窗格顯示維度中使用的表。

此外,還包含一個工具欄,鼠標放上去就能看到功能說明,再也不多作介紹。

咱們首先對Dimension Structure中的窗格進行介紹.

Attributes

特性層次結構(簡稱爲特性)是隻包含兩個級別的層次結構,分別是子級別和All級別。

前者針對每一個不一樣的特性值包含一個成員,後者包含全部葉子級別成員的聚合值。

All級別是可選的。每一個特性直接對應於DSV中的某個表列。

Attributes窗格中默認視圖是Tree,還有List和Grid 視圖。

 

Attributes Relationships

同一緯度特性具備一對多關係時能夠定義特性關係,例如 Country,State和City 之間。

每一個維度必須至少有一個特性定義爲鍵特性,維度嚮導會自動與維度的全部特性創建關係。(顯然鍵特性在多的一側)

指定特性關係有助於改進查詢性能以及告知用戶層次結構的聚合設計。

Atrributes Relationships包含3個窗格,以下

咱們完成Country – State – City 特性關係。

能夠經過Diagram窗格,Attributes窗格,Attribute Relationships窗格三種方式建立關係,咱們經常使用的是前兩種,下面咱們分別舉例。

1、建立關係

1.在Diagram窗格中經過拖拽的方式修改特性關係。

2.經過Attributes窗格創建 Country – Province關係

以下圖,右鍵多的這一側,選擇New Attribute Relationship

按下圖選擇

 

2、編輯關係

咱們使用Attribute Relationships窗格編輯 French Country Region Name和Spanish Country Region Name特性的現有關係。

1. 在Attribute Relationships窗格中以下圖操做

選擇方框處,

將關係屬性Cardinality由Many設爲One, 將English Country Region Name和French Country Region Name的關係由many-to-one改成one- to - one

一樣的方式修改下Spanish Country Region Name

3、刪除關係

經過Attribute Relationships刪除關係比較方便

 

經過設定關係, 預先聚合,能夠沒必要遍歷完整的層次結構,性能上能夠獲得改進。

 

 

建立 用戶層次結構

用戶層次結構(也稱多級層次結構)是經過某個維度的特性建立的。

每一個用戶層次結構都包含一個或多個級別,每一個級別自己都是一個特性層次結構。

基於建立的Geography維度的特性,能夠建立一個稱爲Country-State-City-Postal Code的邏輯用戶層次結構。

1.切換到 Dim Geography維度的Dimension Structure選項卡,將相應的特性拖拽到右邊Hierarchies中,以下圖。

 

2. 更名

建立的層次結構默認名爲Hierarchy, 右擊Rename改成Geography

將層次結構中的每一級都Rename,方法相似。

最終效果以下圖

如今已經建立了一個稱爲Geography的用戶層次結構,而且該層次結構包含4個級別,可單擊箭頭查看相關特性。

請注意Geography層次結構名稱旁邊的警告圖標以及層次結構名稱下面的曲線。

鼠標移上去能夠看到提示信息,指示出該層次結構的一個或多個級別之間不存在特性關係,而且可能會致使性能降低。

當前的層次結構設計稱爲非天然層次結構。

若是層次結構中的某個級別的特性值不能知道上一個級別中誰是父級,那麼就會存在非天然層次結構。

舉個更容易理解的非天然層次結構的示例Customer Gender-Age層次結構,其中Gender是維度的第一級,而Age是第二級。知道某個客戶37歲並不會給出任何性別暗示。

與此相對的是,在天然層次結構中,知道某個級別中某個特性的值可明確地指出在層次結構中下一個級別中誰是他的父級。

天然層次結構的一個示例是Product維度層次結構,其中包含Category,Sub-Category和Product 3個級別。知道某種產品的Sub-Category是Mountain Bike,那麼就知道他所屬的Category是Bike.

特性值之間的這種關係是經過特性關係來定義的。

咱們優化當前的Geography層次結構,使其稱爲天然層次結構。

1.切換Attribute Relationships頁面。能夠看到,Post Code和City之間沒任何關係。

2.在Diagram窗格中,將Postal Code特性拖放到City特性。

此時創建起了關係。

3. 再切換Dimension Structure選項卡查看,能夠看到警告已消失。

保存該維度。

 

總結

咱們使用維度嚮導建立了第一個獨立的維度。

你們須要掌握維度嚮導的使用方法,並重點掌握維度設計器的用法(Dimension Structure和Attribute Relationships的頁面功能)

下一篇咱們會將這個維度部署,修改一些部署錯誤,並查看維度數據以及進一步細化。

祝學習進步:)

 

相關係列文章列表:

 


首發博客園 by MiroYuan,轉載文章以後必須在文章頁面明顯位置給出做者和原文鏈接,不然保留追究法律責任的權利。

相關文章
相關標籤/搜索