集約ストレージ・キューブでのアウトラインのページング
集約ストレージ(ASO)キューブのアウトラインはページング可能であり、非常に大きなキューブの場合にメモリー使用量が大幅に削減されます。Essbaseでは、アウトラインの一部がメモリーに事前ロードされます。データの取得中に、Essbaseによって、必要に応じてアウトラインの他の部分がメモリーにページングされます。
集約ストレージ・キューブを作成すると、アウトラインが、ページング可能なフォーマットで作成されます。
アウトラインをメモリーにページングすることで、Essbaseで、非常に大きいアウトライン(たとえば、1000万以上のメンバー),を処理できるようになりますが、データ取得時間が長くなる可能性があります。
ノート:
ページング可能なアウトラインが存在する集約ストレージ・キューブにはメモリー・ページが含まれるため、そのアウトライン・ファイルは、バイナリのブロック・ストレージ・アウトライン・ファイルより大きくなることがあります。
アウトラインのページングに関する制限事項
構築可能なアウトラインの最大サイズ(メンバー数)は、次に示すいくつかの要因によって変わります。
-
Essbaseで使用可能なメモリー
-
他の用途のために割り当てられたEssbaseのメモリーの量
-
各メンバー(および各メンバーの別名)に必要なメモリーの量
Essbaseでは、起動時に約40 MBのメモリーが使用されます。さらに、各種キャッシュには次のメモリー割当てが必要です。
-
アウトライン・ページング・キャッシュ: 8 MB
-
集約ストレージのデータ・キャッシュ: 32 MB
-
集約ストレージの集約キャッシュ: 10 MB
したがって、Essbaseの初期のメモリー・フットプリントは約90 MBです。さらに、受信する問合せ要求を処理するためにメモリーを割り当てる必要があります。この目的のために予約する通常のメモリーは、約300 MBです。したがって、Essbaseに割り当てられる合計メモリーは390 MBです。
1.85 GBのアドレス可能メモリーがあるWindowsシステムでは、アウトラインの構築とロードに使用できる容量は約1.46 GB (1.85 GB - 390 MB = 1.46 GB)です。
アウトラインの最大サイズは、アウトラインがディメンション構築を使用して構築されるか、Essbaseにすでにロードされているアウトラインから構築されるかによって異なります。
ディメンション構築アウトラインのページングに関する制限事項
ディメンション構築を使用してアウトラインを構築する場合、Essbaseでは、メンバーごとに約100バイトと、メンバー名のサイズと、メンバーのすべての別名(最大10個の別名を許容)のサイズを加算した容量が割り当てられます。
サンプルのアウトライン(1バイトのコードページを使用)では、メンバー名は平均15文字であり、メンバーごとに1つの別名(20文字)が存在しているため、各メンバーのメモリー要件は、次のように加算されます。
100 + 15 + 20バイト = 135バイト
ディメンション構築で追加できるメンバーの総数は、使用可能なメモリー(1.46GBまたは153,092,060バイト)をメンバーごとのバイト数(135)で除算した数である、約1100万個のメンバーになります。
2 GBを超えるアドレス可能メモリーがあるシステムでは、使用可能なメモリーの増分に比例して、アウトラインを大きくすることが可能です。
ディメンション構築が完了すると、dbname.otn
ファイルがキューブ・ディレクトリに保存されます。.otn
ファイルは、古いアウトラインが新しいアウトラインに置き換えられる、アウトライン再構築プロセスの入力として使用されます。再構築中に、古いアウトライン(空の可能性がある)と新しいアウトラインの、アウトラインの2つのコピーがメモリーにロードされるため、再構築できるアウトラインの最大サイズは、古いアウトラインのサイズによって変わります。
空のアウトラインで開始するディメンション構築では、メモリーにロードされるアウトラインは1つのみです。
ロードされるアウトラインのページングに関する制限事項
実行時または再構築中にEssbaseにロードされるアウトラインに対するメモリー要件は、ディメンション構築に対するメモリー要件とは異なります。Essbaseでは、メンバーごとに約60バイトと、メンバー名のサイズに加えて5バイトと、メンバーのすべての別名(最大10個の別名を許容)のサイズに加えて5バイトを加算した容量が割り当てられます。サンプルのアウトラインでは、メンバー名は平均15文字であり、メンバーごとに1つの別名(20文字)が存在しているため、各メンバーのメモリー要件は、次のように加算されます。
60 + 15 + 5 + 20 + 5バイト = メンバーごとに105バイト
1.46 GBのメモリーが使用可能であると想定すると、ロード可能なアウトラインの最大サイズは1400万個のメンバーを格納できるサイズ(1.46 GB/105バイト)になります。
1400万個のメンバーは、再構築中にロードされる2つのアウトラインの合計です。たとえば、既存のアウトラインに500万個のメンバーがある場合、新しいアウトラインは最大900万個のメンバーを持つことができます。増分ディメンション構築では、アウトラインのサイズを最大限使用できるように、小さい順にディメンションを構築することをお薦めします。