Cube 資料格 (Analysis Services - 多維度資料)
Cube 是由資料格所組成,而依據量值群組和維度來進行組織。 資料格代表 Cube 內每個維度之某個成員於 Cube 內的唯一邏輯交集。 例如,下圖所描述的 Cube 包含一個具有兩個量值的量值群組,並依 Source、Route 和 Time 這三個維度來進行組織。
在這個圖表中具有陰影的單一資料格是下列成員的交集:
Route 維度的 air 成員。
Source 維度的 Africa 成員。
Time 維度的 4th quarter 成員。
封裝量值。
分葉資料格與非分葉資料格
Cube 中資料格的值可以使用下列方式之一取得。 在上述範例中,儲存格中的值可以直接從 Cube 的事實資料表擷取,因為用來識別該儲存格的所有成員都是 分葉成員。 依階層而言,分葉成員沒有子成員,而且通常會參考維度資料表中的單一記錄。 這種儲存格稱為 分葉資料格。
不過,也可以使用 非分葉成員來識別儲存格。 非分葉成員是擁有一或多個子成員的成員。 在此狀況下,資料格的值通常是從與非分葉成員相關聯之子成員的彙總衍生。 例如,以下成員與維度的交叉點引用由彙總提供數值的資料格:
Route 維度的 air 成員。
Source 維度的 Africa 成員。
Time 維度的 2nd half 成員。
封裝成員。
Time 維度的 2nd half 成員就是非分葉成員。 因此,與它相關的所有值都必須是彙總值,如下列圖表所示。
假設 3rd quarter 和 4th quarter 成員的彙總就是總和,則所指定資料格的值就是 400,而這個值是上圖中所有具有陰影之分葉資料格的總和。 因為儲存格的值衍生自其他儲存格的匯總,所以指定的儲存格會被視為 非分葉儲存格。
針對使用自訂積存的成員和成員群組所衍生的資料格值以及自訂成員,都是以類似的方式處理。 然而,針對導出成員所衍生的資料格值完全是以用來定義導出成員的多維度運算式 (MDX) 運算式為基礎;在某些情況下,可能並未包含任何實際的資料格資料。 如需詳細資訊,請參閱 Parent-Child維度中的自訂匯總運算子、 定義自訂成員公式和 計算。
空資料格
並非 Cube 中的每個資料格都需要包含值;Cube 中可以有不具任何資料的交集。 因為並非在 Cube 中具有量值之維度屬性的每一個交集在事實資料表中都包含對應的記錄,所以這些交集 (稱為空資料格) 會經常出現在 Cube 中。 Cube 中空儲存格與 Cube 中儲存格總數的比例通常稱為 Cube 的 疏疏性 。
例如,下列圖表顯示之 Cube 的結構與本主題中的其他範例類似。 但在本範例中,第三季沒有空運往非洲的貨物,第四季沒有空運往澳洲的貨物。 事實資料表中沒有資料可支援那些維度和量值的交集;因此,那些交集的資料格會是空的。
在SQL Server Analysis Services中,空白儲存格是具有特殊品質的儲存格。 因為空資料格會扭曲交叉聯結、計數等的結果,所以許多 MDX 函數會針對計算用途提供忽略空資料格的能力。 如需詳細資訊,請參閱 MDX) 參考 (多維度運算式,以及 MDX (Analysis Services) 中的重要概念 。
安全性
資料格資料的存取是在角色層級的 Analysis Services 中管理,而且可以使用 MDX 運算式進行精細控制。 如需詳細資訊,請參閱 授與 Analysis Services) (維度資料的自訂存取 權,以及 授與 Analysis Services) (資料格資料的自訂存取 權。