集約ストレージ・キューブへのデータのロード

Essbase集約ストレージ(ASO)キューブにより、最大100万以上のメンバーを含む非常に大規模なディメンションの分析が容易になります。このような大規模なアウトラインへのデータのロードに役立つように、増分ロード、データ・ロード・バッファの管理、およびデータのスライスのマージ/置換を行うことができます。

このような大規模キューブへのデータ値のロードを効率的にサポートするため、Essbaseでは次のことが可能です:

  • 一時データ・ロード・バッファを介して複数のデータ・ソースを処理できます。

  • データ・ロード・バッファで使用するリソースの割合を制御できます

  • 集約ストレージ・キューブにデータの複数のスライスを含めることができます(データベースに対する問合せが各スライスにアクセスして、すべてのデータ・セルを収集します)

  • 増分データのサイズに比例した時間で完了する増分データ・ロード・プロセスを指定します

集約ストレージ・キューブに値をロードするには、Essbase Webインタフェースで「ジョブ」ページを使用することも、MaxLalter database文およびimport data文を使用することもできます。このドキュメントの例は、MaxLの使用に基づいています。

ノート:

値が集約を介して計算され、保管されている場合は、データ値が変更されると、Essbaseにより上位レベルの保管済の値が自動的に更新されます。その他の計算ステップは必要ありません。集約の存在およびサイズは、データ・ロードの実行時間に影響する可能性があります。

データをキューブにロードしている間は、データをエクスポートできません。

ASOアプリケーションをコピーするときに、キューブ内のすべてのデータを保持するには、アプリケーションをコピーする前に、すべての増分データ・スライスをメイン・データベース・スライスにマージする必要があります。マージされていない増分データ・スライスのデータはコピーされません。

データ・ロード・バッファによるデータの増分ロード

増分データ・ロードを使用してデータ値をEssbase集約ストレージ(ASO)キューブにロードする場合、パフォーマンスを向上できます。Essbaseは、最初に一時データ・ロード・バッファに値をロードし、すべてのデータ・ソースの読取り後にストレージに最終的な書込みを行います。

import data MaxL文を使用して単一のデータソースからデータ値をロードする場合、集約ストレージ・データ・ロード・バッファは関係しません。

複数のimport database data MaxL文を使用してデータ値を集約ストレージ・キューブにロードする場合は、Essbaseで一時データ・負荷バッファを利用し、すべてのデータ・ソースが読み取られた後でストレージに最終的な書込みを完了できます。集約ストレージ・データ・ロード・バッファを使用すると、データ・ロードの全体的なパフォーマンスを大幅に向上させることができます。

集約ストレージ・データ・ロード・バッファでは、すべてのデータソースが読み取られた後で、Essbaseにより値がソートされてコミットされます。特定のデータ・セルに複数の(または重複する)レコードが検出された場合、それらの値は累計されます。次に、Essbaseにより、累計された値が保管されます(キューブ内の既存のデータ値の置換、加算または減算が行われます)。

ノート:

集約ストレージ・データ・ロード・バッファを使用する場合は、データ・バッファ・コンテンツをキューブにロードするときに、データ・ソースのセット全体に対して値の置換、加算または減算の選択が指定されます。

集約の構築およびスライスのマージはリソースを大量に消費するため、データ・ロード・バッファがメモリー内に存在する間、これらの操作はできません。ただし、他のデータ・ロード・バッファにデータをロードし、キューブに対して問合せやその他の操作を実行することはできます。データ・セット全体をコミットして集約が作成されるまで、問合せの待機が短時間になる場合があります。

データ・ロード・バッファは、バッファのコンテンツがキューブにコミットされるまで、またはアプリケーションが再起動され、バッファが破棄されるまで、メモリー内に存在します。コミット操作が失敗した場合でも、バッファは破棄され、データはキューブにロードされません。データ・ロード・バッファを手動で破棄するには、alter database MaxL文を使用します。

ノート:

バッファのコンテンツをコミットする前にアプリケーションを停止すると、バッファは破棄されます。この場合は、アプリケーションを再起動した後、新しいバッファを初期化してそれにデータをロードする必要があります。

