根據預設,會針對維度中的每個屬性建立屬性階層,而且每個階層都可用於維度事實數據。 此階層包含「全部」層級,以及包含階層所有成員的詳細層級。 如您所瞭解,您可以將屬性組織成使用者定義的階層,以提供 Cube 中的導覽路徑。 在某些情況下,您可能會想要停用或隱藏某些屬性及其階層。 例如,某些屬性,如社會安全號碼或國家身份證號碼、薪資率、出生日期和登入資訊,並不是用來讓使用者對 Cube 資訊進行維度設定的屬性。 相反地,這個資訊通常只被視為特定屬性成員的細節。 您可能想要隱藏這些屬性階層,讓屬性只顯示為特定屬性的成員屬性。 您可能也希望讓其他屬性的成員,例如客戶名稱或郵遞區號,僅在透過使用者層級檢視時才可見,而不是透過屬性層級獨立檢視。 這樣做的其中一個原因可能是屬性階層中的許多不同成員。 最後,若要改善處理效能,您應該停用使用者不會用於流覽的屬性階層。
AttributeHierarchyEnabled 屬性的值會決定是否建立屬性階層。 如果此屬性設定為 False,則不會建立屬性階層,而且屬性不能當做用戶階層中的層級使用;屬性階層僅以成員屬性的形式存在。 不過,停用的屬性階層仍可用來排序另一個屬性的成員。 如果 AttributeHierarchyEnabled 屬性的值設定為 True,那麼 AttributeHierarchyVisible 屬性的值會決定屬性階層是否可見,這與屬性在使用者定義階層中的使用無關。
開啟屬性階層時,您可能想要指定下列三個額外屬性的值:
IsAggregatable
預設情況下,所有屬性階層都會定義一個(All)層級。 若要停用已啟用屬性階層的 [全部] 層級,請將此屬性的值設定為 False。
備註
其 IsAggregatable 屬性設定為 false 的屬性只能作為使用者定義階層的根節點,而且必須指定預設成員(否則 Analysis Services 引擎會為您選擇一個成員)。
屬性層級排序
根據預設,Analysis Services 會在處理期間排序已啟用屬性階層的成員,然後依 OrderBy 屬性的值儲存成員,例如依 Name 或 Key。 如果您不在意排序,您可以將此屬性的值設定為 False,以提高處理效能。
屬性階層優化狀態
根據預設,Analysis Services 會在處理期間為每個啟用的屬性階層建立索引,以改善查詢效能。 如果您不打算使用屬性階層進行流覽,您可以將此屬性的值設定為 NotOptimized 來增加處理效能。 不過,如果您使用隱藏階層做為維度的索引鍵屬性,建立屬性成員的索引仍會改善效能。
如果屬性階層已停用,則不適用這些屬性。
在本主題的工作中,您將停用員工維度中不會用於瀏覽的社會安全號碼和其他屬性。 接著,您將隱藏 [客戶] 維度中的客戶名稱和郵遞區編碼屬性階層。 這些階層中的大量屬性成員會使流覽這些階層的速度非常慢,與用戶階層無關。
在員工維度中設定屬性階層屬性
切換至員工維度的維度設計器,然後點擊 [瀏覽] 索引標籤。
確認下列屬性階層出現在 [ 階層 ] 清單中:
基底費率
出生日期
登入標識碼
經理社會安全號碼
SSN
切換至 [ 維度結構] 索引標籤,然後在 [ 屬性 ] 窗格中選取下列屬性。 您可以按下每個量值,同時按住 CTRL 鍵來選取多個量值:
基底費率
出生日期
登入標識碼
經理社會安全號碼
SSN
在 [屬性] 視窗中,將所選屬性的 AttributeHierarchyEnabled 屬性值設定為 False 。
請注意,在 [ 屬性] 窗格中,每個屬性的圖示已變更,表示屬性未啟用。
下圖顯示所選屬性的 AttributeHierarchyEnabled 屬性設定為 False。
在組建 功能表上,按一下部署 Analysis Services 教學課程。
處理成功完成時,切換至 [ 瀏覽器] 索引標籤 ,按兩下 [ 重新連線],然後嘗試流覽修改的屬性階層。
請注意,已修改屬性的成員無法在 階層 列表中作為屬性層級進行瀏覽。 如果您嘗試將其中一個停用的屬性階層新增為用戶階層中的層級,您會收到錯誤,通知您必須啟用屬性階層才能參與使用者定義的階層。
在客戶維度中設定屬性階層屬性
切換至 [客戶] 維度的 [維度設計師],然後按兩下 [瀏覽器] 索引 卷 標。
確認下列屬性階層出現在 [ 階層 ] 清單中:
全名
郵遞區號
切換至 [ 維度結構 ] 索引標籤,然後使用 CTRL 鍵同時選取多個屬性,在 [ 屬性 ] 窗格中選取下列屬性:
全名
郵遞區號
在 [屬性] 視窗中,針對選取的屬性,將 AttributeHierarchyVisible 屬性的值設定為 False 。
因為這些屬性階層的成員將用於維度事實數據,因此排序和優化這些屬性階層的成員將會改善效能。 因此,不應變更這些屬性的屬性。
下圖顯示 AttributeHierarchyVisible 屬性設定為 False。
將 [郵遞區/ 10000編碼] 屬性從 [屬性] 窗格拖曳到 [階層和層級] 窗格中的 [客戶地理位置] 用戶階層中,緊接在 [城市] 層級底下。
請注意,隱藏的屬性仍然可以成為用戶階層中的層級。
在組建 功能表上,按一下部署 Analysis Services 教學課程。
部署成功完成時,切換至 [客戶] 維度的 [瀏覽器] 索引 標籤 ,然後按兩下 [ 重新連線]。
嘗試從 [ 階層 ] 清單中選取其中一個已修改的屬性階層。
請注意,已修改的屬性階層都不會出現在 [ 階層 ] 清單中。
在 [ 階層 ] 清單中,選取 [客戶地理位置],然後在瀏覽器窗格中流覽每個層級。
請注意,隱藏的層級 [郵遞區號 ] 和 [ 完整名稱] 會顯示在使用者定義的階層中。