この項の内容:
1つ以上の外部データ・ソースから、データまたはメンバーをEssbaseサーバーにロードできます。アウトラインを更新しないでデータのロードのみを実行するか、データをロードしないでアウトラインの更新のみを実行するか、データのロードと次元構築を同時実行するかを選択できます。データのロードまたは次元構築の前に、次のアイテムが準備できていることを確認します:
データ・ソースを参照してください。
ルール・ファイルを参照してください。
ルール・ファイルを使用しない場合は、フリーフォーム・データ・ロード用に正しくフォーマットされたデータ・ソース
ルール・ファイルを必要としないデータ・ソースを参照してください。
Administration Servicesを使用してデータ・ロードまたは次元構築を実行する場合、ロードまたは構築をバックグラウンドで実行することにより、ロードまたは構築の処理中も引き続き別の作業を行うことができます。その後、バックグラウンド・プロセスのステータスをチェックして、いつロードまたは構築が完了したかを確認できます。Oracle Essbase Administration Services Online Helpの、データのロードおよび次元構築に関する項を参照してください。
次元構築で複数のデータ・ソースを使用している場合は、合計処理時間を削減するために、再構築が延期された次元構築を実行できます。再構築が延期された次元構築の実行を参照してください。
データ・ロードや次元構築は、完了する前に停止できます。ただし、必要な場合以外は停止しないでください。データ・ロードや次元構築のプロセスが停止した場合、Essbaseには部分的にロードされたファイルの名前が表示されます。
クライアントからデータ・ロードまたは次元構築を開始し、サーバーから停止する場合、クライアントが停止要求に応じるまで時間がかかることがあります。Essbaseでは、すべてのソース・データが読み取られるまでソース・ファイルの読取りが行われるので、この所要時間は、ファイル・サイズとEssbaseで処理されたソース・データの量によって異なります。プロセスを開始元のコンピュータで停止する場合は、すぐに停止できます。
データをブロック・ストレージ・データベースにロードする際にデータ値に対して加算または減算を行う場合は、可能であればコミット分離レベル設定を使用します。データ・ロードが停止された場合、この設定により、データ・ロード以前の状態に戻すことができます。分離レベルの理解を参照してください。データ値に対して加算または減算を行うようなデータ・ロードを停止する場合は、Essbaseサーバーのクラッシュからのリカバリを参照してください。 |
この項には、データのロードと次元の構築に役立つトピックが含まれています。参照:
データのみをロードする場合や次元構築で単一データ・ソースを使用する場合は、この項をスキップします。
デフォルトでは、ユーザーがアウトラインに変更を加えるたびに、Essbaseによって変更のタイプが認識され、必要に応じてデータベースが再構築されます。データベースの再構築では、データベースが再度構築されます。これは時間のかかる処理で、そのプロセスに多くのディスク・スペースが必要になるだけでなく、ファイルの最適化が行われる場合もあります。変更のタイプと必要になる再構築のタイプについては、次のトピックを参照してください:
ブロック・ストレージ・アウトラインの場合、データベースの再構築の最適化を参照してください。
集約ストレージ・アウトラインの場合、集約ストレージ・データベースの再構築を参照してください。
再構築が延期された次元構築(増分次元構築)では、次元構築のために複数のデータ・ソースが読み取られ、すべてのデータ・ソースが処理されるまで再構築は延期されます。再構築が延期された次元構築を行うには、次のように、様々な方法でアクションを指定します:
Administration Servicesでは、単一のダイアログ・ボックス内にすべてのデータ・ソースをリストできます。
リストされたファイルがすべて次元構築の場合、再構築が延期された次元構築のオプションを使用できます。このオプションを選択すると、すべてのソースが処理されるまで再構築が延期されます。アウトラインの検証は、各次元構築処理が完了してから行われます。Oracle Essbase Administration Services Online Helpの、データのロードおよび次元構築に関する項を参照してください。
MaxLでは、1つのimport databaseステートメントにすべてのデータ・ソースを含めることができます。
ファイルごとにアウトラインの検証を行うかどうかを制御できます。最終ファイルに対しては、アウトラインの検証を使用可能にする必要があります。『Oracle Essbaseテクニカル・リファレンス』のMaxLの項にある「import database」と「import dimension」を参照してください。
BEGINCBUILDDIM: 再構築が延期された次元構築を行うことを指示
INCBUILDDIM: データ・ソースごとに、次元構築にデータ・ソースを含めることを指示
ENDBUILDDIM: 必要に応じて再構築をトリガー
次元構築を行う場合または集約ストレージ・データベースを処理する場合は、この項をスキップします。
親メンバーにデータをロードする場合は、データベースの計算時に子のデータ値が集計されて、親のデータ値が上書きされることがあります。上書きを防ぐ手順は、次のとおりです:
この表に示した方法は、子の値が空(#MISSING)である場合にのみ使用できます。子がデータ値を持っている場合、そのデータ値で親のデータ値が上書きされます。#MISSING値の集計を参照してください。
データ・ロードを実行するには、データ・ソース内の各レコードが同じ数のデータ値フィールドを持っている必要があります。データ値が欠落している場合、データ・ロードは正確に処理されません。
たとえば、次のファイルは、Aprに値がないため無効です:
Actual Ohio Sales Cola Jan Feb Mar Apr 10 15 20
ファイルを修正するには、欠落したフィールドに#MISSINGまたは#MIを挿入します:
Actual Ohio Sales Cola Jan Feb Mar Apr 10 15 20 #MI
空のフィールドへのテキストの配置を参照してください。
次元フィールドまたはメンバー・フィールドが欠落している場合、Essbaseでは、以前にその次元フィールドまたはメンバー・フィールドで使用した値が使用されます。次元フィールドまたはメンバー・フィールドの欠落を参照してください。 |
ルール・ファイルに余分な空白のフィールドがある場合は、空のフィールドを隣のフィールドと結合します。フィールドの結合を参照してください。
集約ストレージ・データベースでは、値はレベル0のセルのみにロードできます。#MISSINGまたは#MIをデータ・ソース内の値として指定すると、データベース内の対応するセル(存在する場合)が削除されます。集約ストレージ・データベースでのデータ・ロードの相違点については、集約ストレージ・データベースの準備を参照してください。
データ・ロード時または次元構築時に、データ・ソース内のレコードのサブセットをロードできます。たとえば、レコード250から500までをロードし、データ・ソースの他のレコードはロードしないように指定できます。
Administration Servicesでデータ・ロードと次元の構築を実行し、毎回同じデータ・ソース・ファイルとルール・ファイルを使用する場合は、「データ・ロード」ダイアログ・ボックスに指定したソース・ファイルおよびルール・ファイルのオプションを保存して、後で再利用できます。
デフォルトでは、ファイル・オプションはクライアント側のARBORPATHディレクトリ内の指定のXMLファイルに保存されます。保存したオプションのファイルを使用する場合は、このファイルを開きます。保存されたファイルとそのオプションは、現在開いている「データ・ロード」ダイアログ・ボックス内のリストに追加されます。
Oracle Essbase Administration Services Online Helpの、データのロードおよび次元構築に関する項を参照してください。
データ・ソースが正常にEssbaseサーバーにロードされなかった場合は、適切なアプリケーションおよびデータベースに接続していて、正しいデータ・ソースをロードしているかどうかを確認します。
それでも問題が解決されない場合は、次のトピックを参照してください。問題が修正されたら、エラー・ログを再ロードすることにより、ロードされなかったレコードを再ロードできます。次元構築およびデータ・ロードのエラー・ログのロードを参照してください。
データ・ロードや次元構築が失敗した場合は、エラー・ログを貴重なデバッグ・ツールとして利用できます。次元構築およびデータ・ロードのエラー・ログとその表示を参照してください。
エラー・ログが存在しない場合は、次の条件の有無を確認します:
データ・ロードを実行しているユーザーがエラー・ログを設定した。
デフォルトでは、ルール・ファイルを使用した場合、Essbaseによってエラー・ログが作成されます。
Essbaseサーバーが使用可能かどうかの確認およびデータ・ソースが使用可能かどうかの確認を参照してください。
この場合は、通常、クライアント側でタイムアウト・エラーを受け取ります。Essbaseサーバーのクラッシュからのリカバリを参照してください。
Essbaseサーバー・ログおよびアプリケーション・ログを参照してください。
エラー・ログがあっても空の場合、Essbaseは、ロード中にエラーがあったと見なしません。次の条件の有無を確認します:
データ・ロード・ルール・ファイルが有効であるための要件および次元構築ルール・ファイルが有効であるための要件を参照してください。
データのロード中にサーバーがクラッシュした場合、Essbaseからユーザーにタイムアウト・エラーが送信されます。ユーザーが実行する必要があるリカバリ手順は、実行しているロードのタイプと、「分離レベル」データベースのトランザクション設定によって異なります(分離レベルの理解を参照):
データ・ソースはエラーなしでロードされたが、データベース内のデータが正しくない場合は、次の条件の有無を確認します:
正しいデータ・ソースをロードした場合、そのデータ・ソースを再度確認し、正しい値が含まれているかどうかを確認します。
値が入っていないデータ・フィールドには、#MIまたは#MISSINGを挿入する必要があります。そうしないと、データ・ソースが正しくロードされないことがあります。ルール・ファイルを使用して空白フィールドを#MIまたは#MISSINGで置き換える方法については、空のフィールドへのテキストの配置を参照してください。
データが適切である。たとえば、データ・ソースの処理時に、Essbaseでメンバー名とメンバーが属する次元が認識されます。データ・ソース・レコードに、ヘッダー・レコード内にメンバー名が指定されている次元メンバーが誤って含まれている場合、その次元のヘッダー・レコードのメンバーが新規メンバー名で置き換えられます。次の例のデータ・ソースでは、Essbaseで、Floridaは市場次元のメンバーとして認識されます。最後の4つのレコードの値は、Texasの値ではなくFloridaの値であると解釈されます。
Jan Actual Texas Sales "100-10" 51.7 "100-20" 102.5 "100-20" 335.0 Florida 96.7 "200-20" 276.0 "200-20" 113.1 "200-10" 167.0
気付かないうちに暗黙的に共有された(親と子が同じデータ値を共有する)メンバーがある。
この状況は、ある親が子を1つしか持っていない場合か、または親にロール・アップされる子が1つしかない場合に発生します。
暗黙的な共有の理解を参照してください。
入力データを既存のデータで置き換えるのではなく、入力データを既存のデータに追加した。
既存値に対する加算および減算を参照してください。
符号が反転し(たとえば、プラス符号がマイナス符号に反転)、符号の反転をUDAに対して実行したかどうか。
フィールド符号の反転を参照してください。
既存のデータ値の消去を参照してください。
データ値のスケーリングを参照してください。
データをエクスポートしたり、そのデータに対してレポートを実行したり、スプレッドシートを使用したりすることで、データを確認できます。レポートをエクスポートまたは実行する方法については、レポート・スクリプトの作成およびESSCMDの使用。を参照してください。スプレッドシートを使用している場合は、Oracle Hyperion Smart View for Office User's Guideを参照してください。 |
SQLデータ・ソースには、データ・ロードや次元構築の失敗につながる、特殊文字で構成されたファイル終端マーカーが含まれていることがあります。この問題を解決するには、問題のあるレコードを除外する除外条件を定義します。
Essbaseによるルール・ファイルの初期化方法やデータ・ソースの処理方法を理解することによって、次元構築の問題を突きとめられる場合があります。
Essbaseでルール・ファイルを初期化する手順は次のとおりです:
次に、Essbaseでは、データ・ロード時または次元構築時に、データ・ソース内の各レコードに対して次の操作が行われます:
ルール・ファイル内に定義されている順序で、データにフィールド操作が適用されます。
フィールド操作には、テキストと結合を使用したフィールドの結合、移動、分割および作成が含まれます。ルール・ファイル内のフィールド操作の定義順序を表示する方法については、フィールドに対する操作の実行を参照してください。
Essbaseにより、各フィールドにすべてのプロパティが適用されます。その結果、field2に進む前にすべてのプロパティがfield1に適用されます。Essbaseでは、次の順序でフィールドのプロパティが適用されます:
行をスキップするように設定している場合、Essbaseでは、ユーザーによって指定された行数がスキップされます。行をスキップするように設定していない場合、最初のレコードから処理されます。
Essbaseでは、ルール・ファイルに定義された条件の順序で選択または除外条件が実行されます。指定された条件に基づいて、データ・ソースの個々のレコードがロードまたは除外されます。
次の項では、Essbaseによるデータ・ロード時の無効なフィールドの処理方法について説明します。
次元フィールドまたはメンバー・フィールドが欠落している場合、Essbaseでは、以前にその次元フィールドまたはメンバー・フィールドで使用した値が使用されます。以前の値が存在しない場合、データ・ロードは中断されます。
たとえば次のファイルをSample.Basicデータベースにロードする場合、Essbaseでは、製品次元のRoot BeerおよびDiet Colaを持つレコードを含むすべてのレコードにおいて、Ohioメンバー・フィールドが市場次元にマッピングされます。
Jan Sales Actual Ohio Cola 25 "Root Beer" 50 "Diet Cola" 19
欠落したメンバー・フィールドの値が以前のレコードに含まれない場合、Essbaseではデータ・ロードが停止します。たとえば次のファイルをSample.Basicデータベースにロードしようとした場合、市場次元(前の例のOhio)が指定されていないため、データ・ロードは停止します。
Jan Sales Actual Cola 25 "Root Beer" 50 "Diet Cola" 19
ロードを再開する方法については、次元構築およびデータ・ロードのエラー・ログのロードを参照してください。
データ・ロードの実行中にEssbaseで不明なメンバー名が検出された場合、Essbaseによってレコード全体が除外されます。欠落したメンバー・フィールドのメンバー名が含まれた以前のレコードがある場合、Essbaseでは次のレコードの処理を続行します。以前のレコードがない場合、データ・ロードは停止します。たとえば次のファイルをSample.Basicデータベースにロードした場合、有効なメンバー名でないGinger Aleを含むレコードは除外されます。Cola、Root BeerおよびCream Sodaが含まれるレコードはロードされます。ただし、Ginger Aleが最初のレコードである場合、データ・ロードは停止します。
Jan, Sales, Actual Ohio Cola 2 "Root Beer" 12 "Ginger Ale" 15 "Cream Soda" 11
次元構築を実行している場合、データベースに新規メンバーを追加できます。データ・ロードまたは次元構築の実行を参照してください。 |
ロードを再開する方法については、次元構築およびデータ・ロードのエラー・ログのロードを参照してください。
データ・ロードの実行中にEssbaseで無効なデータ・フィールドが検出されると、データ・ロードが停止します。無効なフィールドより前の読込み済のフィールドは、すべてデータベースにロードされます。この場合、部分的なデータ・ロードになります。たとえば、次のファイルでは、Essbaseで15-データ値が検出されると、データ・ロードが停止します。JanとFebのSalesレコードはロードされますが、MarとAprのSalesレコードはロードされません。
East Cola Actual Sales Jan $10 Feb $21 Mar $15- Apr $16
ロードを続行する方法については、次元構築およびデータ・ロードのエラー・ログのロードを参照してください。