集約ストレージ・キューブのデータ・ロード・バッファを使用するには:

  1. データ・ロード・バッファを準備します。alter database MaxL文を使用して集約ストレージ・データ・ロード・バッファを初期化することで、データ値がソートされて累計されます。次に例を示します。
    alter database ASOsamp.Basic 
       initialize load_buffer with buffer_id 1;
  2. import database MaxL文を使用して、データソースからデータ・ロード・バッファにデータをロードします。複数の文を使用して、複数のデータソースからデータをロードします。データソースのあらゆる組合せを含めることができます。データソースにルール・ファイルが必要な場合は、ルール・ファイルを指定します。

    次の例では、2つのデータソース(そのうちの1つはルール・ファイルを使用します)を同じデータ・ロード・バッファにロードします。

    import database ASOsamp.Basic data 
       from server data_file 'file_1.txt' 
       to load_buffer with buffer_id 1
       on error abort; 
    import database ASOsamp.Basic data
       from server data_file 'file_2' 
       using server rules_file ‘rule’ 
       to load_buffer with buffer_id 1
       on error abort;
    

    データを複数のロード・バッファに同時にロードするには、複数のデータ・ロードの並列実行を参照してください。

  3. import data MaxL文を使用して、データ・ロード・バッファのコンテンツをキューブにコミットします。次に例を示します。
    import database ASOsamp.Basic data 
       from load_buffer with buffer_id 1;

    1つのMaxL文で複数のデータ・ロード・バッファのコンテンツをキューブにコミットするには、複数のデータ・ロードの並列処理を参照してください。

次の増分データ・ロードの例では、新しいデータ値が既存の値と交差しないときに最適なパフォーマンスが得られます。

  1. ignore_missing_valuesおよびignore_zero_valuesプロパティを使用して、単一のデータ・ロード・バッファを作成します。たとえば:

    alter database ASOsamp.Basic 
       initialize load_buffer with buffer_id 1
       property ignore_missing_values, ignore_zero_values;

    更新中にそのキューブをデータ送信要求に使用できるようにする必要がある場合は、resource_usage構文で80%に設定し、データ・ロード・バッファを初期化します。たとえば:

    alter database ASOsamp.Basic 
       initialize load_buffer with buffer_id 1
       resource_usage 0.8 property
       ignore_missing_values, ignore_zero_values;
  2. データをバッファにロードします。たとえば:

    import database ASOsamp.Basic data 
       from server data_file 'file_1.txt' 
       to load_buffer with buffer_id 1
       on error abort; 
    import database ASOsamp.Basic data
       from server data_file 'file_2'
       to load_buffer with buffer_id 1
       on error abort;
    
  3. スライスを作成して値を追加することで、データ・ロード・バッファのコンテンツをキューブにコミットします。たとえば:

    import database ASOsamp.Basic data 
       from load_buffer with buffer_id 1
       add values create slice;

データ・ロード・バッファのリソースおよびディスク領域使用量

増分データ・ロードを使用してEssbase集約ストレージ(ASO)キューブにデータ値をロードする場合、一時データ・ロード・バッファの許容されるリソース使用量および待機時間に制約を設定できます。表領域を管理することで、ディスク領域の使用量を削減できます。

データ・ロード・バッファのリソース使用率の制御

増分データ・ロードの実行時、Essbaseでは、データをソートするために集約ストレージ・キャッシュが使用されます。データ・ロード・バッファが使用できるキャッシュの量は、割合を指定することで制御できます。割合は.01以上1.0以下の数値で指定します。重要なのは、小数点以下2桁のみです。たとえば、0.029は0.02と解釈されます。デフォルトでは、データ・ロード・バッファのリソース使用率は1.0に設定され、データベース上に作成されるすべてのデータ・ロード・バッファの合計リソース使用率が1.0を超えることはできません。たとえば、サイズ0.9のバッファが存在する場合、サイズが0.1より大きい別のバッファは作成できません。

ノート:

送信操作により、サイズ0.2のロード・バッファが内部的に作成されます。したがって、デフォルト・サイズが1.0のロード・バッファでは、データ・ロード・バッファのリソースが不十分なため、送信操作は失敗します。

バッファの使用が許可されるリソースの量を設定するには、Essbase Webインタフェースでデータ・ロードを開始するときに割合を指定します。MaxLを使用する場合は、alter database MaxL文でresource_usage構文を使用します。

たとえば、resource_usageを合計キャッシュの50%に設定するには、次の文を使用します。

alter database ASOsamp.Basic
   initialize load_buffer with buffer_id 1
   resource_usage .5;

