摘錄於MSDN MDX 的一些重要概念html
1. MDX 介紹數據庫
- 多維表達式 (MDX) 是用於在 Microsoft SQL Server Analysis Services (SSAS) 中處理和檢索多維數據的查詢語言.
- MDX 基於 XML for Analysis (XMLA) 規範, 並帶有特定於 SQL Server 2005 Analysis Services 的擴展.
- MDX 使用由標識符, 值, 語句, 函數和運算符組成的表達式, Analysis Services 能夠經過計算表達式來檢索某個對象(如集或成員)或標量值(如字符串或數字)
2. MDX 查詢和表達式能夠用來執行哪些操做? 安全
- 從 SQL Server Analysis Services 多維數據集向客戶端應用程序返回數據
- 設置查詢結果的格式
- 執行多維數據集設計任務, 包括定義計算成員, 命名集, 範圍分配和關鍵性能指標 (KPI)
- 執行管理任務, 包括維度和單元安全性
3. 數據庫維度 Database Dimension - 數據庫維度是與某個鍵屬性相關的維度屬性的集合, 而該鍵屬性又與度量值維度中的事實數據相關.
4. 維度屬性 (Dimension attribute) - 被綁定到維度表中的一個或多個列幷包含成員, 維度屬性能夠包含客戶名稱, 月份名稱和產品名稱.
- 5. 成員 (Member) - 成員是維度屬性(包括度量值維度)的值. 層次結構中的成員能夠是葉成員, 父成員, 數據成員或(所有)成員.
- 6. 度量值 (Measure) - 來自事實數據表的值, 也稱爲「事實數據". 度量值維度的值有時也通稱爲"成員", 度量值一般是數值, 但也能夠是字符串值.
- 7. Measures 維度 (Measures dimension) - 度量值維度是包含多維數據集中全部度量值的維度. 度量值維度是一種特殊的維度, 其中的成員一般是根據各個維度屬性(存在指定的度量值)的當前成員(一般採用求和或計數方式)進行聚合.
- 8. 度量值組 (Measure Group) - 度量值組是 SQL Server Analysis Services 多維數據集中的相關度量值集合(一般是來自同一事實數據表的度量值). 在 SQL Server Analysis Services 中, 一個多維數據集可包含多個度量值組.
- 9. (所有) 成員 ((All) member) -「(所有)」成員是屬性層次結構或用戶定義的層次結構中的全部成員的計算值.
- 10. 計算成員 (Calculated member) - 計算成員是在查詢時定義和計算的維度成員. 能夠在用戶查詢或 MDX 計算腳本中定義計算成員, 並將其存儲在服務器上, 一個計算成員對應於定義它們的維度中的多個維度錶行.
- 11. 數據成員 (Data member) - 數據成員是在父子層次結構中與父成員相關聯的子成員, 數據成員包含其父成員的數據值, 而不是該父成員的子級的聚合值.
- 12. 父成員 (Parent member) -父成員是父子層次結構中的成員, 包含其子級的聚合值.
- 13. 葉成員 (leaf member) - 葉成員是層次結構中不包含子級的成員.
- 14. 子成員 (Child member) - 子成員是層次結構中位於頂層下面的成員.
- 15. 鍵屬性 (Key attribute) - 數據庫維度的"鍵屬性"是維度中的全部非鍵屬性(以直接或間接方式)所連接到的屬性. 鍵屬性一般也是粒度屬性.
- 16. 粒度屬性 (Granularity attribute) - 多維數據集維度的屬性, 它將維度連接到度量值維度內度量值組中的事實數據. 若是粒度屬性和鍵屬性爲不一樣的屬性, 則非鍵屬性必須直接或間接地連接到粒度屬性. 在多維數據集中, 粒度屬性定義維度的粒度.
- 17. 多維數據集維度 (Cube dimension) - 多維數據集維度是多維數據集中的數據庫維度實例.
- 18. 屬性層次結構 (Attribute hierarchy) - 屬性層次結構是包含如下級別的屬性成員層次結構 :
-
- 包含全部非重複屬性成員的葉級別, 葉級別的各個成員也稱爲"葉成員".
- 中間級別(若是屬性層次結構爲父子層次結構).
- 可選的"(所有)"級別 (IsAggregatable=True), 它包含屬性層次結構的葉成員的聚合值. (所有)」級別的成員也稱爲「(所有)」成員.
默認狀況下, 將爲每一個維度屬性定義屬性層次結構 (AttributeHierarchyEnabled=True).屬性層次結構默認爲可見 (AttributeHierarchyVisible=True).服務器
- 19. 均衡層次結構 (Balanced hierarchy) -「均衡層次結構」是頂級成員與任何葉成員之間存在相同級別數的層次結構.
- 20. 不齊整層次結構 (Ragged hierarchy) - 非均衡層次結構 (Unbalanced hierarchy) - 非均衡層次結構是頂級與葉級之間存在不一樣級別數的層次結構, 父子層次結構便是不齊整層次結構的一個例子, 非均衡層次結構也稱爲"不齊整層次結構".
- 21. 父子層次結構 (Parent-child hierarchy) - 是一種將維度屬性設置爲 parent 類型的特殊的屬性層次結構, 父子層次結構是由子成員和父成員構成的非均衡層次結構, 父子層次結構包含如下級別:
-
- 包含父成員子級的子級別, 父成員的子級包含聚合到父成員的屬性成員(包括數據成員).
- 包含父成員的中間級別
- 可選的「(所有)」級別 (IsAggregatable=True), 它包含父子層次結構葉成員的聚合值,"(所有)" 級別的成員也稱爲"(所有)"成員.
- 每一個維度中只能存在一個父子層次結構, 而且必須與鍵屬性相關.
- 22. 用戶定義的層次結構 (User-defined hierarchy) - 是屬性層次結構的均衡層次結構, 旨在幫助用戶瀏覽多維數據集數據. 用戶定義的層次結構不添加到多維數據集空間, 在某些狀況下能夠隱藏用戶定義的層次結構中的級別並使其以非均衡的形式顯示.
- 23. 屬性關係 (Attribute relationship) - 是屬性間的一對多關係, 例如州省市自治區和城市維度屬性間的關係.
- 24. 成員屬性 (Member property) - 成員屬性 是特性成員的屬性, 例如客戶的性別或產品的顏色.
- 25. 單元 (Cell) - 是度量值維度成員的成員與多維數據集中各個屬性層次結構的成員相交處所在的空間.
-
- 度量值維度的成員能夠是葉成員(單個事實數據)或聚合成員(例如,特定年份聚合的銷售額).
- 維度的成員能夠是葉成員、數據成員、父成員或「(所有)」成員.
- 26. 多維數據集空間 (Cube space) - 是多維數據集屬性層次結構的成員與多維數據集的度量值的交集.
- 27. 子多維數據集 (Subcube) - 是表示多維數據集的篩選視圖的多維數據集子集, 可使用 MDX 計算腳本中的 Scope 語句或 MDX 查詢中的嵌套 select 語句定義子多維數據集.
- 28. 帶有嵌套 select 語句的子多維數據集 (Subcube with Subselect) - 用 MDX 查詢中的嵌套 select 語句定義的子多維數據集包含符合子多維數據集定義的全部成員, 其結果以下:
-
- 包含層次結構的「(所有)」成員與包含層次結構的每一個葉成員的結果是相同的
- 包含任何成員將包括其祖先和後代
- 包含用戶定義的層次結構中某級別的每一個成員將包含該用戶定義的層次結構中的全部成員,但可排除不與此級別成員共存的其餘層次結構的成員(例如不包含客戶的城市).
- 多維數據集中的每一個「(所有)」成員始終存在於從該多維數據集建立的子多維數據集中.
- 子多維數據集中的聚合值將進行直接求和.