在使用者自訂階層的屬性之間指定屬性關聯性

如同您在這個教學課程中已學到的,您可以將屬性階層組織成使用者階層內的層級,在 Cube 中為使用者提供導覽路徑。使用者階層可代表自然階層,例如縣 (市)、省份和國家 (地區),或只代表導覽路徑,例如員工姓名、職稱和部門名稱。對於導覽階層的使用者而言,這兩種類型的使用者階層是一樣的。

有了自然階層,當您在構成層級的屬性之間定義屬性關聯性時,Microsoft SQL Server 2005 Analysis Services (SSAS) 可使用一個屬性的彙總來取得相關屬性的結果。如果屬性之間沒有定義關聯性,Analysis Services 將從索引鍵屬性中彙總所有非索引鍵屬性。另外,如同您已學到的,當您定義這種關聯性時,可以指定彈性的或固定的關聯性。如果您定義固定關聯性,當維度更新時,Analysis Services 會保留彙總。如果定義為固定的關聯性實際上有所變更,除非已完全處理維度,否則在處理期間,Analysis Services 會產生錯誤。指定適當的關聯性和關聯性屬性可增加查詢和處理效能。如需詳細資訊,請參閱<定義及設定屬性關聯性>和<設定使用者自訂階層屬性>。

在這個主題的工作中,您會在 Analysis Services 教學課程專案中,為自然使用者階層中的屬性定義屬性關聯性。這些包括 [客戶] 維度中的 [客戶地理位置] 階層、[銷售領域] 維度中的 [銷售領域] 階層、[產品] 維度中的 [產品型號線] 階層和 [時間] 維度中的 [會計時間] 和 [日曆時間] 階層。這些使用者階層全都是自然階層。

在 [客戶地理位置] 階層中定義屬性的屬性關聯性

在客戶地理位置階層中定義屬性的屬性關聯性

  1. 針對 [客戶] 維度切換到維度設計師,然後按一下 [維度結構] 索引標籤。

    [階層和層級] 窗格中,請注意 [客戶地理位置] 使用者自訂階層中的層級。這個階層目前只是使用者的向下鑽研路徑,並未定義任何層級或屬性之間的關聯性。

  2. [屬性] 窗格中,展開 [地理位置]

    請注意,有四種屬性關聯性會將 [地理位置] 資料表的非索引鍵屬性連結到 [地理位置] 資料表的索引鍵屬性。

  3. [屬性] 窗格中,展開 [全名]

    請注意,[地理位置] 屬性與 [全名] 屬性相關聯。另外也請注意,[郵遞區號] 屬性透過 [地理位置] 屬性連結到 [全名] 屬性,因為 [郵遞區號] 連結到 [地理位置] 屬性,而 [地理位置] 屬性連結到 [全名] 屬性。

  4. [郵遞區號] 屬性關聯性從 [地理位置] 屬性拖曳到 [全名] 屬性的 [<新增屬性關聯性>] 標記。

    [郵遞區號] 屬性現在直接與 [全名] 屬性相關聯。在 [屬性] 視窗中,請注意這個屬性的 [RelationshipType] 屬性設為 [Flexible]。這是適當的,因為客戶和郵遞區號之間的關聯性在經過一段時間之後可能會變更。

  5. [屬性] 窗格中,展開 [郵遞區號] 屬性。

    [縣 (市)] 屬性目前是透過 [地理位置] 屬性與 [郵遞區號] 屬性相關聯,而不是直接相關聯。

  6. [縣 (市)] 屬性關聯性從 [地理位置] 屬性拖曳到 [郵遞區號] 屬性的 [<新增屬性關聯性>] 標記。

    [縣 (市)] 屬性現在直接與 [郵遞區號] 屬性相關聯。在 [屬性] 視窗中,請注意這個屬性的 [RelationshipType] 屬性設為 [Flexible]。這是適當的,因為縣 (市) 和郵遞區號之間的關聯性在經過一段時間之後可能會變更。

  7. [屬性] 窗格中,展開 [縣 (市)]

    State-Province 屬性目前是透過 [全名] 和 [地理位置] 屬性與 [縣 (市)] 屬性相關聯。

  8. [省份名稱] 屬性 (Attribute) 關聯性從 [地理位置] 屬性 (Attribute) 拖曳到 [縣 (市)] 屬性 (Attribute) 的 [<新增屬性關聯性>] 標記,然後將這個屬性 (Attribute) 關聯性的 [RelationshipType] 屬性 (Property) 的值變更為 [Rigid]

    屬性 (Attribute) 關聯性的 RelationshipType 屬性 (Property) 的值應該設為 Rigid,因為縣 (市) 和省份之間的關聯性不會隨時間而變更。

  9. [屬性] 窗格中,展開 [省份],將 [國家 (地區)] 屬性 (Attribute) 關聯性從 [地理位置] 屬性拖曳到 [省份] 屬性 (Attribute) 的 [<新增屬性關聯性>] 標記,然後將這個屬性 (Attribute) 關聯性的 [RelationshipType] 屬性 (Property) 的值變更為 [Rigid]

    這個屬性 (Attribute) 關聯性的 [RelationshipType] 屬性 (Property) 的值應該設為 [Rigid],因為省份和國家 (地區) 之間的關聯性不會隨時間而變更。

  10. [屬性] 窗格中,刪除 [地理位置] 屬性。

    已不再需要這個屬性。

ms166553.note(zh-tw,SQL.90).gif附註:
在這項工作中,您將屬性關聯性從 [地理位置] 屬性移到其他屬性,而不是為每一個屬性建立新的屬性關聯性。定義重複的關聯性通常會加入無值而且增加不必要的處理時間。

在 [銷售領域] 階層中定義屬性的屬性關聯性