同時送信操作を実行する場合は、ASOLOADBUFFERWAIT構成設定とalter database MaxL文をwait_for_resources文法とともに使用します。ASOLOADBUFFERWAITは、wait_for_resourcesオプションを使用した集約ストレージ・データ・ロード・バッファの作成に適用され、割当て、カスタム計算、データ更新操作に適用されます。

増分データ・ロードのディスク領域の管理

集約ストレージ・キューブへの増分データ・ロードは、現在のデータ・ファイルのサイズの最大2倍のディスク領域を使用できます。たとえば、キューブのデータのサイズが1 GBで、増加データ・ロードのサイズが200 MBで、合計サイズが1.2 GBであるとします増分データ・ロード・プロセス中に、Essbaseでは最大2.4 GBのディスク領域が使用される場合があります。

データベースが2 GBを超える場合は、デフォルトの表領域の最大ファイル・サイズが2 GB以下に設定することで、ディスク領域の使用率を削減できます。

デフォルトの表領域の最大ファイル・サイズを設定するには、alter tablespace MaxL文を使用できます。

データ・ロード・バッファ・プロパティ

集約ストレージ(ASO)ロード・バッファにデータ値を増分的にロードする場合、ソース・データの欠落値とゼロ値を無視するようにEssbaseに指示でき、セルの競合を解決できます(重複セルを組み合せることで、無効な集約を排除できます)。

設定できるデータ・ロード・バッファのプロパティは、次のとおりです。

  • ignore_missing_values: 入力データ・ストリームの#MI値を無視します

  • ignore_zero_values: 入力データ・ストリームの0を無視します

  • aggregate_use_last: 最後にロード・バッファにロードされたセルの値を使用して、重複セルを結合します

    ノート:

    集約ストレージ・データベースにテキスト値および日付値をロードする場合は、aggregate_use_lastプロパティを使用して無効な集約を排除します。その他のガイドラインについては、テキストおよび日付メジャーのロード、クリアおよびエクスポートを参照してください。

コマンドで複数のプロパティを使用し、競合がある場合は、最後にリストされたプロパティが優先されます。

データ・ストリームでの欠落およびゼロの処理

データを増分ロードする場合は、データをデータ・ロード・バッファにロードするときに、ソース・データ内の欠落値およびゼロ値をどのように処理するかを指定できます。

データ・ロード・バッファ・プロパティを設定するには、alter database MaxL文でproperty構文を使用します。

たとえば:

alter database ASOsamp.Basic
   initialize load_buffer with buffer_id 1
   property ignore_missing_values, ignore_zero_values;

セルの競合の解決

重複セルのセル競合を解決するために、ロード・バッファにロードされた最後のセルを使用するかどうかを指定できます。

デフォルトでは、同じキーを持つセルが同じデータ・ロード・バッファにロードされると、Essbaseでは、値をまとめて追加することによってセルの競合を解決します。

ロード・バッファに最後にロードされたセルの値を受け入れることによって重複セルを組み合せるデータ・ロード・バッファを作成するには、alter database MaxL文でaggregate_use_last構文を使用します。

たとえば:

alter database ASOsamp.Basic
   initialize load_buffer with buffer_id 1
   property aggregate_use_last;

ノート:

aggregate_use_last構文でデータ・ロード・バッファを使用すると、重複キーが存在しない場合でも、データ・ロードが非常に遅くなります。

複数データ・ロードの並列実行

Essbase集約ストレージ(ASO)キューブに複数のデータ・ロード・バッファが存在できます。一度にアクティブに設定できるコミット操作は1つのみですが、同じコミットで複数のデータ・ロード・バッファがコミットできます。バッファは個別にコミットするよりも高速です。

複数のデータ・ロード・バッファにデータを同時にロードするには、個別のMaxLシェル・セッションを使用します。たとえば、1つのMaxLシェル・セッションで、IDが1のバッファにデータをロードします。

alter database ASOsamp.Basic
   initialize load_buffer with buffer_id 1 resource_usage 0.5;
import database ASOsamp.Basic data
   from data_file "dataload1.txt"
   to load_buffer with buffer_id 1
   on error abort;

同時に、別のMaxLシェル・セッションで、IDが2のバッファにデータをロードします。

alter database ASOsamp.Basic
   initialize load_buffer with buffer_id 2 resource_usage 0.5;
