計算のシミュレーションによる計算時間の見積り
Essbaseブロック・ストレージ・キューブのモデルで計算のシミュレーションを実行して、実際の計算にかかる時間を見積もることができます。これを実行するには、SET MSG ONLYおよびSET NOTICE HIGHを使用して計算スクリプトを実行し、完了時間をメモし、推定します。
計算スクリプトでSET MSG ONLYを使用して、計算のシミュレーションを実行できます。シミュレート計算により、同じデータとアウトラインに基づく実際の計算のパフォーマンスを分析するために役立つ結果が得られます。
SET NOTICE HIGHなどのコマンドでシミュレート計算を実行することで、それぞれの疎ディメンションの計算にかかる相対的な時間を把握できます。その後、1つ以上のディメンションで実際の計算を実行することで、フル計算にかかる時間を見積ることができます。これは、シミュレート計算の実行にかかる時間が、実際の計算の実行にかかる時間に比例するためです。
たとえば、計算を9:50:00 AMに開始し、最初の通知のタイムスタンプが09:50:10 AM、2番目のタイムスタンプが9:50:20 AMの場合、この部分の計算にはそれぞれ10秒かかったことがわかります。次に、最初の部分のみで実際の計算を実行し、その実行に30秒かかったことを確認した場合、その他の部分にも30秒かかることがわかります。合計2つのメッセージがあるとすると、実際の計算には約60秒(20 / 10 * 30 = 60秒)かかることになります。
次のトピックでは、シミュレート計算の実行方法、およびシミュレート計算を使用して計算時間を見積る方法について説明します。
計算のシミュレート
SET MSG ONLYおよびSET NOTICE HIGHコマンドを使用して計算スクリプトを実行し、アプリケーション・ログのタイムスタンプを書き留めて、Essbaseブロック・ストレージ・キューブのモデルで計算をシミュレートします。
計算時間を見積る前に、実際のキューブに基づいたデータ・モデル上でシミュレート計算を実行する必要があります。その後、アプリケーション・ログを確認して、計算にかかった時間を確認できます。
アプリケーション・ログの場所を学習するには、Essbaseプラットフォームの環境の場所を参照してください。
シミュレート計算を実行するには:
計算コマンドを参照します:
見積りの精度に影響する要因
Essbaseブロック・ストレージ・キューブのシミュレート計算に基づく見積りの精度は、ブロック密度やアウトライン構造などの要因によって影響を受ける可能性があります。
シミュレート計算では、バリエーションを引き起こす主要な要因が存在しない場合、約5%の正確な時間が戻されます。
これらの要因が存在する場合は、Essbaseでのシミュレート計算が30 - 40% (SET NOTICE HIGHによって生成されるメッセージの30 - 40%)に達したとき、この見積り手法によって計算時間がより厳密に予測されます。
連鎖的な影響による変動
計算時間の見積り手法としてSET MSG ONLYを使用する場合は、後でCALCNOTICE間隔と照らし合わせて検証する必要があります。この見積り手法の結果は、次のような連鎖的な影響によって変動します。
-
実際の集計プロセスによって、各ブロックのブロック密度に違いが発生し、そのため
-
Essbaseによって各ブロックがディスクに書き込まれる速度に違いが発生し、そのため
-
各ブロックがキャッシュで処理される速度に違いが発生し、そのため
-
実際の結果が、予想された計算時間と異なる場合があります。
アウトラインの構造による変動
実際の結果を予測とは大きく異なるものにする可能性のあるもう1つの要因は、アウトラインの構造です。CALCNOTICE間隔に基づいた計算では、アウトライン全体を通して処理時間のバランスが均等であることが前提とされます。このバランスを損う可能性のある要因に、次のような状況があります。
-
モデル内に他の疎ディメンションと比べて大きな疎ディメンションが1、2個含まれています。
-
大きいディメンションが、複数の共有ロールアップが発生する原因となるメンバー構成になっています。
結果に基づくアウトラインの変更
Essbaseブロック・ストレージ・キューブのモデルのシミュレート計算を見積もって分析したら、アウトラインを変更してパフォーマンスを改善できます。
アウトライン内の上から下へ、上位ブロックで最もパーセンテージの増加が少なくなるよう、次のように疎ディメンションを順序付けします。
-
モデルのフル・ロードの後の、レベル0のブロック: 100,000
-
疎ディメンション1のみを集計した状態の上位レベルのブロック: 1,000,000
-
疎ディメンション2のみを集計した状態の上位レベルのブロック: 3,000,000
-
疎ディメンション3のみを集計した状態の上位レベルのブロック: 10,000,000
-
疎ディメンション4のみを集計した状態の上位レベルのブロック: 300,000
-
疎ディメンション5のみを集計した状態の上位レベルのブロック: 5,700,000
例:
-
#4 (メンバー= 10,000、4レベル)
-
#1 (メンバー= 500、2レベル)
-
#2 (メンバー= 100、4レベル)
-
#5 (メンバー= 10,000、4レベル)
-
#3 (メンバー= 20、フラット)
シミュレート計算を使用して、上位ブロックのカウントを生成します。これらの数は、前述のアイテムの隣に示されている実際のディメンション・サイズにかかわらず、正確な場合があります。
注意:
メンバーの最大のカウントは、必ずしも有効な予測材料ではありません。
ハイブリッド・モードの使用を検討します。ハイブリッド・モード・キューブでは、ディメンションの順序を並べ替えるかわりに、解決順序を簡単にカスタマイズできます。