Cube 數據格 (Analysis Services - 多維度數據)
適用於: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
Cube是由以量值群組和維度組織的單元格所組成。 單元格代表 Cube 中每個維度中一個成員之 Cube 中的唯一邏輯交集。 例如,下圖所述的 Cube 包含一個量值群組,其具有兩個量值,並依三個維度組織,名為 Source、Route 和 Time。
此圖表中的單一陰影儲存格是下列成員的交集:
Route 維度的空中成員。
Source 維度的非洲成員。
Time 維度的第 4 季成員。
Packages 量值。
分葉和非分葉單元格
Cube 中儲存格的值可以用數種方式之一取得。 在上一個範例中,單元格中的值可以直接從 Cube 的事實數據表擷取,因為用來識別該儲存格的所有成員 分葉成員。 分葉成員沒有子成員、階層式說話,而且通常會參考維度數據表中的單一記錄。 這種儲存格稱為 分葉儲存格。
不過,也可以使用 非分葉成員來識別儲存格。 非分葉成員是具有一或多個子成員的成員。 在此情況下,單元格的值通常衍生自與非分葉成員相關聯的子成員匯總。 例如,下列成員和維度的交集是指匯總提供其值的數據格:
Route 維度的空中成員。
Source 維度的非洲成員。
Time 維度的後半部分成員。
Packages 成員。
Time 維度的後半部成員是非分葉成員。 因此,與其相關聯的所有值都必須是匯總的值,如下圖所示。
假設第 3 季和第 4 季成員的匯總是加總,則指定的儲存格值為 400,這是上圖中陰影的所有分葉單元格總計。 由於儲存格的值衍生自其他儲存格的匯總,因此指定的儲存格會被視為 非分葉單元格。
除了自定義成員之外,使用自定義匯總和成員群組的成員衍生的數據格值也會以類似的方式處理。 不過,針對導出成員衍生的數據格值完全以用來定義匯出成員的多維度表達式 (MDX) 表達式為基礎;在某些情況下,可能未涉及實際的數據格數據。 如需詳細資訊,請參閱 Parent-Child 維度中的自定義匯總運算子、定義自訂成員公式和 計算。
空白儲存格
Cube 中的每個數據格都不需要包含值;Cube 中可以有沒有數據的交集。 這些交集,稱為空白數據格,經常發生在 Cube 中,因為 Cube 內具有量值之維度屬性的每個交集都包含事實數據表中的對應記錄。 Cube 中空單元格與 Cube 中儲存格總數的比例通常稱為 cube 的 疏疏。
例如,下圖所示的 Cube 結構與本主題中的其他範例類似。 然而,在此範例中,第三季度或第四季度沒有空運到非洲。 事實資料表中沒有資料可支援這些維度和量值的交集:因此,這些交集上的儲存格是空的。
在 SQL Server SQL Server Analysis Services 中,空白數據格是具有特殊品質的儲存格。 由於空白儲存格可能會扭曲交叉聯結、計數等等的結果,因此許多 MDX 函式會提供忽略空白儲存格的能力,以便進行計算。 如需詳細資訊,請參閱
安全
數據格數據的存取是在角色層級的 SQL Server Analysis Services 中管理,而且可以使用 MDX 表達式進行精細控制。 如需詳細資訊,請參閱 授與維度數據的自定義存取權(Analysis Services),授與數據格數據的自定義存取權。