import database ASOsamp.Basic data
   from data_file "dataload2.txt"
   to load_buffer with buffer_id 2
   on error abort;

データがデータ・ロード・バッファに完全にロードされたら、1つのMaxL文を使用し、バッファIDのカンマ区切りのリストを使用して、両方のバッファのコンテンツをデータベースにコミットします。

たとえば、次の文では、バッファ1および2のコンテンツがロードされます。

import database ASOsamp.Basic data 
   from load_buffer with buffer_id 1, 2;

ノート:

集約ストレージ・キューブにSQLデータをロードする場合は、最大8つまでのルール・ファイルを使用してデータを並列にロードできます。この機能は、前述のプロセスとは異なります。複数のSQLデータのロードを並列で実行する場合は、1つのimport database MaxL文でusing multiple rules_file構文を使用できます。Essbaseにより、複数の一時集約ストレージ・データ・ロード・バッファ(ルール・ファイルごとに1つ)が初期化され、1つの操作ですべてのバッファのコンテンツがキューブにコミットされます。

集約ストレージ・キューブのデータ・ロード・バッファのリスト

Essbase集約ストレージ(ASO)キューブに複数のデータ・ロード・バッファが存在できます。キューブに存在するデータ・ロード・バッファのリストと説明については、query database MaxL文でlist load_buffers構文を使用します。

ASOデータ・ロード・バッファをリストするMaxL文の構文は次のとおりです。

query database appname.dbname list load_buffers;

この文では、既存の各データ・ロード・バッファに関する次の情報が戻されます。

表37-2データ・ロード・バッファの情報

フィールド 説明

バッファID

データ・ロード・バッファのID (1から4,294,967,296の間の数値)。

内部

データ・ロード・バッファがEssbaseによって内部的に作成された(TRUE)か、ユーザーによって作成された(FALSE)かを指定するブール。

アクティブ

データ・ロード・バッファがデータ・ロード操作によって現在使用されているかどうかを指定するブール。

リソース使用

データ・ロード・バッファが使用できる集約ストレージ・キャッシュの割合(.01以上1.0以下の数値)。

集計方式

バッファ内の同じセルの複数の値を結合するために使用するメソッドの1つ:

  • AGGREGATE_SUM: バッファに同じセルの複数の値が含まれる場合に値を加算します。

  • AGGREGATE_USE_LAST: 最後にロード・バッファにロードされたセルの値を使用して、重複するセルを結合します。

ignore_missings

入力データ・ストリームの#MI値を無視するかどうかを指定するブール。

Ignore_zeros

入力データ・ストリームのゼロを無視するかどうかを指定するブール。

関連項目: Query Database (集約ストレージ)

データ・スライスの作成

スライスを作成するには、データ・ロード・バッファをEssbase集約ストレージ(ASO)キューブに増分コミットします。新しいスライスをキューブにロードすると、新しいデータが問合せで参照できるようになる前に、Essbaseによって、スライスに関する必要なすべてのビュー(集約ビューなど)が作成されます。

データ・スライスの作成は、増分データ・ロードのパフォーマンスを向上させるため有用です。増分データ・ロードにかかる時間は、新しいデータの量に比例します。キューブのサイズは要因ではありません。

データ・スライスを作成するには、import database MaxL文でcreate slice構文を使用します。

たとえば、値(デフォルト)をオーバーライドしてスライスを作成するには、次の文を使用します。

import database ASOsamp.Basic data
   from load_buffer with buffer_id 1
   override values create slice;

ノート:

スライスを作成するときにオーバーライド値を使用すると、#MISSING値はゼロに置換されます。このオプションを使用すると、add valuesオプションやsubtract valuesオプションを使用するよりもかなり時間がかかります。

関連項目: Import Data (集約ストレージ)

増分データ・スライスのマージ

データを集約ストレージ(ASO)キューブに増分的にロードする場合、増分データ・スライスをメイン・キューブ・スライスに手動でマージするか、AUTOMERGEを使用してデータ・ロード中にスライスを自動的にマージするようにEssbaseを構成できます。

集約ストレージ・キューブへのデータ・ロード中の増分データ・スライスの自動マージ

AUTOMERGEおよびAUTOMERGEMAXSLICENUMBER構成設定を使用すると、Essbaseが集約ストレージ・キューブへのデータ・ロード中に増分データ・スライスを自動的にマージするかどうかを指定できます。

