建立最佳化混合模式立方體

基準、計算快取、解決順序以及資料分配最佳化立方體公用程式協助您微調立方體以提升效能。

利用以下四種「最佳化立方體」公用程式建立最佳化的混合模式立方體:
公用程式 傳回的資料
基準 立方體效能度量
解決順序 立方體中成員的解決順序
計算快取 可協助您為立方體選擇最佳計算器快取值的資料
資料分配 可協助您選擇分配稀疏維度與密集維度的資料

最佳化混合模式立方體的基準度量

立方體設計工具中「基準」公用程式所追蹤的指標,顯示 Essbase 混合模式資料庫的執行方式。您可以使用這些度量判斷基準效能,然後量測所進行的後續最佳化效益。

在使用「基準線」公用程式之前,請先建立應用程式工作簿,包括大綱、組態設定值、計算命令檔以及要包括在立方結構中的查詢。

當您執行「基準線」公用程式時,它會建立立方體、載入選取的資料檔、執行選取的計算命令檔,以及執行應用程式工作簿中所包含查詢。務必要有代表性的使用者查詢範例。

「基準」公用程式會建立應用程式和作業程序的儀表板,以協助您設計和最佳化立方結構。在您實行變更並重建立方體時,基準可協助您比較立方體修改的疊代。在應用程式工作簿的 Essbase.Stats.Baseline 頁籤中,基準公用程式會針對每個疊代在新表格附加最新資料。

準備對混合模式立方體執行最佳化立方體基準公用程式

執行「基準」公用程式之前,請先完成下列工作:

  1. 設計及建立應用程式工作簿。

    若要建立應用程式工作簿,可以下載範例應用程式工作簿,然後依據需求進行修改。請參閱探索儲藏庫範本

  2. 清除 Smart View 中繼資料應用程式工作簿中的查詢工作表:

    1. 前往 Smart View 功能區。
    2. 選擇工作表資訊,然後按一下刪除

    如果查詢工作表有來自不同伺服器的中繼資料,立方結構設計工具會顯示警告並暫停處理,直到您回應。

  3. 使用下列應用程式組態設定值來修改 Cube.Settings 工作表:

    設定 數值
    ASODYNAMICAGGINBSO FULL
    HYBRIDBSOINCALCSCRIPT NONE
    INDEXCACHESIZE 100M
    DATACACHESIZE 100M
    ASODEFAULTCACHESIZE 100
    MAXFORMULACACHESIZE 102400
    INPLACEDATAWRITEMARGINPERCENT 20
    CALCCACHEDEFAULT 200000
    LONGQUERYTIMETHRESHOLD -1

混合模式立方體執行最佳化立方體基準公用程式

「基準」公用程式可識別密集和稀疏維度、資料大小 (PAG 和 IND 檔案大小)、區塊大小,以及資料、索引和計算器快取大小。此外,也提供資料載入、計算及查詢的度量。

執行「基準」公用程式:

  1. 立方體設計工具功能區中,選取管理作業 > 最佳化立方體

  2. (選擇性) 按一下自訂以選擇要執行的基準作業。

    • 建置立方體 - 建置應用程式工作簿中所定義的立方體並載入資料表中的資料。
    • 執行計算命令檔 - 執行應用程式工作簿之每個計算工作表中所定義的計算命令檔。

      計算工作表會依照它們在應用程式工作簿中的顯示順序執行。「最佳化立方體」會忽略計算工作表的執行計算特性。

      「最佳化立方體」只支援可從「工作」執行的計算命令檔。您無法執行相依於目前 Smart View 方格相關資訊環境的計算指令碼 (例如,使用 @GRIDTUPLES 函數定義的計算,或是使用以 <svLaunch> 標記定義的執行時期替代變數之計算)。

    • 執行查詢 - 執行「查詢」工作表中的查詢。
    • 全部匯出 - 將立方體中的所有資料匯出至立方體目錄。系統記錄匯出時間和檔案大小之後,便會自動將匯出檔案刪除。
  3. 按一下建立基準

    如果您沒有應用程式工作簿中的資料表,系統會提示您從目錄選取資料並載入規則檔案。將資料檔和規則檔儲存在目錄中的共用目錄是很好的做法,如此這些檔案在您重建立方體時都不會遺失。

    建置立方體需要一些時間。

    Essbase 會產生 Essbase.Stats.Baseline 工作表並將其新增至工作簿。

  4. 在應用程式工作簿中檢視 Essbase.Stats.Baseline 工作表。

    • 工作表的第一個表格顯示資料載入檔的大小、資料載入儲存格數目、區塊大小及快取大小。
      Essbase.Stats.Baseline 工作表中第一個表格的圖像,當中顯示資料庫度量。

    • 基準表格中的色彩主要識別每個維度的儲存類型:
      • 綠色 - 密集維度
      • 紅色 - 至少有一個動態公式的稀疏維度
      • 藍色 - 有聚總但無動態父項和公式的稀疏維度
      • 金色 - 其他稀疏維度

      Essbase.Stats.Baseline 工作表中第二個表格的圖像,當中顯示密集與稀疏維度、總計及已儲存的成員數目。

    • 載入與計算下,「指令檔:」列會識別哪些計算指令檔需要最長的時間才能完成,因此可能需要進行最佳化。
      Essbase.Stats.Baseline 工作表中第三個表格的圖像,當中顯示載入與計算時間、區塊數、資料及所建立的索引檔大小。

    • 查詢區塊讀取底下,顯示查詢所要求的資料量。

      將動態維度變更為已儲存維度可減少該大小。

    • 查詢公式下,它會顯示在查詢中執行的公式數目。

      複查計算成員的解決順序並進行變更以減少公式執行次數並提升效能,或考慮儲存包含公式的計算成員以減少公式執行次數並提升效能。


      Essbase.Stats.Baseline 工作表中第四個表格的圖像,當中顯示查詢時間、已讀取的區塊數及所執行的公式數。

    • 工作表的最後一個表格顯示匯出時間與檔案大小。
      Essbase.Stats.Baseline 工作表中第五個表格的圖像,當中顯示匯出時間與檔案大小。

