機械翻訳について

取得時間への影響の軽減

密ディメンションのメンバーを動的に計算する場合の取得時間の増加は、メンバーに複雑な式が含まれていないかぎり重要ではありません。 疎ディメンションのメンバーを「動的計算」としてタグ付けすると、取得時間が大幅に増加する可能性があります。

次の各項では、「動的計算」メンバーのデータベースへの影響を分析および管理する方法について説明します。

ノート:

問合せの取得に最も大きな影響を与える関数のリストは、「メンバー・セット関数とパフォーマンスの選択」を参照してください。

取得ファクタの表示

取得時間の増加を見積もるために、Essbaseでは、アウトラインの保存時にデータベース・アウトラインの取得ファクタが計算されます。 Essbaseでは、動的に計算されたデータ・ブロックに基づいてこの取得ファクタが計算されますが、これはEssbaseで最もコストがかかります。 取得係数では、集計のみが考慮されます。 formulaの取得の影響は考慮されません。

取得ファクタは、最もコストの高いブロックを計算するためにEssbaseがディスクまたはデータベースから取得する必要があるデータ・ブロックの数です。 データベースに密ディメンションの「動的計算」メンバーのみがある(疎ディメンションの「動的計算」メンバーがない)場合、取得係数は1です。

取得係数が高い(2000を超える)アウトラインでは、ユーザーがデータを取得するときに長い遅延が発生する可能性があります。 ただし、実際の取得時間への影響は、ユーザーが動的に計算したデータ値の数によっても異なります。 取得係数は単なるインジケータです。 一部のアプリケーションでは、データベース・サイズと索引サイズが削減されるため、「動的計算」メンバーを使用すると取得時間が短縮される場合があります。

Essbaseでは、取得係数の値がアプリケーション・ログに表示されます。

次のサンプルのようなメッセージは、取得係数を示しています:

[Wed Sep 20 20:04:13 2000] Local/Sample///Info (1012710)
Essbase needs to retrieve [1] Essbase kernel blocks in order
to calculate the top dynamically-calculated block.

このメッセージは、最もコストの高い動的に計算されたデータ・ブロックを計算するために、Essbaseでブロックを取得する必要があることを示しています。

動的計算済メンバーの要約の表示

「動的計算」メンバーをデータベース・アウトラインに追加してアウトラインを保存すると、Essbaseには、「動的計算」としてタグ付けされているメンバーの数のサマリーが表示されます。 Essbaseでは、アプリケーション・ログにサマリーが表示されます。

取得バッファ・サイズの増加

デフォルトでは、取得バッファ・サイズは10 KBです。 ただし、取得バッファ・サイズを10 KBより大きい値に設定すると、取得時間が短縮される場合があります。

動的計算機キャッシュの使用

デフォルトでは、Essbaseは密ディメンション(問合せなど)の「動的計算」メンバーを計算するときに、計算に必要なすべてのブロックを動的計算機キャッシュと呼ばれるメモリー内の領域に書き込みます。 Essbaseは、これらのブロックを動的計算機キャッシュに書き込むときに、密ディメンションのすべての「動的計算」メンバーを含むように拡張します。

問合せに密ディメンションの2パス計算メンバーが含まれている場合、問合せには取得されたブロックごとに動的計算機キャッシュが1つ必要です。

Essbase動的計算機キャッシュを使用すると、動的計算のメモリー使用量を集中管理できます。 また、動的計算機キャッシュでデータ・ブロックを管理すると、メモリー割当てを実行するためのオペレーティング・システムへのコール数が減少するため、全体的なメモリー領域要件が減少し、パフォーマンスを向上させることができます。

ノート:

動的計算機キャッシュと計算機キャッシュでは、異なるアプローチを使用して計算パフォーマンスを最適化します。

動的計算機のキャッシュ使用状況の確認

Essbaseでは、データ取得ごとに2つのメッセージがアプリケーション・ログに書き込まれます。 次の例では、最初のメッセージに取得に必要な合計時間が示されています:

[Thu Aug 03 14:33:00 2005]Local/Sample/Basic/aspen/Info(1001065)
Regular Extractor Elapsed Time : [0.531] seconds

[Thu Aug 03 14:33:00 2005]Local/Sample/Basic/aspen/Info(1001401)
Regular Extractor Big Blocks Allocs -- Dyn.Calc.Cache : [30] non-Dyn.Calc.Cache : [0]

動的計算機キャッシュが使用されている場合は、データ計算機キャッシュ内で計算されたブロック数が次のメッセージに表示されます(Dyn.Calc.Cache: [n])および動的計算機キャッシュ外のメモリーで計算されたブロック数(Dyn.Calc.Cache以外): [ n ]).

動的計算機キャッシュが効果的に使用されているかどうかを判断するには、両方のメッセージを確認し、構成設定を検討します。 たとえば、ブロックが動的計算機キャッシュの外部および内部で計算されたことがメッセージに示されている場合は、DYNCALCCACHEMAXSIZE設定を増やすことができます。

「パフォーマンス統計」文法でquery database MaxL文を使用して、動的計算キャッシュ・アクティビティのサマリーを表示できます。