AUTOMERGE構成設定オプション:

  • ALWAYS - 集約ストレージ・キューブへのデータ・ロード時に増分データ・スライスを自動的にマージすることを指定します。デフォルトでは、マージは、4つの連続した増分データ・スライスごとに1回実行されます。ただし、AUTOMERGEMAXSLICENUMBER構成設定が使用されている場合、自動マージ・プロセスはAUTOMERGEMAXSLICENUMBER値を超えるとアクティブ化されます。増分データ・スライスのサイズは、どれをマージするかを選択する際に重要ではありません。

    デフォルト値はALWAYSです。

  • NEVER— 集約ストレージ・キューブへのデータ・ロード時に増分データ・スライスを自動的にマージすることを指定します。増分データ・スライスを手動でマージするには、alter database MaxL文でmerge構文を使用します。

  • SELECTIVE—AUTOMERGEMAXSLICENUMBER構成設定で指定した増分データ・スライスの数を超えたときに、増分データ・スライスの自動マージ・プロセスをアクティブ化する場合に指定します。データ・ロードの増分データ・スライスの数がAUTOMERGEMAXSLICENUMBERの値を超えない場合、自動マージ・プロセスはアクティブ化されません。

増分データ・スライスの手動マージ

メイン・スライスにすべての増分データ·スライスを結合したり、メイン・スライスを変更せずに単一のデータ・スライスにすべての増分データ·スライスを結合したりできます。スライスをマージするには、データのロードと同じ権限(データベース更新権限以上)が必要です。

新しい入力ビューがキューブに書き込まれた後、Essbaseによりスライスの集約ビューが作成されます。新しいスライス用に作成されるビューは、メイン・スライスに存在するビューのサブセットです。

ノート:

マージの実行中はデータをエクスポートできません。

リージョンの論理クリア操作を使用してリージョンからデータをクリアすると、クリアしたセルの値はゼロになるため、マージ操作中にゼロ値のセルを削除することを選択できます。

操作のマージを実行するには、alter database MaxL文でmerge構文を使用します。

たとえば、すべての増分データ・スライスをメイン・スライスにマージするには、次の文を使用します。

alter database ASOsamp.Basic
   merge all data;

すべての増分データ・スライスをメイン・スライスにマージし、ゼロ値のセルを削除するには、次の文を使用します。

alter database ASOsamp.Basic
   merge all data remove_zero_cells;

すべての増分データ・スライスを単一のデータ・スライスにマージするには、次の文を使用します。

alter database ASOsamp.Basic
   merge incremental data;

ノート:

集約ストレージ・アプリケーションをコピーする前に、すべての増分データ・スライスをメイン・スライスにマージする必要があります。マージされていない増分データ・スライスのデータはコピーされません。

関連リンク

AUTOMERGE

AUTOMERGEMAXSLICENUMBER

Alter Database (集約ストレージ)

増分データ・スライス・コンテンツを使用したデータの置換

データ・レイテンシが低い状態で完全にリロードできるほど小さい集約ストレージ(ASO)データ・セットの場合、Essbaseは集約ストレージ・キューブの現在のコンテンツを削除し、指定されたデータ・ロード・バッファの内容でキューブを置換できます。

このアトミックな置換機能により、サービスを中断することなく、キューブの古いコンテンツに問合せが新しいコンテンツに遷移します。新しくロードされたデータ・セットは集約され、置き換えられたデータ・セットに対して存在したのと同じ一連のビューが作成されます。

Essbaseでは、キューブ内のすべての増分データ・スライスのコンテンツをアトミックスに置換することもできます。データを、更新されない比較的大きい静的データ・セットと、個々の更新を識別するのは難しい が揮発性データ・セットに限定されている比較的小さい揮発データ・セットに分割できる状況を考えてみます。たとえば、大きい静的データ・セットは過去3年間の履歴トランザクション・データで構成されています。ただし、過去2か月のトランザクション・データについては、ユーザーがソース・データベース内のトランザクションの特性を変更できます。これらの変更を追跡することは、非常に複雑になる可能性があります。静的データ・セットをキューブ内のメイン・スライスとしてロードし、揮発性データ・セットを1つ以上の増分スライスとしてロードできます。