最佳化混合模式立方體的解決順序

立方體設計工具中的「解決順序」公用程式可讓您以視覺方式呈現 Essbase 應用程式中使用的解決順序流程,這可協助您診斷與公式相關的查詢效能問題。

執行「最佳化立方體解決順序」公用程式:

  1. 立方體設計工具功能區中,選取管理作業 > 最佳化立方體
  2. 按一下解決順序
  3. 檢視應用程式工作簿的 Essbase.Stats.SolveOrder 工作表。

使用 Essbase.Stats.SolveOrder 工作表中的資訊調整解決順序,將查詢效能最佳化。請參閱混合模式的立方結構最佳化混合模式的解析順序

最佳化混合模式立方體的計算器快取

立方體設計工具中的「計算快取」公用程式建議使用 Essbase 混合模式區塊儲存立方體的最佳計算機快取設定。

計算機快取適用於區塊儲存和混合模式立方體,但不適用於 ASO 立方體。對計算命令檔中的整個稀疏維度進行計算時,使用正確的計算器快取設定,對效能的提升可說至關重要。計算整個稀疏維度是一種減少查詢所需區塊數的技術。

計算器快取的預設值為 200,000 個位元組。最大值為 200,000,000 個位元組。

計算器快取的大小應設為剛好可包含計算命令檔中所計算的稀疏維度。若將計算器快取設為大於所需的大小,對效能會有負面的影響。

使用「計算快取」公用程式將計算器快取最佳化:

  1. 若要減少查詢所需的資料大小,請使用計算命令檔計算並儲存一或多個維度。

    最佳的選擇通常是最大的維度。

  2. 將該維度搬移為大綱中的第一個稀疏維度。

    計算器快取演算法會選取要放在快取中的稀疏維度 (從第一個稀疏維度開始)。

  3. 在不載入資料的情況下建置立方體。

    必須建置立方體,「計算快取」公用程式才能夠運作。

  4. 執行「計算快取」公用程式。

    公用程式會在每個維度旁邊顯示正確的快取設定 (最多 20 MB)。若超過 20 MB,就會顯示 N/A。一般來說,只需要設定幾個 MB 就足夠了。

    1. 立方體設計工具功能區中,選取管理作業 > 最佳化立方體
    2. 按一下計算快取
    3. 檢視應用程式工作簿的 Essbase.Stats.CalcCache 工作表。您可以在 Essbase.Stats.CalcCache 工作表的計算快取資料欄中檢視建議的計算機快取設定值。
      最佳化立方體類型應用程式工作簿中 Essbase.Stats.CalcCache 工作表的圖像。

  5. Essbase.Stats.CalcCache 工作表中尋找您計算並儲存於步驟 1 之稀疏維度旁的計算快取設定。

  6. 如果您在步驟 1 中計算一個維度,請將計算器快取預設為該值。如果您在步驟 1 中計算一個以上的維度,請從計算的值中選擇最高的計算快取值。

    將此值新增至 Cube.Settings 工作表的「應用程式設定值」區段。或者,也可以在 Essbase Web 介面設定應用程式組態設定值中的值。建議四捨五入,以便有多一點的空間。

最佳化混合模式立方體的資料分配

立方體設計工具中的資料分佈公用程式可協助您更加瞭解 Essbase 應用程式中的資料,讓您能夠針對如何最佳化立方體做出重要的決策。

瞭解資料有助您判斷下列事項:

  • 哪些是密集維度,哪些是稀疏維度。

    密集維度定義區塊儲存應用程式中的區塊。區塊最好應包含大多數資料的維度,並代表該應用程式的主要查詢版面配置。若是財務報告應用程式,這通常表示「時間」與「帳戶」必須是密集維度。

  • 哪些維度應使用計算命令檔計算及儲存。

    影響查詢效能的其中一個因素為查詢所需的區塊數目。所需的區塊數目若過高,查詢效能將會受到影響。若要減少所需的區塊數目,請預先計算一或多個稀疏維度的上層成員。首先,將上層成員的維度儲存屬性設定為已儲存的屬性 (「儲存」或「不共用」),然後使用 CALC DIMAGG 執行聚總該維度的計算命令檔。

  • 哪些維度應作為 FIXPARALLEL 命令中的作業維度。

    若要最佳化用於彙總已儲存稀疏維度的計算命令檔,請使用 FIXPARALLEL 命令。選取正確的作業維度非常重要。作業維度決定了如何將計算分割為繫線並以平行方式執行。一或多個稀疏維度應包含大多數的資料以減少空的作業,而且資料應平均分配。

執行「資料分配」公用程式:

  1. 立方體設計工具中,選取管理工作 > 最佳化立方體

  2. 選取資料分配

    此程序的執行時間可能會很長,特別是對於較大型的模型。

  3. 檢視 Essbase.Stats.DataDist 工作表。


最佳化立方體工作簿中 Essbase.Stats.DataDist 頁籤的圖像,當中顯示資料分配統計資料。


最佳化立方體工作簿中 Essbase.Stats.DataDist 頁籤的圖像,當中顯示區塊數和每一區塊的儲存格數。