天天看點

SSAS系列——【03】多元資料(多元資料集對象)

1、什麼是Cube?

     簡單 Cube 對象由基本資訊、次元和路徑成本組組成。 基本資訊包括多元資料集的名稱、多元資料集的預設路徑成本、資料源和存儲模式等。次元是多元資料集中使用的實際次元組。所有次元都必須先在資料庫的次元集合中定義,然後才能在多元資料集中引用。路徑成本組是多元資料集中的路徑成本集。路徑成本組是具有常見資料源視圖和次元集的路徑成本的集合。路徑成本組是路徑成本的處理單元;可先對路徑成本組進行單獨處理,然後再浏覽。這個概念MSND解釋的非常清楚,也不難了解,姑且Copy貼上來。

2、路徑成本和路徑成本組

     路徑成本通常映射到事實資料表中的列。次元表中的屬性列可以用于定義路徑成本,但是這些路徑成本通常在聚合行為方面具有半累加性或非累加性。

SSAS系列——【03】多元資料(多元資料集對象)

圖 事實資料表中的路徑成本

     簡單 MeasureGroup 對象由基本資訊、路徑成本、次元和分區組成。基本資訊包括路徑成本組的名稱、路徑成本的類型、存儲模式和處理模式等。路徑成本是組成路徑成本組的實際路徑成本集。對于每個路徑成本,均有一個聚合函數定義、一個格式屬性定義、一個資料項源定義等其他定義。次元是用于建立已處理路徑成本組的多元資料集次元的子集。分區是已處理路徑成本組的實體拆分的集合。在多元資料集中,路徑成本按照其基礎事實資料表分組為多個路徑成本組。路徑成本組用于使次元和路徑成本互相關聯。路徑成本組還可用于将非重複計數作為其聚合行為的路徑成本。将每個非重複計數路徑成本放入自己的路徑成本組後,可優化聚合處理。

3、粒度和聚合函數

     在oo中,如果一個對象“車隊”的實作隻深入到“汽車”這個層次,而不是“發動機”“輪胎”這個層次,那麼前者比後者粒度大。

隻要能滿足需要,粒度當然越大越好,簡單實用。在資料倉庫中的粒度的概念同上。

     聚合函數用于庫表資料統計,如: sum, count, avg。這兒不用多說,在這兒每個路徑成本的聚合行為都由與該路徑成本關聯的聚合函數确定。

4、次元關系

      指的是次元和事實資料表在一定的次元粒度下的屬性。

正常次元關系

       星型模型,沒什麼好說的,上圖:

SSAS系列——【03】多元資料(多元資料集對象)

應用模型關系

     雪花型模型,上圖:

SSAS系列——【03】多元資料(多元資料集對象)

多對多元度關系

SSAS系列——【03】多元資料(多元資料集對象)

事實次元關系

     事實次元(通常稱為退化次元)是通過事實資料表而非次元表中的屬性列構造的标準次元。 有用的次元資料有時存儲在事實資料表中以減少重複。

5、計算

     終于講到一個我很感興趣的話題了,這兒的應該也是操作資料倉庫的核心之一。計算是一種多元表達式 (MDX) 表達式或腳本,用于在 SSAS中定義多元資料集中的計算成員、命名集或範圍配置設定。我的了解是,使用計算後可以在原有的一些路徑成本的基礎上生成新的路徑成本,在之後的浏覽cube的時候新的路徑成本将和原來的一起使用。使用腳本指令可以讓計算變得複雜靈活的滿足業務需求。

6、關鍵績效名額

      在業務術語中,關鍵績效名額 (KPI) 是一個用于測定業務績效的可計量路徑成本。一個簡單的KPI由基本資訊、目标、擷取的實際值、狀态值、走向值以及在其中檢視的KPI的檔案夾組成。例如,一個機關的銷售部門可以使用每月的毛利潤作為 KPI,但同一機關的人力資源部門可以使用每季度流失的雇員作為 KPI。 這是一個比較重要的名額,目前暫時了解到這個程度。

7、操作 Action

       操作的主要目的是為了提供給用戶端應用程式并可由用戶端應用程式使用的已存儲 MDX 語句。他是在伺服器端定義的用戶端的執行指令。我的了解和資料庫引擎中的存儲過程相似。

8、分區Partition

       分區是部分路徑成本組資料的容器。簡單的分區對象由基本資訊(名稱、存儲模式和處理模式)、切片定義、聚合設計等組成。SSAS使用分區來管理和存儲量度值組的資料和聚合。分區對多元資料集的業務使用者不可見。允許多元資料集的源資料和聚合資料分布在多個硬碟驅動器和多個伺服器計算機中。分區和極大的提高查詢性能、負載性能和多元資料集的易維護性。分區的結構必須與其路徑成本組的結構比對。

      分區存儲

      MOLAP、ROLAP、HOLAP

      主動緩存(分區)

     提供了多個主動緩存配置選項,您可以利用它們來最大化性能,最小化滞後時間以及安排處理。

      遠端分區

     遠端分區的資料存儲在另一個 Microsoft SQL Server Analysis Services 執行個體上,而沒有存儲在包含分區定義(中繼資料)及其父多元資料集的執行個體上。

     可寫入的分區

      都說使用了分區後可提高查詢性能,到底是如何提高性能的呢?

9、透視

     透視是多元資料集的隻讀視圖。透視可控制多元資料集所包含對象的可見性。 可在透視中顯示或隐藏以下對象:

次元、屬性、層次結構、路徑成本組、路徑成本、關鍵績效名額 (KPI)、計算(計算成員、命名集和腳本指令)、操作。