ASO増分データ・ロード中にスライスをコミットすると、Essbaseは、すべての増分データ・スライスの現在のコンテンツを削除し、指定されたデータ・ロード・バッファのコンテンツを含む新しいスライスを作成します(import database MaxL文のバッファ・コミット指定でadd values構文を使用)。新しくロードされたデータ・セットは、メイン・スライスに存在するビューのセットに基づいて、集約ビューで拡張されます。

ノート:

override構文を使用するには、最適なパフォーマンスを得るためにignore_missing_valuesプロパティを使用してデータ・ロード・バッファを作成します。また、静的データ・セットと揮発性データ・セットの間に競合がないことを確認する必要があります(たとえば、同じセルの各データ・セットに値がない必要があります)。

キューブ内のデータベースのコンテンツまたは増分データ・スライスを置換するには、import database MaxL文でoverride構文を使用します。

たとえば、キューブのコンテンツを置換するには、次の文を使用します。

import database ASOsamp.Basic data
   from load_buffer with buffer_id 1
   override all data;

すべての増分データ・スライスのコンテンツを新しいスライスに置換するには、次の文を使用します。

import database ASOsamp.Basic data
   from load_buffer with buffer_id 1
   override incremental data;

ノート:

override置換が失敗すると、Essbaseでは古いデータ・セットが引き続き使用されます。

Smart Viewの送信コマンドは、増分データ・ロード機能でoverride構文を使用する場合と同じです。

送信操作を実行している間、ロック、ロック解除および取得してロックの新しい要求は、送信操作が完了するまで待機します。

関連項目: Import Data (集約ストレージ)

増分データ・スライスの統計を表示

Essbaseでは、増分集約ストレージ(ASO)のデータ・スライス・サイズおよび数、および増分データ・スライスへの問合せコストに関する統計が提供されます。

すべての増分データ・スライスにアクセスするための問合せにかかる時間は、パーセンテージ(.01以上1.0以下)で表されます。キューブにメイン・スライスおよび複数の増分データ・スライスがある場合、問合せ統計0.66は、問合せ時間の3分の2が増分データ・スライスの問合せに費やされ、3分の1がメインのデータ・スライスの問合せに費やされたことを意味します。増分データ・スライスの問合せのコストが高すぎる場合は、スライスをマージできます。

スライスに関する情報を表示するには、query database MaxLステートメントで list aggregate_storage slice_info文法を使用します。例

query database ASOsamp.Basic list aggregate_storage slice_info;

Query Database (集約ストレージ)

集約ストレージのデータ・ロードでのレネゲード・メンバー

レネゲード・メンバーは、指定されたメンバーの組合せで欠落または無効なメンバーがある場合でも、Essbase集約ストレージ(ASO)のデータ・ロードを続行します。

データ・ロードで欠落しているメンバーまたは無効なメンバーが検出された場合、データ・ロードが続行されて、ディメンションのレネゲード・メンバーとしてタグ付けされたメンバーの下に、欠落または無効なメンバーのデータ値が保管されます。ディメンションにレネゲード・メンバーが設定されていない場合、レコードは拒否されます。レネゲード・メンバーのデータがすでに存在する場合の動作は、データ・ロード・ルール・ファイルの作成時に値の加算または値の上書きのどちらを選択したかによって異なります。

各ディメンションにレネゲード・メンバーとして割り当てることができるメンバーは1つのみであり、レネゲード・メンバーはレベル0のメンバーである必要があります。

次のデータ・ロード・ファイルには、SCという名前のメンバーが含まれています。

Product  Measures   *Data*
NY,      Sales       100
SA,      Sales       200
SC,      Sales       300    

次のアウトラインには、SCという名前のメンバーはありません。ただし、SAという名前のメンバーは、Productsディメンションのレネゲード・メンバーとして設定されています。

Products (+)
   NY (+)
   SA (+)
Measures (+)
   Sales (+)
   COGS (+)

データ・ロード中に、メンバーSCとSalesの組合せのデータ値である300が、レネゲード・メンバーSAとSalesにロードされます。

次のデータ・ロード・ファイルには、SCとSalesのレコードが2つあり、それぞれ値が異なります。

Product    Measures    *Data*
NY,        Sales        100
SA,        Sales        200
SC,        Sales        250
SC,        Sales        300 

SCとSalesの両方の値(250と300)がSAとSalesにロードされます。値を加算することを選択した場合、セルの値は550 (250 + 300)です。値を上書きすることを選択した場合、セルの値は最後に読み込まれた値です(この場合は300)。

