計算效能的設計

若要最佳化 Essbase 區塊儲存立方體的計算效能,請考慮資料區塊大小與密度的影響、公式與計算命令檔的效率,以及調整大綱特性的方式 (例如稀疏維度的順序、層次的使用及時間維度)。

您可以設定資料庫以最佳化計算效能。

網站的最佳組態取決於資料庫的性質和大小。請只使用下列主題中的資訊作為準則。

區塊大小與區塊密度

若要讓 Essbase 區塊儲存立方體具有最佳計算效能,請瞭解資料區塊大小與區塊密度如何影響效能與儲存。使用 Essbase Web 介面MaxL 複查區塊統計資料。

大小為 8 Kb 到 100 Kb 的資料區塊在大多數情況下都能提供最佳效能。

如果資料區塊小於 8 KB,則索引通常非常大,強制 Essbase 寫入並從磁碟擷取索引。此處理程序會減緩計算速度。

如果資料區塊大於 100 KB,則智慧型計算無法有效運作。請參閱區塊儲存立方體的智慧計算

若要最佳化計算效能和資料儲存,您可能需要重新排列資料庫的密集維度和稀疏維度組態,以平衡資料區塊密度和資料區塊大小。請記住這些建議:

  • 將資料區塊大小保持在 8 KB 到 100 KB 之間,並儘可能提高區塊密度。

  • 執行包含代表資料之立方體最具承諾組態的測試計算。檢查結果以決定產生最佳計算效能的組態。

  • 請考慮使用混合模式。在混合模式立方體中,您可以輕鬆地自訂解析順序,而不是重新排列維度順序。

使用 Essbase Web 介面MaxL ,檢視立方體的相關資訊,包括資料區塊的潛在和實際數目以及資料區塊大小。


立方體的儲存統計資料可在儲存體 > 統計資料中使用。影像顯示立方體「基本範例」的部分統計資料,包括:現有的區塊數目 374、區塊大小 (B) 2、112、現有的層次 0 區塊數目 177 等等。

使用 MaxL 檢視區塊統計資料的對等敘述句為:

query database appname.dbname get dbstats data_block;

稀疏維度順序

Essbase 區塊儲存立方體中,藉由將較小的稀疏維度放在大綱順序中,可以改善計算效能。

或者,請考慮使用混合模式。在混合模式立方體中,您可以輕鬆地自訂解析順序,而不是重新排列維度順序。

您可以變更大綱中標準 (非屬性) 稀疏維度的順序來改善計算效能。依包含的成員數目排序標準稀疏維度,請先放置包含最少成員的維度。此安排可改善:

  • 計算機快取的函式對於具有大型維度的大綱 (例如,包含 1000 個成員的大綱) 的效能提升約 10%。

  • 如果啟用平行計算,如果具有最多成員的標準稀疏維度是大綱中的最後一個標準稀疏維度,則較有可能使用平行計算。

增量載入的立方體

對於以資料累加 (定期) 載入的 Essbase 區塊儲存立方體,藉由將 Time 維度稀疏於大綱來改善計算效能。

許多公司會以增量方式載入資料。例如,公司可以每月載入該月的資料。

若要在以增量方式載入資料時最佳化計算效能,請將標記為時間的維度設為稀疏維度。如果時間維度為稀疏,則資料庫會包含每個期間的資料區塊。當您依期間載入資料時, Essbase 會存取較少的資料區塊,因為較少的區塊包含相關的期間。因此,如果您已啟用智慧型計算,則只會重新計算標示為已修改的資料區塊。例如,如果您載入三月的資料,則只會更新三月的資料區塊和三月的相依父項。

不過,讓時間維度在自然密集時變為稀疏,可能會顯著增加索引的大小,因為為了因應大型索引的實體 I/O 活動而使效能變慢。

如果標記為時間密集的維度,當您對稀疏維度執行部分資料載入時,仍會從智慧型計算獲得一些好處。例如,如果「產品」為稀疏,而您載入某項產品的資料,則 Essbase 只會重新計算受部份載入影響的區塊,雖然時間密集且已啟用智慧型計算

具有多個平面維度的大綱

Essbase 區塊儲存立方體在平面維度中具有數千個成員,則在大綱中新增層級可以改善計算效能。

如果立方體大綱有多個平面維度,則計算效能可能會受到影響。平面維度的父項很少,而且每個父項都有數千個子項;換句話說,平面維度有許多成員和少數層級。

您可以藉由將中間層級加入大綱,以改善具有多個平面維度之大綱的效能。

公式與計算指令碼

若要最佳化區塊儲存立方體的計算命令檔和公式,請採取步驟以減少 Essbase 透過資料區塊所進行的週期數。

您可以透過仔細分計算指令碼中的公式和維度,來大幅改善計算效能。如此一來,您可以確保 Essbase 在計算期間,會儘可能循環立方體中的資料區塊。

在計算命令檔中排序命令,讓資料庫計算盡可能簡單。請考慮將所有公式套用到大綱,並使用預設計算 (CALC ALL)。

請參閱開發區塊儲存立方體的計算命令檔計算通過