計算時間を推定するための計算のシミュレート
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%の正確な時間を戻す必要があります。
When these factors are present, this estimating technique more closely predicts calculation time when Essbase reaches 30%–40% of the simulated calculations (30%–40% of the messages generated by SET NOTICE HIGH).
連鎖的な影響による変動
計算時間の見積り手法として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、フラット)
シミュレート計算を使用して、上位ブロックのカウントを生成します。これらの数は、前述のアイテムの隣に示されている実際のディメンション・サイズにかかわらず、正確な場合があります。
注意:
メンバーの最大のカウントは、必ずしも有効な予測材料ではありません。
ハイブリッド・モードの使用を検討してください。ハイブリッド・モード・キューブでは、ディメンションの順序を再配置するのではなく、解決順を簡単にカスタマイズできます。