次の例は、次のデータ・ロード・ファイルを使用したレネゲード・メンバーの動作を示しています。

Months    Transaction Type    Customer    Product    Price
Jan,      Sale,               Discard1,   Product1   300
Jan,      Sale,               Discard1,   Discard2   300
Jan,      Sale,               Customer1,  Discard2   300

Discard1およびDiscard2はアウトラインに存在しません。

  • 例1:

    Customer次元にレネゲードとしてタグ付けされたCustomer1メンバーがあり、他の次元にレネゲード・メンバーがない場合、最初のレコードのみが次の交差にロードされます。

    Jan    Sale    Customer1(Ren)    Product1    300

    Productディメンションにレネゲード・メンバーがないため、他の2つのレコードは拒否されます。拒否されたレコードは、レネゲード・メンバー・ログ・ファイルに記録されます。

  • 例2:

    Product次元にレネゲードとしてタグ付けされたProduct1メンバーがあり、他の次元にレネゲード・メンバーがない場合、最後のレコードのみが次の交差にロードされます。

    Jan    Sale    Customer1    Product1(Ren)    300

    Customerディメンションにレネゲード・メンバーがないため、他の2つのレコードは拒否されます。拒否されたレコードは、レネゲード・メンバー・ログ・ファイルに記録されます。

  • 例3:

    Customer次元とProduct次元の両方にレネゲード・メンバー(Customer1およびProduct1)がある場合、すべてのレコードは次の交差にロードされます。

    Jan    Sale    Customer1(Ren)    Product1(Ren)    900 (or 300 if overwrite is enabled)

例4:

例4では、Customerディメンションにレネゲードのタグとしてタグ付けされたRenMember1があり、Productディメンションにレネゲードのタグとしてタグ付けされたRenMember2があります。次のデータ・ロード・ファイルを使用すると、CustomerディメンションとProductディメンションの両方にレネゲード・メンバーがあるため、すべてのレコードがロードされます。

Customer1およびProduct1はレネゲード・メンバーではありません。"Discard1"および"Discard2"はアウトラインに存在しません。

データ・ロード・ファイル:

Months  Transaction Type  Customer    Product   *Data*
Jan,     Sale,            Discard1,   Product1   300
Jan,     Sale,            Discard1,   Discard2   300
Jan,     Sale,            Customer1,  Discard2   300

破棄メンバーのデータ・ロード・ファイルで指定された値は、かわりに、指定されたレネゲード・メンバーに自動的にロードされます。

ロードされたデータ:

Months  Measures   Customer          Product           Price
Jan     Sale       RenMember1(ren)   ProductR          300
Jan     Sale       RenMember1(ren)   RenMember2(ren)   300
Jan     Sale       CustomerR         RenMember2(ren)   300

レネゲード・メンバーのロギングは、デフォルトでは有効になっていません。ロギングを有効にするには、RENEGADELOG構成設定を使用します。TRUEに設定すると、レネゲード・メンバーの交差にロードされたメンバーのロギングが有効になります。

ノート:

レネゲード・メンバーは、計算スクリプトおよびレポート・スクリプトで参照できます。レネゲード・メンバーは、表形式のデータ・ロードまたはスプレッドシート更新操作ではサポートされていません。

集約ストレージ・データ・ロードのソース・データの相違点

While processing records in the source data in preparation for loading values into aggregate storage (ASO) cubes, Essbase processes records only for the level 0 dimension intersections where the member does not have a formula.

次の例は、レベル0の交差のみのレコードを持つデータのソースを示しています。最後のフィールドにはデータ値が含まれています。その他のフィールドは、それらの各ディメンションのレベル0メンバーです。

Jan, Curr Year, Digital Cameras, CO, Original Price, 10784
Jan, Prev Year, Camcorders, CO, Original Price, 13573

Essbaseでは上位レベルのメンバーを指定するレコードが無視され、データ・ロードの終了時にスキップされたレコード数が表示されます。

たとえば、メンバーMid Westはレベル1のメンバーであるため、次のレコードはスキップされます:

Jan, Curr Year, Digital Cameras, Mid West, Original Price, 121301

Essbaseでは、キューブに値をコミットする前にレコードが内部的に読み取られてソートされるため、データのソートは不要です。