在銷售領域階層中定義屬性的屬性關聯性

  1. 請針對 [銷售領域] 維度開啟維度設計師,然後按一下 [維度結構] 索引標籤。

  2. 在 [階層和層級] 窗格中,按一下 [銷售領域] 階層,然後展開 [銷售領域地區][銷售領域國家 (地區)]

    請注意,[銷售領域群組] 是直接連結到 [銷售領域地區],索引鍵屬性不是直接連結到 [銷售領域國家 (地區)] 屬性。

  3. [銷售領域群組] 屬性關聯性從 [銷售領域地區] 屬性拖曳到 [銷售領域國家 (地區)] 屬性的 [<新增屬性關聯性>] 標記。

    [銷售領域群組] 現在連結到 [銷售領域國家 (地區)],而 [銷售領域國家 (地區)] 現在則連結到 [銷售領域地區]。每一個這些關聯性的 [RelationshipType] 屬性應該設為 [Flexible],因為國家 (地區) 內的地區群組可能隨時間而改變,而將國家 (地區) 分成群組也可能隨時間而改變。

    注意 您可以在 [屬性] 窗格或 [階層和層級] 窗格中,設定使用者自訂階層的屬性關聯性。

在 [產品型號線] 階層中定義屬性的屬性關聯性

在產品型號線階層中定義屬性的屬性關聯性

  1. 請針對 [產品] 維度開啟維度設計師,然後按一下 [維度結構] 索引標籤。

  2. [屬性] 窗格中,展開 [模型名稱] 屬性和 [產品名稱] 屬性。

  3. [產品線] 屬性關聯性從 [產品名稱] 屬性拖曳到 [模型名稱] 屬性的 [<新增屬性關聯性>] 標記。

    這個屬性關聯性的 [RelationshipType] 屬性的值應該設為 [Flexible],因為產品線和模型名稱之間的關聯性可能隨時間而變更。

在 [會計時間] 階層中定義屬性的屬性關聯性

在會計時間階層中定義屬性的屬性關聯性

  1. 請針對 [時間] 維度切換到維度設計師,然後按一下 [維度結構] 索引標籤。

  2. [屬性] 窗格中,展開下列屬性:

    • 日期
    • 月份
    • 會計季度
    • 會計半年度
  3. [會計季度] 屬性關聯性從 [日期] 屬性拖曳到 [月份] 屬性的 [<新增屬性關聯性>] 標記,然後將這個屬性的 [RelationshipType] 屬性的值設為 [Rigid]

  4. [會計半年度] 屬性關聯性從 [日期] 屬性拖曳到 [會計季度] 屬性的 [<新增屬性關聯性>] 標記,然後將這個屬性的 [RelationshipType] 屬性的值設為 [Rigid]

  5. [會計年度] 屬性關聯性從 [日期] 屬性拖曳到 [會計半年度] 屬性的 [<新增屬性關聯性>] 標記,然後將這個屬性的 [RelationshipType] 屬性的值設為 [Rigid]

在 [日曆時間] 階層中定義屬性的屬性關聯性

在日曆時間階層中定義屬性的屬性關聯性

  1. [屬性] 窗格中,依序展開 [月份][日曆季][日曆半年]

  2. [日曆季] 屬性關聯性從 [日期] 屬性拖曳到 [月份] 屬性的 [<新增屬性關聯性>] 標記,然後將這個屬性的 [RelationshipType] 屬性的值設為 [Rigid]

  3. [日曆半年] 屬性關聯性從 [日期] 屬性拖曳到 [日曆季] 屬性的 [<新增屬性關聯性>] 標記,然後將這個屬性的 [RelationshipType] 屬性的值設為 [Rigid]

  4. [日曆年] 屬性關聯性從 [日期] 屬性拖曳到 [日曆半年] 屬性的 [<新增屬性關聯性>] 標記,然後將這個屬性的 [RelationshipType] 屬性的值設為 [Rigid]

在 [地理位置] 階層中定義屬性的屬性關聯性

在地理位置階層中定義屬性的屬性關聯性

  1. 請針對 [地理位置] 維度開啟維度設計師,然後按一下 [維度結構] 索引標籤。

  2. [屬性] 窗格中,展開下列屬性:

    • [縣 (市)]
    • [地理位置索引鍵]
    • [郵遞區號]
    • [省份]
  3. [縣 (市)] 屬性關聯性從 [地理位置索引鍵] 屬性拖曳到 [郵遞區號] 屬性的 [<新增屬性關聯性>] 標記。

    因為縣 (市) 內的郵遞區號可能隨時間而改變,所以這個屬性的 [RelationshipType] 屬性的適當值是 [Flexible]

  4. [省份] 屬性 (Attribute) 關聯性從 [地理位置索引鍵] 屬性 (Attribute) 拖曳到 [縣 (市)] 屬性 (Attribute) 的 [<新增屬性關聯性>] 標記,然後將這個屬性 (Attribute) 的 [RelationshipType] 屬性 (Property) 的值設為 [Rigid]

  5. [國家 (地區)] 屬性 (Attribute) 關聯性從 [地理位置索引鍵] 屬性 (Attribute) 拖曳到 [省份 ] 屬性 (Attribute) 的 [<新增屬性關聯性>] 標記,然後將這個屬性 (Attribute) 的 [RelationshipType] 屬性 (Property) 的值設為 [Rigid]

  6. 將 [地理位置索引鍵] 屬性設為隱藏、無最佳化且無排序的屬性。

  7. 部署「Analysis Services 教學課程」專案。

本課程的下一項工作

定義未知的成員和 Null 處理屬性

請參閱

其他資源

定義及設定屬性關聯性
設定使用者自訂階層屬性

說明及資訊

取得 SQL Server 2005 協助