ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド
11g リリース1 (11.1.1)
B63028-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

4 メタデータのインポートとデータ・ソースの操作

Oracle BIリポジトリ・ファイルがまだない場合は、作成する必要があります。その後、データ・ソースからリポジトリの物理レイヤーにメタデータをインポートできます。管理ツールの物理レイヤーでは、Oracle BIサーバーが問合せを送信するデータ・ソース、および物理データベースと複数のデータ・ソース問合せの処理に使用される他のデータ・ソース間のリレーションシップが定義されます。

Oracle BIリポジトリへのメタデータのインポートは、ODBCまたは基礎となるデータ・ソースへのネイティブ・データベース接続を介して行う必要があります。ODBC接続を介してMicrosoft Excelなどのソフトウェアからメタデータをインポートすることもできます。

各データ・ソースからメタデータを直接インポートすると、物理レイヤーの構造をインポートできるため、時間と労力が節減されます。これらのソースのデータは、Oracle BIインタラクティブ・ダッシュボードおよびその他のクライアントで表示できます。メタデータは、サポートされているデータ・ソースからのみインポート可能です。

メタデータをインポートすると、通常は、関連するデータベース・オブジェクトおよび接続プールのプロパティが自動的に設定されます。ただし、データベースや接続プールの設定は調整可能です。詳細は、第6章「データベース・オブジェクトおよび接続プールの設定」を参照してください。

メタデータをインポートするかわりに物理レイヤーを手動で作成することもできますが、多大な労力を要するうえ、エラーが発生しやすくなります。メタデータをインポートすることを強くお薦めします。

この章の内容は次のとおりです。

新しいOracle BIリポジトリ・ファイルの作成

管理ツールの新規リポジトリの作成ウィザードを使用して、新しいOracle BIリポジトリ・ファイル(.rpds)を作成できます。既存のリポジトリがすでにある場合、リポジトリ・ファイルを新しく作成する必要はありません。

既存のリポジトリ・ファイルがある場合は、そのファイル内の既存のデータ・ソース設定を、別のデータ・ソースに接続するためのテンプレートとして使用できます。そのためには、既存のデータ・ソース設定を使用し、データベース・タイプと接続プールの情報のみを変更します。詳細は、「データベース・オブジェクトの設定」および「接続プールの作成または変更」を参照してください。

新しいリポジトリ・ファイルを作成するには:

  1. 管理ツールで、「ファイル」を選択し、「新規リポジトリ」を選択します。新規リポジトリの作成ウィザードが表示されます。

    既存のリポジトリが開いている場合、変更内容を保存するように求められ、既存のリポジトリが閉じます。

  2. リポジトリの名前を入力します。メタデータ・ディクショナリのURLに関する問題を避けるため、名前は156文字以内にしてください。RPDファイル拡張子を明示的に指定しなかった場合、自動的に追加されます。

  3. 新しいリポジトリの場所を選択します。新しいリポジトリはデフォルトで、ORACLE_INSTANCE\bifoundation\OracleBIServerComponent\coreapplication_obisn\repositoryにあるリポジトリ・サブディレクトリに保存されます。

  4. すぐにメタデータをリポジトリにインポートするには、「メタデータのインポート」について「はい」(デフォルト)を選択します。メタデータをインポートしない場合は、「いいえ」を選択してください。

  5. このリポジトリに使用するパスワードを入力し、確認します。5文字より長いパスワードを指定してください。リポジトリ・パスワードを空白にすることはできません。

    リポジトリ・パスワードは、リポジトリをオンライン・モードで開くときにもオフライン・モードで開くときにも入力します。このパスワードは、リポジトリの内容を暗号化するために使用されます。

  6. メタデータのインポート」について「はい」を選択した場合は、「次へ」をクリックします。

    インポート画面については、データ・ソース・タイプに応じて次の項を参照してください。

    情報をリポジトリにインポートする前に、データ・ソースの設定が必要になる場合があります。詳細は、「データ・ソースの事前構成作業の実行」を参照してください。

  7. メタデータのインポート」について「いいえ」を選択した場合は、「終了」をクリックして空のリポジトリを作成します。

データ・ソースの事前構成作業の実行

データ・ソースからリポジトリ・ファイルに物理オブジェクトをインポートしたり、データ・ソースへの接続プールを設定する前に、構成手順を実行して、Oracle Business Intelligenceからデータ・ソースにアクセスできるようにしておく必要がある場合があります。

多くのデータ・ソースについては、クライアント・コンポーネントをインストールする必要があります。クライアント・コンポーネントは通常、問合せアクセスについてはOracle BIサーバーをホストするコンピュータに、インポートなどのオフライン操作については管理ツールをホストするコンピュータ(異なる場合)にインストールします。場合によっては、JavaHostがインストールされているコンピュータにクライアント・コンポーネントをインストールする必要があります。


注意:

次の関連トピックを参照してください。

この項の項目は次のとおりです。

ODBCデータ・ソース名(DSN)の設定

ODBC接続を介したデータ・ソースからのインポートや、ODBCデータ・ソースへの接続プールの設定を行う前に、クライアント・コンピュータでそのデータ・ソースのODBCデータ・ソース名(DSN)を作成しておく必要があります。データ・ソースからメタデータをインポートする際、メタデータのインポート・ウィザードでこのDSNを参照します。

ODBC DSNは、Windowsシステムでのみインポートに使用できます。

WindowsでODBC DSNを設定するには:

  1. 「スタート」→「設定」→「コントロール パネル」を選択してWindowsコントロール パネルを開き、「管理ツール」、「データ ソース (ODBC)」をダブルクリックします。

  2. 「ODBC データ ソース アドミニストレータ」ダイアログで、「システム DSN」タブをクリックし、「追加」をクリックします。

  3. 「データ ソースの新規作成」ダイアログで、データ・ソースに適したドライバを選択し、「完了」をクリックします。

    残りの構成手順は、構成するデータ・ソースごとに異なります。詳細は、データ・ソースのドキュメントを参照してください。

WindowsシステムのODBC DSNは、初期インポートにも、問合せ実行時のデータ・ソースへのアクセスにも使用されます。UNIXシステムでは、ODBC DSNはデータ・アクセスにのみ使用されます。UNIXでのODBCデータ・ソースの設定については、第15章「LinuxおよびUNIXでのデータソースの設定」を参照してください。


注意:

Teradataデータ・ソースについては、最新のTeradata ODBCドライバをインストールし、ODBC DSNを設定した後、Teradataデータ・ソースのlibディレクトリをWindowsシステムのパス環境変数に追加する必要があります。例:

D:\Program Files\NCR\Common Files\Shared ICU Libraries for Teradata\lib


Oracle Databaseデータ・ソースの設定

Oracle Databaseからメタデータをインポートする場合やOracle Databaseに接続する場合は必ず、OCIを使用する必要があります。スキーマのインポートや、接続プールの設定を行う前に、TNS名のエントリをtnsnames.oraファイルに追加しておく必要があります。詳細は、Oracle Databaseのドキュメントを参照してください。

Oracle Databaseデータ・ソースからメタデータをインポートする場合や接続プールを設定する場合、データ・ソース名として接続文字列全体を入力することも、tnsnames.oraファイルで定義されているネット・サービス名を使用することもできます。ネット・サービス名のみを入力するには、Oracle BIサーバーがそのエントリを特定できるように、Oracle Business Intelligence環境の次の場所でtnsnames.oraファイルを設定する必要があります。

ORACLE_HOME\network\admin

Oracle OLAPデータ・ソースの設定

Oracle OLAPデータ・ソースからインポートする前に、データ・ソースが標準形式のアナリティック・ワークスペースであることを確認してください。

さらに、オフライン・インポートについてもオンライン・インポートについても、Oracle OLAPデータ・ソースからインポートするには、JavaHostプロセスが実行中である必要があります。

Oracle TimesTen In-Memory Databaseデータ・ソースの設定

Oracle TimesTen In-Memory Databaseは、ODBCおよびJDBCインタフェースをサポートする高性能なインメモリー・データ・マネージャです。次の事前構成手順は、TimesTenをすでにインストールしていることを前提としています。詳細は、『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』を参照してください。

TimesTenデータ・ソースを設定するには:

  1. TimesTenがインストールされているコンピュータで、データ・マネージャDSNを(システムDSNとして)作成します。詳細は、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のデータ・マネージャDSNの定義に関する項を参照してください。

  2. データ・ソースへの初期接続を実行してTimesTenデータベースをメモリーにロードし、ユーザーを作成して、権限を付与します(この作業をまだ行っていない場合)。詳細は、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のアクセス制御の管理に関する項を参照してください。データ・ストアのデフォルト・ユーザーはインスタンス管理者、つまりデータベースをインストールしたオペレーティング・システム・ユーザーです。

  3. Oracle BIサーバーを実行しているコンピュータに、TimesTenクライアントをインストールします。詳細は、『Oracle TimesTen In-Memory Databaseインストレーション・ガイド』を参照してください。

  4. TimesTenクライアントがインストールされているコンピュータで、クライアントDSNを(システムDSN)として作成します。詳細は、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のクライアントDSNの作成に関する項を参照してください。

    LinuxまたはUNIXでOracle BIサーバーを実行している場合にこの手順を実行する方法については、「ネイティブODBCドライバを使用したデータベース接続の構成」を参照してください。

TimesTenデータベースがTimesTenクライアントと同じコンピュータにインストールされている場合は、メタデータのインポート・ウィザードでデータ・マネージャDSNまたはクライアントDSNを指定できます。

TimesTenデータ・ソースとの接続数の制限による問合せの失敗の回避

TimesTenデータ・ソースに対する問合せが失敗し、次のようなエラーが生成されることがあります。

[10058][State: S1000] [NQODBC] [SQL_STATE: S1000] [nQSError: 10058] A general 
error has occurred.
[nQSError: 43113] Message returned from OBIS.
[nQSError: 43119] Query Failed:
[nQSError: 16023] The ODBC function has returned an error. The database may not be 
available, or the network may be down.
Statement execute failed

このような失敗を回避するには、次の手順に従ってTimesTenサーバーの最大接続数を増やします。

  1. TimesTen環境で、編集のためにttendaemon.optionsファイルを開きます。このファイルは次の場所にあります。

    install_dir/srv/info

  2. 次の行を追加します。

    -MaxConnsPerServer number_of_connections
    

    number_of_connectionsを求めるには、次の式を使用します。RPDに接続プールごとに接続がM個あり、RPDに接続プールがN個あり、Oracle BIサーバーがP台ある場合、必要な接続の総数はM * N * Pとなります。

  3. ファイルを保存して閉じます。

  4. TimesTenサーバーへの接続に使用しているODBC DSNで、Connectionsパラメータを、ステップ2で入力した値と同じ値に設定します。

    • Windowsでは、Windows ODBC データ ソース アドミニストレータからTimesTen ODBCセットアップ・ウィザードを開きます。「接続」パラメータは「最初の接続」タブにあります。

    • UNIXでは、odbc.INIファイルを開き、次のようにTimesTen DSNエントリにConnections属性を追加します。

      Connections=number_of_connections
      
  5. ttisqlプロセスやOracle BIサーバーなど、TimesTenに接続しているすべてのプロセスを停止します。

  6. TimesTenプロセスを停止します。

  7. TimesTenプロセスが停止されていることを確認した後、TimesTenプロセスを再開します。

Essbaseデータ・ソースの設定

Oracle BIサーバーは、Essbaseクライアント・ライブラリを使用してEssbaseデータ・ソースに接続します。Essbaseデータ・ソースへの接続を設定したり、Essbaseデータ・ソースからメタデータをインポートする前に、Oracle BIサーバーを実行しているコンピュータにEssbaseクライアント・ライブラリがインストールされていることを確認する必要があります。また、管理ツールまたはnqcmdユーティリティを実行するコンピュータにEssbaseクライアント・ライブラリがインストールされていることも確認する必要があります。Oracle Business Intelligenceでの使用がサポートされているEssbaseクライアントのバージョンについては、「システム要件と動作要件」を参照してください。

該当するコンピュータにEssbaseクライアント・ライブラリがインストールされていることを確認したら、各コンピュータのPATH環境変数にEssbaseクライアント・ドライバの場所(EPM_ORACLE_HOME/products/Essbase/EssbaseClientなど)が追加されていることを確認する必要があります。LinuxでのPATH変数の設定については、「LinuxおよびUNIXでのEssbaseデータソースの構成」を参照してください。

さらに、コンピュータごとに追加の環境変数が適切に設定されていることを確認する必要があります(クライアント・バージョンに応じてESSBASEPATHまたはARBORPATH)。詳細は、Oracle Hyperion Enterprise Performance Management Systemインストレーションおよび構成ガイド(またはクライアント・バージョンの対応するタイトル)を参照してください。

他のシステム・プロセスでは、Essbaseクライアント・ライブラリについて設定した環境変数に含まれている情報を必要とします。詳細は、次の項を参照してください。

opmn.xml内のEssbase情報の更新

接続を有効にするには、Oracle BIサーバーを実行している各コンピュータで、opmn.xml内のEssbaseクライアントのバージョンとインストール場所に関する情報が正しいことを確認する必要があります。

opmn.xmlにEssbaseクライアント・ライブラリの場所を追加するには:

  1. 編集のためにopmn.xmlを開きます。opmn.xmlは次の場所にあります。

    ORACLE_INSTANCE/config/OPMN/opmn/opmn.xml
    
  2. Oracle BIサーバー・プロセスのias-componentタグを探します。例:

    <ias-component id="coreapplication_obis1" inherit-environment="true">
    
  3. Oracle BIサーバーのias-componentタグの下で、変数ESSBASEPATHを示す行を探します。例:

    <variable id="ESSBASEPATH" value="$ORACLE_HOME/products/Essbase/EssbaseServer"
    />
    
  4. 必要に応じて、インストールされているクライアント・ライブラリの適切な場所を指すように値を更新します。クライアント・バージョンに応じて、必要であれば、変数名をARBORPATHに変更してください。

  5. 変数PATHを示す行を探します。例:

    <variable id="PATH" value="$ORACLE_HOME/bifoundation/server/bin$:$ORACLE_
    HOME/bifoundation/web/bin$:$ORACLE_HOME/bifoundation/odbc/lib$:$ORACLE_
    INSTANCE$:$ORACLE_HOME/lib$:$ESSBASEPATH/bin$:$PATH$:$/bin" append="true"/>
    
  6. Essbaseクライアント・ライブラリの場所を示すエントリの部分(上の例で太字で示されている部分)を探し、インストールに応じて、場所を更新します。クライアント・バージョンに応じて、必要であれば、パスで使用されている変数をESSBASEPATHからARBORPATHに変更してください。

  7. ファイルを保存して閉じます。

  8. OPMNを再起動します。

  9. Oracle BIサーバー・プロセスを実行している各コンピュータで前述の手順を繰り返します。同じコンピュータで複数のOracle BIサーバー・インスタンスを実行している場合は必ず、opmn.xmlで各インスタンスについてias-componentタグを適切に更新してください(例: ias-component id="coreapplication_obis1"、ias-component id="coreapplication_obis2")。

bi-init.cmdへのEssbase情報の追加

Windowsシステムの場合、接続を有効にするには、管理ツールを実行している各コンピュータでbi-init.cmdを更新する必要があります。

Linuxシステムでの環境の設定については、「LinuxおよびUNIXでのEssbaseデータソースの構成」を参照してください。

Essbase環境変数をbi-init.cmdに追加するには:

  1. 編集のためにbi-init.cmdファイルを開きます。bi-init.cmdは次の場所にあります。

    ORACLE_INSTANCE/bifoundation/OracleBIApplication/coreapplication/setup
    
  2. Essbaseクライアント・ライブラリのバージョンとインストール場所に応じて、ESSBASEPATHまたはARBORPATH環境変数を設定する行を追加します。例:

    set ORACLE_INSTANCE=C:\mw_home\instances\instance1
    set ORACLE_BI_APPLICATION=coreapplication
    set ESSBASEPATH=C:\products\Essbase\EssbaseClient
    call %ORACLE_INSTANCE%\bifoundation\OracleBIApplication\%ORACLE_BI_APPLICATION%\setup\user.cmd
    
  3. PATH環境変数を設定する行を探し、Essbaseクライアント・バイナリの場所を追加します。例:

    set PATH=%ORACLE_HOME%\bifoundation\server\bin;%ORACLE_HOME%\bifoundation\web\bin;%ORACLE_HOME%\bin;%ESSSBASEPATH%\bin;%PATH%
    
  4. ファイルを保存して閉じます。

Hyperion Financial Managementデータ・ソースの設定

Hyperion Financial Managementデータ・ソースからのインポートや、Hyperion Financial Managementデータ・ソースへの接続の設定を行う前に、Oracle BI JavaHostプロセスを実行しているコンピュータにHyperion Financial Management win32クライアントがインストールされていることを確認する必要があります。Hyperion Financial Managementバージョン9.3.1を使用している場合は、HFM Application Builderバージョン9.2.0.1コンポーネントもJavaHostコンピュータにインストールする必要があります。

Hyperion Financial Management win32クライアントをインストールする際には必ず、クライアント構成ユーティリティのサーバー/クラスタ登録タブで次の手順を実行してください。

  • Hyperion Financial ManagementサーバーのIPアドレスまたはホスト名を入力します。

  • DCOMの有効化をクリックします。

さらに、Oracle BI JavaHostプロセスを実行している各コンピュータでopmn.xmlファイルを編集して、Hyperion Financial Managementに必要な環境変数を追加する必要があります。オフライン・インポートについてもオンライン・インポートについても、Hyperion Financial Managementデータ・ソースからインポートするには、JavaHostプロセスが実行中である必要があります。


注意:

Oracle BI EEでHyperion Financial Managementデータ・ソースを使用できるのは、Oracle BI EEがWindowsのみのデプロイで実行されている場合のみです。

Hyperion Financial Management 9.3.1の場合:

  1. 編集のためにopmn.xmlを開きます。opmn.xmlは次の場所にあります。

    ORACLE_INSTANCE/config/OPMN/opmn/opmn.xml
    
  2. JavaHostプロセスのias-componentタグを探します。例:

    <ias-component id="coreapplication_obijh1">
    
  3. 環境タグ内に、次の例をガイドとして使用して、Hyperion Financial Managementに必要な新しい変数を追加します。インストールに応じて、実際の値を更新してください。

    <variable id="HYPERION_HOME" value="C:/Hyperion"/>
    <variable id="ADM_HOME" value="$HYPERION_HOME/common/ADM/9.3.1"/>
    <variable id="HFM_HOME" value="$HYPERION_HOME/FinancialManagement/Client"/>
    <variable id="ADM_ESS_NATIVE_HOME" value="$ADM_HOME/Essbase/9.3.1"/>
    
  4. PATH変数を更新して、ADM_ESS_NATIVE_HOME/binおよびHFM_HOMEを追加します。例:

    <variable id="PATH" value="$ADM_ESS_NATIVE_HOME/bin$:$HFM_HOME$:$ORACLE_
    HOME/bifoundation/server/bin$:$ORACLE_HOME/bifoundation/web/bin$:$ORACLE_
    HOME/bifoundation/odbc/lib$:$ORACLE_INSTANCE$:$ORACLE_HOME/lib" append="true"/>
    
  5. ファイルを保存して閉じます。

  6. OPMNを再起動します。

  7. Oracle BI JavaHostプロセスを実行している各コンピュータで前述の手順を繰り返します。同じコンピュータで複数のJavaHostインスタンスを実行している場合は必ず、opmn.xmlで各インスタンスについてias-componentタグを適切に更新してください(例: ias-component id="coreapplication_obijh1"、ias-component id="coreapplication_obijh2")。

    JavaHostがHFMアクセスのシングル・ポイント障害とならないように、複数のJavaHostプロセスを実行する必要があります。そのためには、Fusion Middleware Controlを使用してJavaHostプロセスをスケールアウトします。プロセスのスケールアウトの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のデプロイメントのスケールアウトに関する項を参照してください。

Hyperion Financial Management 11.1.2の場合:

  1. 編集のためにopmn.xmlを開きます。opmn.xmlは次の場所にあります。

    ORACLE_INSTANCE/config/OPMN/opmn/opmn.xml
    
  2. JavaHostプロセスのias-componentタグを探します。例:

    <ias-component id="coreapplication_obijh1">
    
  3. 環境タグ内に、次の例をガイドとして使用して、Hyperion Financial Managementに必要な新しい変数を追加します。インストールに応じて、実際の値を更新してください。

    <variable id="HYPERION_HOME" value="C:/oracle/Middleware/EPMSystem11R1"/>
    <variable id="EPM_HOME" value="C:/MW_Home/Oracle_BI1/common/jlib/11.1.2.0"/>
    <variable id="ADM_HOME" value="C:/MW_Home/Oracle_BI1/common/ADM/11.1.2.0"/>
    <variable id="HFM_HOME" value="$HYPERION_HOME/products/FinancialManagement/Client"/>
    <variable id="ADM_ESS_NATIVE_HOME" value="$ADM_HOME/"/>
    <variable id="CSS_HOME" value="c:/MW_Home/Oracle_BI1/common/CSS/11.1.2.0"/>
    
  4. PATH変数を更新して、ADM_HOME/binと、HYPERION_HOMEclientおよびcommonサブディレクトリを追加します。例:

    <variable id="PATH" value="C:\oracle\product\10.2.0\db_1\BIN$:$ADM_HOME/bin$:$HYPERION_HOME/products/FinancialManagement/Common$:$HYPERION_HOME/products/FinancialManagement/Client$:$ORACLE_HOME/common/ODBC/Merant/5.3/lib$:$ORACLE_HOME/bifoundation/server/bin$:$ORACLE_HOME/bifoundation/web/bin$:$ORACLE_HOME/bifoundation/odbc/lib$:$ORACLE_INSTANCE$:$ORACLE_HOME/lib" append="true"/>
    
    
  5. data id="start-args"タグを探し、クラスパス属性を更新して、必要なjarファイルの場所を追加します。例:

    <data id="start-args" value="-Xmx1024M -Djava.security.manager=default -DXDO_
    FONT_DIR=$ORACLE_HOME/common/fonts -Djava.security.policy=$ORACLE_
    INSTANCE/config/$COMPONENT_TYPE/$COMPONENT_NAME/java.policy 
    -Djava.util.logging.config.class=oracle.core.ojdl.logging.LoggingConfiguration 
    -Doracle.core.ojdl.logging.config.file=$ORACLE_INSTANCE/config/$COMPONENT_
    TYPE/$COMPONENT_NAME/logging-config.xml -Doracle.home=$ORACLE_HOME 
    -Doracle.instance=$ORACLE_INSTANCE -Doracle.component.type=$COMPONENT_TYPE 
    -Doracle.component.name=$COMPONENT_NAME -classpath $COMMON_COMPONENTS_
    HOME/modules/oracle.odl_11.1.1/ojdl.jar$:$ORACLE_
    HOME/bifoundation/javahost/lib/core/sautils.jar$:$ORACLE_
    HOME/bifoundation/javahost/lib/core/mad.jar$:$ORACLE_
    HOME/bifoundation/javahost/lib/core/sawconnect.jar$:$ORACLE_
    HOME/bifoundation/javahost/lib/core/javahost.jar$:$COMMON_COMPONENTS_
    HOME/modules/oracle.xdk_11.1.0/xmlparserv2.jar$:$ORACLE_
    HOME/opmn/lib/ons.jar$:$COMMON_COMPONENTS_HOME/modules/oracle.jps_
    11.1.1/jps-manifest.jar$:$COMMON_COMPONENTS_HOME/modules/oracle.jps_
    11.1.1/jps-api.jar$:$COMMON_COMPONENTS_HOME/modules/oracle.jps_
    11.1.1/jps-common.jar$:$COMMON_COMPONENTS_HOME/modules/oracle.jps_
    11.1.1/jps-internal.jar$:$COMMON_COMPONENTS_HOME/modules/oracle.nlsrtl_
    11.1.0/orai18n.jar$:$COMMON_COMPONENTS_HOME/modules/oracle.nlsrtl_
    11.1.0/orai18n-collation.jar$:$COMMON_COMPONENTS_HOME/modules/oracle.nlsrtl_
    11.1.0/orai18n-mapping.jar$:$COMMON_COMPONENTS_HOME/modules/oracle.dms_
    11.1.1/dms.jar$:$EPM_HOME/epm.jar$:$ADM_HOME/lib/adm.jar$:$ADM_HOME/lib/ap.jar$:$CSS_HOME/lib/css.jar$:$CSS_HOME/lib/common-model.jar$ com.siebel.analytics.javahost.standalone.Main"/>
    
  6. ファイルを保存して閉じます。

  7. ディレクトリORACLE_HOME/bifoundation/javahost/lib/obisintegration/admに移動し、admintegration.jarとadmimport.jarを除くすべてのjarファイルを削除します。

  8. JavaHostプロセスを再開します。

  9. Oracle BI JavaHostプロセスを実行している各コンピュータで前述の手順を繰り返します。同じコンピュータで複数のJavaHostインスタンスを実行している場合は必ず、opmn.xmlで各インスタンスについてias-componentタグを適切に更新してください(例: ias-component id="coreapplication_obijh1"、ias-component id="coreapplication_obijh2")。

    JavaHostがHFMアクセスのシングル・ポイント障害とならないように、複数のJavaHostプロセスを実行する必要があります。そのためには、Fusion Middleware Controlを使用してJavaHostプロセスをスケールアウトします。プロセスのスケールアウトの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のデプロイメントのスケールアウトに関する項を参照してください。

SAP/BWデータ・ソースの設定

SAP/BWデータ・ソースに接続するには、XMLA接続タイプ、またはSAP BWネイティブ接続タイプ(BAPI)を使用します。プラットフォームによっては、SAP BWネイティブ接続を使用できない場合があります。詳細は、「システム要件と動作要件」を参照してください。

SAP BWネイティブ接続タイプを使用してSAP/BWデータ・ソースに接続するには、まず、次のBristlecone WebサイトからBAPI Adapter for OBI Packageをダウンロードする必要があります。

http://www.bristleconelabs.com/edel/OBIEE_BAPIAdaptor_download.asp

次に、ダウンロードに付属しているReadmeに記載された構成手順を実行します。

XMLA経由でSAP/BWに接続する場合、事前構成手順は必要ありません。

Oracle RPASデータ・ソースの設定

Oracle BIサーバーは、ODBC DSNを使用してOracle RPAS (Retail Predictive Application Server)データ・ソースに接続できます。Oracle RPASデータ・ソースを設定するには、まず、Oracle RPAS ODBCドライバをインストールする必要があります。ODBC DSNの設定時には、SQLExtendedFetchオプションを選択し、認証方法リストからDBMSを選択して、ディメンション表の正規化リストからいいえを選択します。詳細は、「Oracle RPASデータ・ソースからのメタデータのインポートについて」を参照してください。

Windowsシステムでは、初期インポートの場合にも、問合せ実行時のデータ・ソースへのアクセスの場合にもOracle RPASデータ・ソースに接続できます。UNIXシステムでは、Oracle RPASデータ・ソースに接続できるのはデータ・アクセスの場合のみです。

AIX UNIXでOracle BIサーバーを実行している場合にOracle RPASデータ・ソースへのODBCアクセスを有効にする方法については、「AIX UNIXでのOracle RPAS ODBCデータ・ソースの構成」を参照してください。

リレーショナル・データ・ソースからのメタデータのインポート

サポートされているリレーショナル・データ・ソース・タイプのメタデータをインポートするには、次のインポート・オプションのいずれかと適切な接続タイプを選択します。


注意:

UNIXプラットフォームでOracle BIサーバーを実行している場合、ODBC接続タイプを使用したメタデータのインポートはサポートされません。

他のデータ・ソースからのインポートについては、「マルチディメンション・データ・ソースからのメタデータのインポート」および第5章「ADFビジネス・コンポーネント・データ・ソースの使用」を参照してください。

物理表をインポートする際には、作成したビジネス・モデルで使用する可能性があるデータを含む表のみにインポートを制限するよう注意してください。「検索」機能を使用すると、インポートする表を検索して選択することができます。無関係な表やその他のオブジェクトを多数インポートすると、不必要に複雑になるとともに、リポジトリのサイズが大きくなります。

ほとんどのデータ・ソースのメタデータをインポートする際、デフォルトでは、表、主キーおよび外部キーがインポートされます。物理レイヤーにキーが自動的に作成されるように、表とともに主キーと外部キーをインポートすることをお薦めします。キーをインポートしなかった場合、手動でキーを作成する必要があります。このプロセスには時間がかかる可能性があります。

データベース・ビュー、別名、シノニムおよびシステム表をインポートすることもできます。これらのオブジェクトをインポートするのは、Oracle BIサーバーでそれらに対する問合せを生成する場合のみにしてください。

リレーショナル・データ・ソースからメタデータをインポートするには:

  1. 管理ツールで、「ファイル」を選択し、「メタデータのインポート」を選択します。メタデータのインポート・ウィザードが表示されます。


    注意:

    既存のデータベースおよび接続プールをすでに定義している場合は、物理レイヤーの接続プールを右クリックし、「メタデータのインポート」を選択します。メタデータのインポート・ウィザードが開き、情報があらかじめ入力された「データ・ソースの選択」画面が表示されます。

    図4-1に、メタデータのインポート・ウィザードを示します。

    図4-1 メタデータのインポート・ウィザード: リレーショナル・データ・ソース

    図4-1の説明が続きます
    「図4-1 メタデータのインポート・ウィザード: リレーショナル・データ・ソース」の説明

  2. 「データ・ソースの選択」画面の「接続タイプ」フィールドで、データ・ソースに適した接続のタイプ(ODBC 3.5など)を選択します。

    データ・ソースがOracle Databaseの場合は必ず、「OCI 10g/11g」を選択してください。Oracle Databaseへの接続プロトコルとしてOCIを使用すると、パフォーマンスが向上するとともに、ODBC経由では使用できないネイティブなデータベース機能にアクセスできます。


    注意:

    Oracle Database以外については、日本語の表名や列名など、国際文字を含むスキーマをインポートする際にODBC 3.5またはDB2 CLI (Unicode)を使用することをお薦めします。

    「データ・ソースの選択」画面の残りのフィールドやオプションは、選択した接続タイプによって異なります。

    • ODBC 2.0およびODBC 3.5データ・ソースについては、「DSN」リストで、スキーマのインポート元のデータ・ソースを選択します。次に、データ・ソースの有効なユーザー名とパスワードを入力します。

      Oracle BIサーバー経由でインポートする場合、DSNエントリは、ローカル・コンピュータ上ではなくOracle BIサーバー上にあります。

    • OCI 10g/11gおよびDB2 CLI (Unicode)データ・ソースについては、「データ・ソース名」フィールドにデータ・ソースの名前を入力し、データ・ソースの有効なユーザー名とパスワードを入力します。

      Oracle Databaseデータ・ソースについては、データ・ソース名として接続文字列全体またはtnsnames.oraファイル内のネット・サービス名を入力できます。ネット・サービス名を入力する場合は、Oracle Business Intelligence環境のORACLE_HOME/network/adminでtnsnames.oraファイルを設定していることを確認する必要があります。

    他のデータ・ソース・タイプについては、別の項で説明します。

    「データ・ソースの選択」画面で情報を入力し終わったら、「次へ」をクリックします。「メタデータ型の選択」画面が表示されます。

  3. インポートするオブジェクトのタイプに対応するオプション(「」、「キー」、「外部キー」など)を選択します。一部のオプションは自動的に選択されます。デフォルトで選択されるオブジェクト・タイプはデータ・ソースのタイプごとに異なり、データ・ソースの一般的なオブジェクトに基づきます。

    結合をインポートするには、「キー」と「外部キー」の両方を選択します。システム表をインポートするには、データ・ソースのシステム権限が必要です。カスタマ・リレーションシップ・マネジメント(CRM)表からインポートするには、「CRM表からのメタデータ」を選択します。

  4. 次へ」をクリックします。「メタデータ・オブジェクトの選択」画面が表示されます。

  5. インポートするオブジェクトを「使用可能」リストで選択し、「>」(選択対象をインポート)ボタンまたは「>>」(すべてインポート)ボタンを使用して「選択済」リストに移動します。「<」(選択対象を削除)ボタンおよび「<<」(すべて削除)ボタンを使用して、「選択済」リストから「使用可能」リストにオブジェクトを戻すこともできます。

    特定の項目を検索するには、「検索」ボックスにキーワードを入力し、「下方検索」または「上方検索」をクリックします。

    すでにインポートされているオブジェクトを含め、すべてのオブジェクトを表示するには、「完全な構造の表示」を選択します。このオプションの選択を解除すると、インポート可能なオブジェクトのみが表示されます。このオプションを選択した場合、すでにインポートされているオブジェクトはグレー表示されます。

  6. 終了」をクリックします。

    インポートできなかったオブジェクトがある場合、警告メッセージのリストが表示されます。メッセージが表示されたダイアログで、次の処理を実行できます。

    • 特定の用語を検索するには、「検索」、「再検索」の順にクリックします。

    • 別のファイルにメッセージを貼り付けることができるようにウィンドウの内容をコピーするには、「コピー」をクリックします。

メタデータをインポートしたら、データベースと接続プールの設定が正しいことを確認してください。インポート時にOracle BIサーバーが正確なデータベース・タイプを特定できず、類似するタイプをデータベース・オブジェクトに割り当てることがまれにあります。このようなオブジェクトの処理の詳細は、「データベース・オブジェクトの設定」および「接続プールの作成または変更」を参照してください。

また、物理列や物理表など、インポートしたデータを物理レイヤーで視覚的に調べて、インポートが正常に完了していることを確認することをお薦めします。

「論理モデルへのマップ」画面と「ウェアハウスに公開」画面について

メタデータのインポート・ウィザードの「論理モデルへのマップ」画面および「ウェアハウスに公開」画面は、今後のリリースで使用するために予約されています。これらの画面の機能の更新については、Oracle Fusion Middlewareリリース・ノートの「Oracle Business Intelligence」の章を参照してください。

マルチディメンション・データ・ソースからのメタデータのインポート

管理ツールを使用して、マルチディメンション・データ・ソースからOracle BIリポジトリの物理レイヤーにメタデータをインポートできます。マルチディメンション・データ・ソースを使用できることで、Oracle BIサーバーは、Essbase、Oracle OLAP、Hyperion Financial Management、Microsoft Analysis Services、SAP/BW (SAP/ビジネスウェアハウス)などのソースに接続してデータを抽出できます。これらのソースのデータはダッシュボードに表示可能です。

マルチディメンション・データ・ソースとリレーショナル・データ・ソースの設定の主な違いは、物理レイヤーにあります。ビジネス・モデルとプレゼンテーション・レイヤーにおけるマルチディメンション・データ・ソースとリレーショナル・データ・ソースの設定は、ほとんど同じです。

インポート・プロセスでは、マルチディメンション・データ・ソースの各キューブが1つの物理キューブ表として作成されます。Oracle BIサーバーによって、メトリック、ディメンション、階層など、キューブ・メタデータがインポートされます。キューブをインポートしたら、物理キューブ列に正しい集計ルールがあり、階層タイプが正しいことを確認する必要があります。詳細は、「物理階層オブジェクトでの作業」を参照してください。


注意:

マルチディメンション・データ・ソースから物理スキーマを手動で作成すると、多大な労力を要するうえ、エラーが発生しやすくなります。そのため、インポート手法を使用することを強くお薦めします。

ビジネス・モデルで使用しない階層や列は、物理レイヤーから削除することをお薦めします。これによって、管理ツールで不要なオブジェクトを保守する必要がなくなり、パフォーマンスが向上する可能性があります。

マルチディメンション・データ・ソースからメタデータをインポートするには:

  1. 管理ツールで、「ファイル」を選択し、「メタデータのインポート」を選択します。メタデータのインポート・ウィザードが表示されます。


    注意:

    既存のデータベースおよび接続プールをすでに定義している場合は、物理レイヤーの接続プールを右クリックし、「メタデータのインポート」を選択します。メタデータのインポート・ウィザードが開き、情報があらかじめ入力された「データ・ソースの選択」画面が表示されます。この方法を使用して、増分インポートを実行することもできます。

    図4-2に、メタデータのインポート・ウィザードを示します。

    図4-2 メタデータのインポート・ウィザード: マルチディメンション・データ・ソース

    図4-2の説明が続きます
    「図4-2 メタデータのインポート・ウィザード: マルチディメンション・データ・ソース」の説明

    メタデータのインポート・ウィザードの「論理モデルへのマップ」画面および「ウェアハウスに公開」画面は、今後のリリースで使用するために予約されています。これらの画面の機能の更新については、Oracle Fusion Middlewareリリース・ノートの「Oracle Business Intelligence」の章を参照してください。

  2. 「データ・ソースの選択」画面の「接続タイプ」フィールドで、データ・ソースに適した接続のタイプを選択します。

    「データ・ソースの選択」画面の残りのフィールドやオプションは、選択した接続タイプによって異なります。表4-1に、マルチディメンション接続タイプを示します。

    表4-1 マルチディメンション接続オプション

    接続タイプ 説明

    ODBC 3.5

    ODBC 3.5接続タイプは、Oracle RPASデータ・ソースに使用します。DSNエントリを選択し、選択したデータ・ソースのユーザー名とパスワードを入力します。詳細は、「ODBCデータ・ソース名(DSN)の設定」を参照してください。

    Essbase

    Essbase Server」フィールドに、Essbaseサーバーを実行しているコンピュータのホスト名を入力し、データ・ソースの有効なユーザー名とパスワードを入力します。この情報は、データ・ソース管理者から入手してください。

    Essbaseデータ・ソースのデータを物理レイヤーでモデリングする方法については、「Essbaseデータ・ソースでの作業」を参照してください。

    注意: Essbaseデータ・ソースからメタデータをインポートする前に、Oracle BIサーバーを実行しているコンピュータにEssbaseクライアント・ライブラリがインストールされていることを確認する必要があります。詳細は、「Essbaseデータ・ソースの設定」を参照してください。

    XMLA

    XMLA接続タイプは、Microsoft Analysis ServicesおよびSAP/BWに使用します。スキーマのインポート元のデータ・ソースのURLを入力します。次に、プロバイダ・タイプ(Analysis Services 2000やSAP/BW 3.5/7.0など)と、データ・ソースの有効なユーザー名およびパスワードを入力します。

    ターゲット・データベース」については、次のいずれかを実行します。

    • 新規」を選択し、新しいデータベース・オブジェクトに使用する名前を入力します。

    • 既存」を選択し、「参照」をクリックして、既存のデータベース・オブジェクトを選択します。

    Oracle OLAP

    データ・ソース名」フィールドにデータ・ソースの名前(ネット・サービス名)を入力し、データ・ソースの有効なユーザー名とパスワードを入力します。データ・ソース名は、tnsnames.oraファイルに作成したエントリと同じです。必ず、Oracle Business Intelligence環境のtnsnames.oraファイル内の名前を使用してください。ネット・サービス名のかわりに、接続文字列全体を入力することもできます。

    ターゲット・データベース」については、次のいずれかを実行します。

    • 新規」を選択し、新しいデータベース・オブジェクトに使用する名前を入力します。

    • 既存」を選択し、「参照」をクリックして、既存のデータベース・オブジェクトを選択します。

    オフライン・インポートについてもオンライン・インポートについても、Oracle OLAPデータ・ソースからインポートするには、JavaHostプロセスが実行中である必要があります。

    Oracle OLAPデータ・ソースのデータを物理レイヤーでモデリングする方法については、「Oracle OLAPデータ・ソースでの作業」を参照してください。

    注意: OLAPオプションを選択してOracle Databaseデータ・ソースからインポートする場合、リレーショナル表とマルチディメンション表の両方を含めることができます。ただし、管理ツールの同じデータベース・オブジェクトに両方の表タイプが含まれないようにしてください。表タイプごとに異なるデータベース機能セットを指定する必要がある場合があるためです。

    たとえば、データベース機能GROUP_BY_GROUPING_SETS_SUPPORTEDが有効な場合、Oracle OLAP問合せは失敗します。ただし、Oracle Databaseのリレーショナル表については、この機能を有効にする必要がある場合があります。

    リレーショナル表とマルチディメンション表について、2つの異なるデータベース・オブジェクトを作成することをお薦めします。

    Hyperion ADM

    Hyperion Financial ManagementサーバーのURLを、ドライバおよびアプリケーション名(キューブ名)を含めて次の形式で入力します。

    adm:native:HsvADMDriver:ip_or_host:application_name
    

    例:

    adm:native:HsvADMDriver:130.35.40.80:UCFHFM
    

    データ・ソースの有効なユーザー名とパスワードも入力する必要があります。

    オフライン・インポートについてもオンライン・インポートについても、Hyperion Financial Managementデータ・ソースからインポートするには、JavaHostプロセスが実行中である必要があります。

    Hyperion Financial Managementデータ・ソースのデータを物理レイヤーでモデリングする方法については、「Hyperion Financial Managementデータ・ソースでの作業」を参照してください。

    注意: インポート前に、「Hyperion Financial Managementデータ・ソースの設定」に記載されている事前構成手順を必ず実行してください。

    SAP BWネイティブ

    次の情報を指定します。

    • システムIPまたはホスト名: SAPデータ・サーバーのホスト名またはIPアドレス。このフィールドは、SAP/BW接続文字列のパラメータashostに対応します。

    • システム番号: SAPシステム番号。これは、Web Application Server (WAS)とも呼ばれるSAPインスタンスに割り当てられた2桁の番号です。このフィールドは、SAP/BW接続文字列のパラメータsysnrに対応します。

    • クライアント番号: SAPクライアント番号。これは、SAPでクライアントと呼ばれる自己完結型の単位に割り当てられた3桁の番号です。クライアントは、トレーニング、開発、テスト、本番クライアントなどです。また、大企業の個々の部門を表す場合もあります。このフィールドは、SAP/BW接続文字列のパラメータclientに対応します。

    • 言語: データ・ソースへのログイン時に使用されるSAP言語コード(例: 英語の場合はEN、ドイツ語の場合はDE)。このフィールドは、SAP/BW接続文字列のパラメータlangに対応します。

    • 追加パラメータ: パラメータ=値という形式の追加接続文字列パラメータ。複数のパラメータを指定する場合はコロンで区切ります。このフィールドはオプションです。

    • ユーザー名: データ・ソースの有効なユーザー名。

    • パスワード: 対応するユーザー・パスワード。パスワードでは大/小文字が区別されます。

    最初の5つのフィールドは、SAP/BW接続文字列の要素を構成します。形式は次のとおりです。

    ashost=value:sysnr=value:client=value:lang=value:additional_param=value
    

    例:

    ashost=10.30.0.19:sysnr=00:client=100:lang=EN
    

    注意: インポート前に、「SAP/BWデータ・ソースの設定」に記載されている事前構成手順を必ず実行してください。


    他のデータ・ソース・タイプについては、別の項で説明します。

    「データ・ソースの選択」画面で情報を入力し終わったら、「次へ」をクリックします。

  3. Oracle RPASデータ・ソースの場合のみ、「メタデータ型の選択」画面が表示されます。Oracle RPASについては、「」、「キー」および「外部キー」を選択してください。次に、「次へ」をクリックします。

    詳細は、「Oracle RPASデータ・ソースからのメタデータのインポートについて」を参照してください。

  4. 「メタデータ・オブジェクトの選択」画面で、インポートするオブジェクトを「使用可能」リストから選択し、「>」(選択対象をインポート)ボタンまたは「>>」(すべてインポート)ボタンを使用して「選択済」リストに移動します。「<」(選択対象を削除)ボタンおよび「<<」(すべて削除)ボタンを使用して、「選択済」リストから「使用可能」リストにオブジェクトを戻すこともできます。

    特定の項目を検索するには、「検索」ボックスにキーワードを入力し、「下方検索」または「上方検索」をクリックします。

    すでにインポートされているオブジェクトを含め、すべてのオブジェクトを表示するには、「完全な構造の表示」を選択します。このオプションの選択を解除すると、インポート可能なオブジェクトのみが表示されます。このオプションを選択した場合、すでにインポートされているオブジェクトはグレー表示されます。

    Essbaseデータ・ソースの場合、UDA(ユーザー定義属性)をインポートするには、「UDAのインポート」を選択します。

  5. 終了」をクリックします。

    インポートできなかったオブジェクトがある場合、警告メッセージのリストが表示されます。メッセージが表示されたダイアログで、次の処理を実行できます。

    • 特定の用語を検索するには、「検索」、「再検索」の順にクリックします。

    • 別のファイルにメッセージを貼り付けることができるようにウィンドウの内容をコピーするには、「コピー」をクリックします。

メタデータをインポートしたら、データベースと接続プールの設定が正しいことを確認してください。インポート時にOracle BIサーバーが正確なデータベース・タイプを特定できず、類似するタイプをデータベース・オブジェクトに割り当てることがまれにあります。このようなオブジェクトの処理の詳細は、「データベース・オブジェクトの設定」および「接続プールの作成または変更」を参照してください。

また、物理列や階層レベルなど、インポートしたデータを物理レイヤーで視覚的に調べて、インポートが正常に完了していることを確認することをお薦めします。

Essbaseデータ・ソースについては、すべての階層がデフォルトで非バランス型としてインポートされます。物理階層ごとに「階層タイプ」プロパティを確認し、必要に応じて値を変更してください。Essbaseでサポートされている階層タイプは、「非バランス型」、「完全なバランス型」および「」です。

Oracle RPASデータ・ソースからのメタデータのインポートについて

この項では、管理ツールを使用したOracle RPASからのメタデータのインポートに関する重要な情報を紹介します。

  • Oracle RPASスキーマはWindowsでのみインポートできます。

  • RPASスキーマをインポートする前に、ODBC DSNセットアップ・ページのディメンション表の正規化フィールドの値をはいに設定する必要があります。理由は次のとおりです。

    • この値をはいに設定すると、適切なスキーマ・モデル(スノーフレーク・スキーマ)が使用されて、結合が正しく作成され、データのドリルダウンが可能になります。

    • この値をいいえに設定すると、あまり適切でないスキーマ・モデル(スター・スキーマ)が使用されて、すべての表間に結合が作成され、ドリルダウンが正しく機能しなくなります。このように作成された結合の多くは不要で、手動で削除する必要があります。

    詳細は、「ODBCデータ・ソース名(DSN)の設定」を参照してください。

  • 管理ツールにRPASスキーマをインポートする場合は、データとともに結合をインポートする必要があります。そのためには、メタデータのインポート・ウィザードでメタデータ型として「キー」および「外部キー」を選択します。

  • RPASスキーマをインポートしたら、ODBC DSNセットアップ・ページのディメンション表の正規化フィールドの値をいいえに変更してください。Oracle BIサーバーでRPASドライバに対する最適化されたSQLが正しく生成されるようにするには、インポート後にこの設定をいいえに戻す必要があります。

    注意: ディメンション表の正規化の設定値をいいえに変更しなかった場合、ほとんどの問合せは失敗し、次のようなエラー・メッセージが表示されます。

    [nQSError: 16001] ODBC error state: S0022 code: 0 message: [Oracle Retail][RPAS 
    ODBC]Column:YEAR_LABEL not found..[nQSError: 16014] SQL statement preparation 
    failed. Statement execute failed.
    
  • Oracle RPASが唯一のデータ・ソースである場合は、NQSConfig.INIファイルでNULL_VALUES_SORT_FIRSTの値をONに設定する必要があります。NQSConfig.INIでの値の設定の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』を参照してください。

XMLデータ・ソースからのメタデータのインポート

この項では、Extensible Markup Language (XML)をデータ・ソースとして使用する方法について説明します。XMLは、Webにおける構造化ドキュメントおよびデータの汎用形式です。構造化データを保存するデータベースとしてXMLを使用することもできます。

Oracle BIサーバーでは、Oracle BIサーバーXML Gatewayを使用したアクセスやXML ODBCドライバを使用したアクセスなど、様々なXMLアクセス・モデルがサポートされます。

この項の項目は次のとおりです。

データ・ソースとしてのXMLの使用について

Oracle BIサーバーでは、リポジトリの物理レイヤーのデータ・ソースとしてXMLデータ・ソースを使用できます。XMLデータ・ソースへのアクセスに使用する方法に応じて、データ・ソースは次のいずれかのソースを指すURLで表すことができます。

  • XMLデータ・アイランドが格納された、インターネット(イントラネットやエクストラネットを含む)上の静的XMLファイルまたはHTMLファイル。例:

    tap://216.217.17.176/[DE0A48DE-1C3E-11D4-97C9-00105AA70303].XML

  • サーバー・サイトから生成される動的XML。例:

    tap://www.aspserver.com/example.asp

  • XMLデータ・アイランドが格納された、ローカル・ドライブまたはネットワーク・ドライブ上のXMLファイルまたはHTMLファイル。例:

    d:/xmldir/example.xml

    d:/htmldir/island.htm

    ローカルまたはネットワークXMLファイルのディレクトリ・パスを指定することも、ファイル名でワイルドカードとしてアスタリスク( * )を使用することもできます。ファイル名を指定せずにディレクトリ・パスを指定した場合(例: d:/xmldir)、XML拡張子を持つすべてのファイルがインポートされます。例:

    d:/xmldir/

    d:/xmldir/exam*.xml

    d:/htmldir/exam*.htm

    d:/htmldir/exam*.html

  • <table>タグと</table>タグのペアで定義された表が格納されたHTMLファイル。HTMLファイルは、インターネット上(イントラネットやエクストラネットなど)にある場合もあれば、ローカル・ドライブまたはネットワーク・ドライブにある場合もあります。詳細は、「HTML表へのアクセス」を参照してください。

URLにリポジトリ変数またはセッション変数を含めると、URLに埋め込まれたユーザーIDおよびパスワードを許可するHTTPデータ・ソースがサポートされます。例:

http://somewebserver/cgi.pl?userid=valueof(session_variable1)&password=
valueof(session_variable2)

この機能を使用して、ランタイム・パラメータによって動的に決定される場所を含むXMLデータ・ソースを作成することもできます。変数の詳細は、第18章を参照してください。

Oracle BIサーバーがローカル以外のファイル(ネットワーク・ファイルやインターネット上のファイルなど)にアクセスする必要がある場合は、それらのリモート・ファイルにアクセスするための十分なネットワーク権限がある、有効なユーザーIDとパスワードを使用してOracle BIサーバーを実行する必要があります。

XML Gatewayを使用したXMLデータ・ソースからのメタデータのインポート

Oracle BIサーバーXML Gatewayを使用すると、メタデータのインポート・プロセスでXMLドキュメントが表形式にフラット化されます。その際、XMLファイル名の本体(拡張子を含まないファイル名)が表名として使用され、XMLドキュメントの第2レベルの要素が行デリミタとして使用されます。すべてのリーフ・ノードが、表に属する列としてインポートされます。リーフ・ノードへの階層アクセス・パスもインポートされます。

Oracle BIサーバーXML Gatewayでは、XMLスキーマに格納されたメタデータ情報が使用されます。XMLスキーマはXMLドキュメント内に含まれているか、XMLドキュメントのルート要素内で参照されます。

使用可能なスキーマがない場合は、すべてのXMLデータがテキスト・データとしてインポートされます。リポジトリの作成時に、物理レイヤーの列のデータ型を変更して、スキーマで定義されている対応する列のデータ型を上書きできます。ゲートウェイによって、入力データが、物理レイヤーで指定した目的の型に変換されます。CAST演算子を使用して、管理ツールのビジネス・モデルとマッピング・レイヤーでテキスト・データ型を他のデータ型にマップすることもできます。

Oracle BIサーバーXML Gatewayでは、次の項目はサポートされません。

  • XMLドキュメントに含まれる外部参照の解決(「Oracle BIサーバーXML Gatewayによって生成されるXMLドキュメントの例」のサンプル・ファイルに示されている外部XMLスキーマへの参照を除く)

  • Microsoft XMLスキーマに含まれる要素および属性の継承

  • 混合コンテンツ・モデルの要素タイプ(<p> hello <b>Joe</b>, how are you doing?</p>のように、要素とCDATAが混在するXML要素など)

Oracle BIサーバーXML Gatewayを使用してXMLデータをインポートするには:

  1. 管理ツールで、「ファイル」を選択し、「メタデータのインポート」を選択します。メタデータのインポート・ウィザードが表示されます。


    注意:

    既存のデータベースおよび接続プールをすでに定義している場合は、物理レイヤーの接続プールを右クリックし、「メタデータのインポート」を選択します。メタデータのインポート・ウィザードが開き、情報があらかじめ入力された「データ・ソースの選択」画面が表示されます。

    図4-3に、メタデータのインポート・ウィザードを示します。

    図4-3 メタデータのインポート・ウィザード: XMLデータ・ソース

    図4-3の説明が続きます
    「図4-3 メタデータのインポート・ウィザード: XMLデータ・ソース」の説明

    メタデータのインポート・ウィザードの「論理モデルへのマップ」画面および「ウェアハウスに公開」画面は、今後のリリースで使用するために予約されています。これらの画面の機能の更新については、Oracle Fusion Middlewareリリース・ノートの「Oracle Business Intelligence」の章を参照してください。

  2. 「データ・ソースの選択」画面の「接続タイプ」フィールドで「XML」を選択します。続いて、次の値を指定します。

    • URL」フィールドで、XMLデータ・ソースのURLを指定します。Oracle BIサーバーXML Gatewayでは、前の項で説明したすべてのデータ・ソースがサポートされます。

      URLには、リポジトリ変数またはセッション変数を含めることができます。変数の詳細は、第18章を参照してください。

      参照」をクリックすると、「XMLファイルの選択」ダイアログが表示され、ファイルを1つ選択できます。XMLドキュメントの場合、URL内でファイル名を指定する際に拡張子.xmlを付ける必要があります。拡張子を付けなかった場合、ドキュメントはHTMLドキュメントとして処理されます。

    • 該当するフィールドに、HTTP基本認証セキュリティ・モードを採用しているHTTPサイトへの接続に使用するユーザー名とパスワードを入力します(オプション)。

      HTTP基本認証セキュリティ・モードに加え、Oracle BIサーバーXML Gatewayでは、セキュアHTTPプロトコル、および以前はNTLMまたはWindows NT Challenge/Response認証と呼ばれていた統合Windows認証(Windows 2000の場合)もサポートされます。

    「データ・ソースの選択」画面で情報を入力し終わったら、「次へ」をクリックします。「メタデータ型の選択」画面が表示されます。

  3. インポートするオブジェクトのタイプに対応するオプション(「」、「キー」、「外部キー」など)を選択します。最も一般的なオプションは自動的に選択されます。

    結合をインポートするには、「キー」と「外部キー」の両方を選択します。システム表をインポートするには、データ・ソースのシステム権限が必要です。

  4. 次へ」をクリックします。「メタデータ・オブジェクトの選択」画面が表示されます。

  5. インポートするオブジェクトを「使用可能」リストで選択し、「>」(選択対象をインポート)ボタンまたは「>>」(すべてインポート)ボタンを使用して「選択済」リストに移動します。「<」(選択対象を削除)ボタンおよび「<<」(すべて削除)ボタンを使用して、「選択済」リストから「使用可能」リストにオブジェクトを戻すこともできます。

    特定の項目を検索するには、「検索」ボックスにキーワードを入力し、「下方検索」または「上方検索」をクリックします。

    すでにインポートされているオブジェクトを含め、すべてのオブジェクトを表示するには、「完全な構造の表示」を選択します。このオプションの選択を解除すると、インポート可能なオブジェクトのみが表示されます。このオプションを選択した場合、すでにインポートされているオブジェクトはグレー表示されます。

  6. 終了」をクリックします。

XMLデータをインポートしたら、接続プールの設定を調整する必要があります。詳細は、「接続プールの作成または変更」を参照してください。少なくとも、次の作業を実行する必要があります。

  • 「接続プール」ダイアログの「一般」タブで、接続の名前および説明(オプション)を入力します。

  • 「XML」タブをクリックして、URLリフレッシュ間隔や、タイムアウトするまでのURLのロードの待ち時間など、その他の接続プロパティを設定します。

    一般に、XMLデータ・ソースはリアルタイムで頻繁に更新されるため、Oracle BIサーバーXML Gatewayデータ・ソースのリフレッシュ間隔を指定できます。デフォルトの問合せのタイムアウト間隔(URLのロードのタイムアウト)は15分です。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のXMLデータ・ソースのリフレッシュ間隔に関する項を参照してください。

Oracle BIサーバーXML Gatewayによって生成されるXMLドキュメントの例

例4-1例4-2に、Oracle BIサーバーXML Gatewayによって生成されるXMLドキュメントのサンプルおよび対応する列を示します。

例4-1 外部ファイルに格納されたXMLスキーマ

次のサンプルXMLデータ・ドキュメント(mytest.xml)は、外部ファイルに格納されたXMLスキーマを参照します。スキーマ・ファイルは、データ・ドキュメントの後に示します。これによって生成される、リポジトリにインポート可能なXMLスキーマ情報は最後に示します。

<?xml version="1.0"?>
<test xmlns="x-schema:mytest_sch.xml">

<row>
<p1>0</p1>
<p2 width="5">
      <p3>hi</p3>
      <p4>
         <p6>xx0</p6>
         <p7>yy0</p7>
      </p4>
      <p5>zz0</p5>
</p2>
</row>

<row>
<p1>1</p1>
<p2 width="6">
      <p3>how are you</p3>
      <p4>
         <p6>xx1</p6>
         <p7>yy1</p7>
      </p4>
      <p5>zz1</p5>
</p2>
</row>

<row>
<p1>a</p1>
<p2 width="7">
      <p3>hi</p3>
      <p4>
         <p6>xx2</p6>
         <p7>yy2</p7>
      </p4>
      <p5>zz2</p5>
</p2>
</row>

<row>
<p1>b</p1>
<p2 width="8">
      <p3>how are they</p3>
      <p4>
         <p6>xx3</p6>
         <p7>yy3</p7>
      </p4>
      <p5>zz2</p5>
</p2>
</row>
</test>

対応するスキーマ・ファイルは次のとおりです。

<Schema xmlns="urn:schemas-microsoft-com:xml-data"
      xmlns:dt="urn:schemas-microsoft-com:datatypes">
      <ElementType name="test" content="eltOnly" order="many">
         <element type="row"/>
      </ElementType>
      <ElementType name="row" content="eltOnly" order="many">
      <element type="p1"/>
         <element type="p2"/>
      </ElementType>
      <ElementType name="p2" content="eltOnly" order="many">
         <AttributeType name="width" dt:type="int" />
         <attribute type="width" />
         <element type="p3"/>
         <element type="p4"/>
         <element type="p5"/>
      </ElementType>
      <ElementType name="p4" content="eltOnly" order="many">
         <element type="p6"/>
         <element type="p7"/>
      </ElementType>
      <ElementType name="p1" content="textOnly" dt:type="string"/>
      <ElementType name="p3" content="textOnly" dt:type="string"/>
      <ElementType name="p5" content="textOnly" dt:type="string"/>
      <ElementType name="p6" content="textOnly" dt:type="string"/>
      <ElementType name="p7" content="textOnly" dt:type="string"/>
</Schema>

前述のXMLデータ・ドキュメント(mytest.xml)から生成される表の名前はmytest、列名はp1p3p6p7p5およびwidthとなります。

さらに、各列がドキュメントに出現するコンテキストを保持し、XML要素から派生した、異なるコンテキストで出現する同名の列を区別するために、World Wide Web ConsortiumのXPathに関する勧告に基づいて、列の完全修飾名の次のようなリストが生成されます。

//test/row/p1
//test/row/p2/p3
//test/row/p2/p4/p6
//test/row/p2/p4/p7
//test/row/p2/p5
//test/row/p2@width

例4-2 XMLドキュメント内のネストされた表構造

次の例はさらに複雑なサンプルで、XMLドキュメントでネストされた表構造を使用する方法を示します。オプションで、外部スキーマ・ファイルへの参照を省略することもできます。その場合は、すべての要素がVarchar文字型として処理されます。

===Invoice.xml===
<INVOICE>
   <CUSTOMER>
      <CUST_ID>1</CUST_ID>
      <FIRST_NAME>Nancy</FIRST_NAME>
      <LAST_NAME>Fuller</LAST_NAME>
      <ADDRESS>
         <ADD1>507 - 20th Ave. E.,</ADD1>
         <ADD2>Apt. 2A</ADD2>
         <CITY>Seattle</CITY>
         <STATE>WA</STATE>
         <ZIP>98122</ZIP>
      </ADDRESS>
      <PRODUCTS>
           <CATEGORY>
              <CATEGORY_ID>CAT1</CATEGORY_ID>
              <CATEGORY_NAME>NAME1</CATEGORY_NAME>
              <ITEMS>    
                  <ITEM>   
                     <ITEM_ID>1</ITEM_ID>
                     <NAME></NAME>
                     <PRICE>0.50</PRICE>
                     <QTY>2000</QTY>
                  </ITEM>   
                  <ITEM>   
                     <ITEM_ID>2</ITEM_ID>
                     <NAME>SPRITE</NAME>
                     <PRICE>0.30</PRICE>
                     <QTY></QTY>
                  </ITEM>   
              </ITEMS>    
         </CATEGORY>
           <CATEGORY>
              <CATEGORY_ID>CAT2</CATEGORY_ID>
              <CATEGORY_NAME>NAME2</CATEGORY_NAME>
              <ITEMS>    
                  <ITEM>   
                     <ITEM_ID>11</ITEM_ID>
                     <NAME>ACOKE</NAME>
                     <PRICE>1.50</PRICE>
                     <QTY>3000</QTY>
                  </ITEM>   
                  <ITEM>   
                     <ITEM_ID>12</ITEM_ID>
                     <NAME>SOME SPRITE</NAME>
                     <PRICE>3.30</PRICE>
                     <QTY>2000</QTY>
                  </ITEM>   
              </ITEMS>    
         </CATEGORY>
      </PRODUCTS>
   </CUSTOMER>
   <CUSTOMER>
      <CUST_ID>2</CUST_ID>
      <FIRST_NAME>Andrew</FIRST_NAME>
      <LAST_NAME>Carnegie</LAST_NAME>
      <ADDRESS>
         <ADD1>2955 Campus Dr.</ADD1>
         <ADD2>Ste. 300</ADD2>
         <CITY>San Mateo</CITY>
         <STATE>CA</STATE>
         <ZIP>94403</ZIP>
      </ADDRESS>
      <PRODUCTS>
           <CATEGORY>
              <CATEGORY_ID>CAT22</CATEGORY_ID>
              <CATEGORY_NAME>NAMEA1</CATEGORY_NAME>
              <ITEMS>    
                  <ITEM>   
                     <ITEM_ID>122</ITEM_ID>
                     <NAME>DDDCOKE</NAME>
                     <PRICE>11.50</PRICE>
                     <QTY>2</QTY>
                  </ITEM>   
                  <ITEM>   
                     <ITEM_ID>22</ITEM_ID>
                     <NAME>PSPRITE</NAME>
                     <PRICE>9.30</PRICE>
                     <QTY>1978</QTY>
                  </ITEM>   
              </ITEMS>    
         </CATEGORY>
           <CATEGORY>
              <CATEGORY_ID>CAT24</CATEGORY_ID>
              <CATEGORY_NAME>NAMEA2</CATEGORY_NAME>
              <ITEMS>    
                  <ITEM>   
                     <ITEM_ID>19</ITEM_ID>
                     <NAME>SOME COKE</NAME>
                     <PRICE>1.58</PRICE>
                     <QTY>3</QTY>
                  </ITEM>   
                  <ITEM>   
                     <ITEM_ID>15</ITEM_ID>
                     <NAME>DIET SPRITE</NAME>
                     <PRICE>9.30</PRICE>
                     <QTY>12000</QTY>
                  </ITEM>   
              </ITEMS>    
         </CATEGORY>
      </PRODUCTS>
   </CUSTOMER>
   <CUSTOMER>
      <CUST_ID>3</CUST_ID>
      <FIRST_NAME>Margaret</FIRST_NAME>
      <LAST_NAME>Leverling</LAST_NAME>
      <ADDRESS>
         <ADD1>722 Moss Bay Blvd.</ADD1>
         <ADD2> </ADD2>
         <CITY>Kirkland</CITY>
         <STATE>WA</STATE>
         <ZIP>98033</ZIP>
      </ADDRESS>
      <PRODUCTS>
           <CATEGORY>
              <CATEGORY_ID>CAT31</CATEGORY_ID>
              <CATEGORY_NAME>NAMEA3</CATEGORY_NAME>
              <ITEMS>    
                  <ITEM>   
                     <ITEM_ID>13</ITEM_ID>
                     <NAME>COKE33</NAME>
                     <PRICE>30.50</PRICE>
                     <QTY>20033</QTY>
                  </ITEM>   
                  <ITEM>   
                     <ITEM_ID>23</ITEM_ID>
                     <NAME>SPRITE33</NAME>
                     <PRICE>0.38</PRICE>
                     <QTY>20099</QTY>
                  </ITEM>   
              </ITEMS>    
         </CATEGORY>
           <CATEGORY>
              <CATEGORY_ID>CAT288</CATEGORY_ID>
              <CATEGORY_NAME>NAME H</CATEGORY_NAME>
              <ITEMS>    
                  <ITEM>   
                     <ITEM_ID>19</ITEM_ID>
                     <NAME>COLA</NAME>
                     <PRICE>1.0</PRICE>
                     <QTY>3</QTY>
                  </ITEM>   
                  <ITEM>   
                     <ITEM_ID>18</ITEM_ID>
                     <NAME>MY SPRITE</NAME>
                     <PRICE>8.30</PRICE>
                     <QTY>123</QTY>
                  </ITEM>   
              </ITEMS>    
         </CATEGORY>
      </PRODUCTS>
   </CUSTOMER>
</INVOICE>

生成されるXMLスキーマは、次の列名および対応する完全修飾名を持つ1つの表(INVOICE)で構成されます。

完全修飾名
ADD1 //INVOICE/CUSTOMER/ADDRESS/ADD1
ADD2 //INVOICE/CUSTOMER/ADDRESS/ADD2
CITY //INVOICE/CUSTOMER/ADDRESS/CITY
STATE //INVOICE/CUSTOMER/ADDRESS/STATE
ZIP //INVOICE/CUSTOMER/ADDRESS/ZIP
CUST_ID //INVOICE/CUSTOMER/CUST_ID
FIRST_NAME //INVOICE/CUSTOMER/FIRST_NAME
LAST_NAME //INVOICE/CUSTOMER/LAST_NAME
CATEGORY_ID //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/CATEGORY_ID
CATEGORY_NAME //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/CATEGORY_NAME
ITEM_ID //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/ITEMS/ITEM/ITEM_ID
NAME //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/ITEMS/ITEM/NAME
PRICE //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/ITEMS/ITEM/PRICE
QTY //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/ITEMS/ITEM/QTY

値を持つタグのみが列として抽出されます。XML問合せではタグの完全修飾名が生成されるため、適切な列が取得されていることを確認できます。

次に、INVOICE表に対するサンプル問合せの結果を示します。

SELECT first_name, last_name, price, qty, name FROM invoice
------------------------------------------------------------
FIRST_NAME  LAST_NAME         PRICE   QTY    NAME
------------------------------------------------------------
Andrew      Carnegie           1.58     3    SOME COKE
Andrew      Carnegie          11.50     2    DDDCOKE
Andrew      Carnegie           9.30   12000  DIET SPRITE
Andrew      Carnegie           9.30    1978  PSPRITE
Margar      Leverling          0.38   20099  SPRITE33
Margar      Leverling          1.0      3    COLA
Margar      Leverling         30.50   20033  COKE33
Margar      Leverling          8.30    123   MY SPRITE
Nancy       Fuller             0.30          SPRITE
Nancy       Fuller             0.50    2000
Nancy       Fuller             1.50    3000  ACOKE
Nancy       Fuller             3.30    2000  SOME SPRITE
------------------------------------------------------------
Row count: 12

HTML表へのアクセス

Oracle BIサーバーXML Gatewayでは、HTMLファイル内の表をデータ・ソースとして使用することもできます。HTMLファイルは、インターネット(イントラネットやエクストラネットを含む)上のファイルを指すURLとして指定することも、ローカル・ドライブまたはネットワーク・ドライブ上のファイルとして指定することもできます。

<table>タグと</table>タグのペアで定義される表がHTML 4.0仕様のネイティブな構成メンバーであっても、Webデザイナは多くの場合、これをデータ構造としてではなく、特定の視覚効果を達成するための一般的なフォーマット方法として使用します。Oracle BIサーバーXML Gatewayは現在、<th>タグと</th>タグのペアで定義された、特定の列ヘッダーを含む表を最も効果的に抽出します。

特定の列ヘッダーを含まない表については、Oracle BIサーバーXML Gatewayは、単純な経験則をいくつか採用して、実際のデータ表であると思われるHTMLファイルの部分をできるだけ正しく特定します。

次に、1つの表を含むサンプルHTMLファイルを示します。

<html>
   <body>
      <table border=1 cellpadding=2 cellspacing=0>
         <tr>
            <th colspan=1>Transaction</th>
            <th colspan=2>Measurements</th>
         </tr>
         <tr>
            <th>Quality</th>
            <th>Count</th>
            <th>Percent</th>
         </tr>
         <tr>
            <td>Failed</td>
            <td>66,672</td>
            <td>4.1%</td>
         </tr>
         <tr>
            <td>Poor</td>
            <td>126,304</td>
            <td>7.7%</td>
         </tr>
         <tr>
            <td>Warning</td>
            <td>355,728</td>
            <td>21.6%</td>
         </tr>
         <tr>
            <td>OK</td>
            <td>1,095,056</td>
            <td>66.6%</td>
         </tr>
         <tr>
            <td colspan=1>Grand Total</td>
            <td>1,643,760</td>
            <td>100.0%</td>
         </tr>
      </table>
   </body>
</html>

表名はHTMLファイルの名前から派生し、列名は、対応する列のヘッダー(<th>タグと</th>タグのペアで定義されるもの)をアンダースコアで区切って連結することにより形成されます。

サンプル・ファイルの名前を18.htmとすると、表名は18_0となり(そのHTMLファイルの最初の表であるため)、列名および対応する完全修飾名は次のようになります。

完全修飾名
Transaction_Quality \\18_0\Transaction_Quality
Measurements_Count \\18_0\Measurements_Count
Measurements_Percent \\18_0\Measurements_Percent

表の列ヘッダーが複数の行に出現する場合は、それらのヘッダー行の対応するフィールド・コンテンツを連結することにより列名が形成されます。

ヘッダー・タグのペアがない表については、Oracle BIサーバーXML Gatewayは、最初の行のフィールド値(<td>タグと</td>タグのペアで区切られたもの)を列名と見なします。列には、出現する順に名前が付けられます(例: c0、c1)。

その他のXMLの例については、「XML ODBCを使用したXMLデータ・ソースからのメタデータのインポート」および「XMLドキュメントの例」を参照してください。

XML ODBCを使用したXMLデータ・ソースからのメタデータのインポート

XML ODBCデータベース・タイプを使用すると、ODBCインタフェースを介してXMLデータ・ソースにアクセスできます。物理表の物理列を表すXML要素のデータ型は、XMLスキーマで定義されたXML要素のデータ型から派生します。適切なXMLスキーマがない場合は、デフォルトの文字列データ型が使用されます。物理レイヤーにおけるデータ型の設定によって、XMLデータ・ソースで定義されたデータ型が上書きされることはありません。XMLスキーマがないXMLデータにアクセスする場合は、CAST演算子を使用して、管理ツールのビジネス・モデルとマッピング・レイヤーでデータ型の変換を実行してください。

ODBCを使用してXMLデータをインポートするには:

  1. ODBC経由でXMLデータ・ソースにアクセスするには、まず、XML ODBCドライバのライセンスを入手し、インストールする必要があります。

  2. アクセスするXMLデータ・ソースを指すODBC DSNを作成し、XML ODBCデータ・ソース・タイプを選択していることを確認します。

  3. 管理ツールで、「ファイル」を選択し、「メタデータのインポート」を選択します。

  4. ダイアログの指示に従って、ODBC DSNをリポジトリにインポートします。詳細は、「リレーショナル・データ・ソースからのメタデータのインポート」を参照してください。


    注意:

    XML ODBCの制限事項により、「メタデータ型の選択」画面で「シノニム」オプションを選択する必要があります。このオプションを選択しなかった場合、表はインポートされません。

XML ODBCデータ・ソースの例

例4-3に、Microsoft ADOの保存ファイル形式によるXML ODBCデータ・ソースの例を示します。データとスキーマの両方を同じドキュメントに含めることができます。

例4-3 XML ODBCの例

<xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882'
   xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882'
   xmlns:rs='urn:schemas-microsoft-com:rowset'
   xmlns:z='#RowsetSchema'>
<s:Schema id='RowsetSchema'>
   <s:ElementType name='row' content='eltOnly' rs:CommandTimeout='30' rs:updatable='true'>
      <s:AttributeType name='ShipperID' rs:number='1' rs:writeunknown='true' rs:basecatalog='Paint' rs:basetable='Shippers'
          rs:basecolumn='ShipperID'>
         <s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5' rs:fixedlength='true' rs:benull='false'/>
      </s:AttributeType>
      <s:AttributeType name='CompanyName' rs:number='2' rs:writeunknown='true' rs:basecatalog='Paint' rs:basetable='Shippers'
          rs:basecolumn='CompanyName'>
         <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='40' rs:benull='false'/>
      </s:AttributeType>
      <s:AttributeType name='Phone' rs:number='3' rs:nullable='true' rs:writeunknown='true' rs:basecatalog='Paint'
          rs:basetable='Shippers' rs:basecolumn='Phone'>
         <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='24' rs:fixedlength='true'/>
      </s:AttributeType>
      <s:extends type='rs:rowbase'/>
   </s:ElementType>
</s:Schema>
<rs:data>
   <z:row ShipperID='1' CompanyName='Speedy Express' Phone='(503) 555-9831          '/>
   <z:row ShipperID='2' CompanyName='United Package' Phone='(503) 555-3199          '/>
   <z:row ShipperID='3' CompanyName='Federal Shipping' Phone='(503) 555-9931          '/>
</rs:data>
</xml>

XMLドキュメントの例

次のXMLドキュメントでは、様々な状況の例を紹介し、Oracle BIサーバーのXMLアクセス方法でそれらの状況がどのように処理されるかを説明します。

  • XMLドキュメント83.xml8_sch.xml (例4-4および例4-5を参照)は、異なるスコープで同じ要素宣言を使用する方法を示しています。たとえば、<p3>を<p2>内および<p4>内で使用できます。

    前述の例の要素<p3>は2つの異なるスコープに出現するため、インポート・プロセスで2回目にこの要素が出現したときに索引番号を追加することによって、各要素に異なる列名が付けられます。この場合、2回目に出現した要素はp3_1となります。さらに他のコンテキストで<p3>が出現する場合は、p3_2、p3_3となります。

  • XMLドキュメント83.xml84.xml (例4-4および例4-6を参照)は、複数のXMLファイルで同じスキーマ(8_sch.xml)を共有できることを示しています。

  • Internet Explorerバージョン5以降では、XMLアイランドと呼ばれる埋込みXMLフラグメントを含むHTMLドキュメントがサポートされます。XMLドキュメントisland2.htm (例4-7を参照)は、複数のXMLデータ・アイランドおよび複数の表を1つのドキュメントから生成できる単純な状況を示しています。XMLアイランドのインスタンスごとに表が1つずつ生成されます。表を区別するために、ドキュメント名に適切な索引が追加されます。island2.htmの場合、island2_0およびisland2_1という2つのXML表が生成されます。

例4-4 83.xml

===83.xml===
<?xml version="1.0"?>
<test xmlns="x-schema:8_sch.xml">|
<row>
<p1>0</p1>
<p2 width="5" height="2">
   <p3>hi</p3>
   <p4>
      <p3>hi</p3>
      <p6>xx0</p6>
      <p7>yy0</p7>
   </p4>
   <p5>zz0</p5>
</p2>
</row>

<row>
<p1>1</p1>
<p2 width="6" height="3">
   <p3>how are you</p3>
   <p4>
      <p3>hi</p3>
      <p6>xx1</p6>
      <p7>yy1</p7>
   </p4>
   <p5>zz1</p5>
</p2>
</row>
</test>

例4-5 8_sch.xml

===8_sch.xml===
<Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">
         <AttributeType name="height" dt:type="int" />
   <ElementType name="test" content="eltOnly" order="many">
      <AttributeType name="height" dt:type="int" />
      <element type="row"/>
   </ElementType>
   <ElementType name="row" content="eltOnly" order="many">
         <element type="p1"/>
      <element type="p2"/>
   </ElementType>
   <ElementType name="p2" content="eltOnly" order="many">
         <AttributeType name="width" dt:type="int" />
      <AttributeType name="height" dt:type="int" />
         <attribute type="width" />
      <attribute type="height" />
      <element type="p3"/>
      <element type="p4"/>
      <element type="p5"/>
   </ElementType>
   <ElementType name="p4" content="eltOnly" order="many">
      <element type="p3"/>
      <element type="p6"/>
      <element type="p7"/>
   </ElementType>
   <ElementType name="test0" content="eltOnly" order="many">
      <element type="row"/>
   </ElementType>
      <ElementType name="p1" content="textOnly" dt:type="string"/>
      <ElementType name="p3" content="textOnly" dt:type="string"/>
      <ElementType name="p5" content="textOnly" dt:type="string"/>
      <ElementType name="p6" content="textOnly" dt:type="string"/>
      <ElementType name="p7" content="textOnly" dt:type="string"/>
</Schema>

例4-6 84.xml

===84.xml===
<?xml version="1.0"?>
<test0 xmlns="x-schema:8_sch.xml">
<row>
<p1>0</p1>
<p2 width="5" height="2">
   <p3>hi</p3>
   <p4>
      <p3>hi</p3>
      <p6>xx0</p6>
      <p7>yy0</p7>
   </p4>
   <p5>zz0</p5>
</p2>
</row>

<row>
<p1>1</p1>
<p2 width="6" height="3">
   <p3>how are you</p3>
   <p4>
      <p3>hi</p3>
      <p6>xx1</p6>
      <p7>yy1</p7>
   </p4>
   <p5>zz1</p5>
</p2>
</row>
</test0>

例4-7 Island2.htm

===island2.htm===
<HTML>
   <HEAD>
<TITLE>HTML Document with Data Island</TITLE>
</HEAD>
   <BODY>
<p>This is an example of an XML data island in I.E. 5</p>
   <XML ID="12345">
   test>
      <row>
         <field1>00</field1>
         <field2>01</field2>
   </row>
      <row>
         <field1>10</field1>
         <field2>11</field2>
   </row>
      <row>
         <field1>20</field1>
         <field2>21</field2>
      </row>
   </test>
</XML>
<p>End of first example.</p>
<XML ID="12346">
   <test>
      <row>
         <field11>00</field11>
         <field12>01</field12>
      </row>
      <row>
         <field11>10</field11>
         <field12>11</field12>
      </row>
      <row>
         <field11>20</field11>
         <field12>21</field12>
      </row>
   </test>
</XML>
<p>End of second example.</p>
</BODY>
</HTML>

Oracle Business Intelligenceでのスタンバイ・データベースの使用

スタンバイ・データベースは主に、高可用性およびフェイルオーバー機能でプライマリ・データベースのバックアップとして使用されます。スタンバイ・データベース構成では、プライマリ・データベースからセカンダリ・データベースへの定期的にスケジュールされたレプリケーションが実行されます。このレプリケーションの待ち時間は、セカンダリ・データベースからの読取り中にプライマリ・データベースに書込むことによって同期やデータの整合性の問題が発生しないように短くする必要があります。

スタンバイ・データベースは基本的に読取り専用データベースであるため、ビジネス・インテリジェンスの問合せサーバーとして使用することで、プライマリ・データベースのワークロードを解放し、問合せのパフォーマンスを向上させることができます。

次の項では、Oracle Business Intelligenceでスタンバイ・データベースを使用する方法について説明します。

Oracle Business Intelligenceでのスタンバイ・データベースの使用について

スタンバイ・データベース構成には2つのデータベースがあります。すべての書込み操作を処理し、データ整合性のための真実のソースとなるプライマリ・データベースと、読取り専用ソースとして公開されるセカンダリ・データベースです。Oracle Business Intelligenceでスタンバイ・データベース構成を使用すると、すべての書込み操作がプライマリ・データベースにオフロードされ、読取り操作がスタンバイ・データベースに送信されます。

プライマリ・ソースにルーティングする必要がある書込み操作には、次のようなものがあります。

  • Oracle BIスケジューラのジョブおよびインスタンス・データ

  • パフォーマンスを向上させるための一時表

  • 集計の継続性のためのライトバック・スクリプト

  • 使用状況トラッキング・データ(使用状況トラッキングが有効になっている場合)

  • イベント・ポーリング表のデータ(イベント・ポーリング表を使用する場合)

次に、スタンバイ・データベースを使用するようにOracle BIサーバーを構成する方法の概要を示します。

  1. スタンバイ・データベース構成のデータベース・オブジェクトを1つ作成します。一時表の作成は無効にしてください。

  2. データベース・オブジェクトの接続プールを2つ構成します。

    • スタンバイ・データベースを指す読取り専用の接続プール

    • 書込み操作に使用するプライマリ・データベースを指す接続プール

  3. データベースへの書込みを行う接続スクリプトを更新して、プライマリ・データベースの接続プールを明示的に指定します。

  4. 使用状況トラッキングが有効になっている場合、プライマリ接続を使用するように使用状況のトラッキングの構成を更新します。

  5. イベント・ポーリング表を使用する場合、プライマリ接続を使用するようにイベント・ポーリング・データベースの構成を更新します。

  6. Oracle BIスケジューラがスタンバイ・ソースを使用するように構成されていないことを確認します。

スタンバイ・データベース構成には2つの異なる物理データ・ソースがありますが、物理レイヤーに作成するデータベース・オブジェクトは1つだけです。図4-4に、物理レイヤーにおけるスタンバイ・データベース構成のデータベース・オブジェクトと接続プールを示します。

図4-4 物理レイヤーのスタンバイ・データベース構成

図4-4の説明が続きます
「図4-4 物理レイヤーのスタンバイ・データベース構成」の説明

スタンバイ・データベース構成のデータベース・オブジェクトの作成

スタンバイ・データベース構成のデータベース・オブジェクトをリポジトリに作成するには、管理ツールを使用します。データベース・オブジェクトを作成する際には、Oracle BIサーバーがスタンバイ・データベースに一時表を作成しないように、永続接続プールが割り当てられていないことを確認してください。

スタンバイ・データベース構成のデータベース・オブジェクトを作成するには:

  1. 管理ツールで、物理レイヤーを右クリックし、「新規データベース」を選択します。

  2. データベースの名前を入力し、「データベース」リストでデータベースのタイプを選択します。

  3. 永続化された接続プール」が「未割当て」であることを確認します。

図4-5に、スタンバイ・データベース構成の「データベース」ダイアログを示します。

図4-5 スタンバイ・データベース構成の「データベース」ダイアログ

図4-5の説明が続きます
「図4-5 スタンバイ・データベース構成の「データベース」ダイアログ」の説明

スタンバイ・データベース構成の接続プールの作成

スタンバイ・データベース構成のデータベース・オブジェクトをリポジトリに作成したら、管理ツールを使用して、2つの接続プールを作成します。スタンバイ・データベースを指す接続プールと、プライマリ・データベースを指す接続プールです。

ほとんどの接続にスタンバイ接続プールが使用されるため、必ず、スタンバイ接続プールが最初に表示されるようにしてください。


注意:

接続プールは、最大接続数に達するまで、表示されている順に使用されます。スタンバイ・データベースのチューニングに合せて最大接続数を設定してください。

最大接続数の設定の詳細は、「接続プールの作成または変更」を参照してください。


スタンバイ・データベース構成のスタンバイ接続プールを作成するには:

  1. 管理ツールの物理レイヤーで、スタンバイ・データベース構成のデータベース・オブジェクトを右クリックし、「新規オブジェクト」を選択し、「接続プール」を選択します。

  2. 接続プールの名前を入力し、呼出しインタフェースがスタンバイ・データベース・タイプに適していることを確認します。

  3. スタンバイ・データベースのデータ・ソース名を入力します。

  4. スタンバイ・データベースのユーザー名とパスワードを入力します。

  5. OK」をクリックします。

図4-6に、スタンバイ接続プールの「接続プール」ダイアログを示します。

図4-6 スタンバイ接続プールの「接続プール」ダイアログ

図4-6の説明が続きます
「図4-6 スタンバイ接続プールの「接続プール」ダイアログ」の説明

スタンバイ・データベース構成のプライマリ接続プールを作成するには:

  1. 管理ツールの物理レイヤーで、スタンバイ・データベース構成のデータベース・オブジェクトを右クリックし、「新規オブジェクト」を選択し、「接続プール」を選択します。

  2. 接続プールの名前を入力し、呼出しインタフェースがプライマリ・データベース・タイプに適していることを確認します。

  3. プライマリ・データベースのデータ・ソース名を入力します。

  4. プライマリ・データベースのユーザー名とパスワードを入力します。

  5. OK」をクリックします。

図4-7に、プライマリ接続プールの「接続プール」ダイアログを示します。

図4-7 プライマリ接続プールの「接続プール」ダイアログ

図4-7の説明が続きます
「図4-7 プライマリ接続プールの「接続プール」ダイアログ」の説明

スタンバイ・データベース構成でのライトバック・スクリプトの更新

集計の永続性のためのスクリプトなど、データベースへの書込みを行うスクリプトを使用する場合は、プライマリ接続プールを明示的に参照するようにスクリプトを更新する必要があります。プライマリ接続を介して書き込まれた情報は、(プライマリ・データベースとセカンダリ・データベース間の定期的にスケジュールされたレプリケーションによって)自動的にスタンバイ・データベースに転送され、スタンバイ接続プールを介して使用できるようになります。

次の例は、プライマリ接続プールを明示的に指定する、集計の永続性のためのライトバック・スクリプトを示しています。

create aggregates sc_rev_qty_yr_cat for "DimSnowflakeSales"."SalesFacts" ("Revenue", "QtySold") at levels ("DimSnowflakeSales"."Time"."Year", "DimSnowflakeSales"."Product"."Category") using connection pool "StandbyDemo"."Primary Connection" in "StandbyDemo"."My_Schema"

スタンバイ・データベース構成での使用状況トラッキングの設定

Oracle BIサーバーでは、使用状況トラッキング・データの収集がサポートされます。使用状況トラッキングが有効な場合、問合せごとに使用状況トラッキング・データが収集され、統計が使用状況トラッキングのログ・ファイルに書き込まれるか、データベース表に直接挿入されます。

直接挿入を使用して、スタンバイ・データベース構成で使用状況トラッキングを有効にするには、使用状況トラッキング・データの保存に使用する表(通常はS_NQ_ACCT)をプライマリ・データベースに作成する必要があります。その後、管理ツールを使用してリポジトリの物理レイヤーにその表をインポートします。

スタンバイ接続プールとプライマリ接続プールの両方で使用状況トラッキング表のデータベース・オブジェクトが構成されていることを確認する必要があります。その後、使用状況トラッキングのCONNECTION_POOLパラメータがプライマリ・データベースを指していることを確認してください。たとえば、NQSConfig.iniで次のように構成されている必要があります。

CONNECTION_POOL = "StandbyDatabaseConfiguration"."Primary Connection";

使用状況トラッキング・データの表を作成する方法や使用状況トラッキングのパラメータを設定する方法など、使用状況トラッキングの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』の使用状況トラッキングの管理に関する項を参照してください。

スタンバイ・データベース構成でのイベント・ポーリングの設定

1つ以上の物理表が更新されたことをOracle BIサーバーに通知する方法として、Oracle BIサーバーのイベント・ポーリング表(イベント表)を使用できます。イベント表は、Oracle BIサーバーがアクセス可能なデータベース上の物理表です。通常は管理ツールの物理レイヤーのみに公開され、「物理表」ダイアログでOracle BIサーバーのイベント表として指定されます。

Oracle BIサーバーには、イベント・ポーリング表への書込み権限が必要です。そのため、スタンバイ・データベース構成でイベント・ポーリングを使用する場合は、イベント表のデータベース・オブジェクトがプライマリ接続プールのみを参照するようにする必要があります。

イベント表を設定、アクティブ化および移入する方法など、イベント・ポーリングの詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド』のイベント・ポーリング表によるキャッシュ・イベント処理に関する項を参照してください。

スタンバイ・データベース構成でのOracle BIスケジューラの設定

Oracle BIスケジューラは、ジョブ(スクリプト化されたジョブとスクリプト化されていないジョブの両方)の管理とスケジュールを行う拡張可能なアプリケーションおよびサーバーです。スタンバイ・データベース構成でOracle BIスケジューラを使用するには、Oracle BIスケジューラのデータベース・オブジェクトがプライマリ接続プールのみを参照するようにする必要があります。

Oracle BIスケジューラの設定と使用の詳細は、Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionジョブ・スケジューリング・ガイドのOracle BIスケジューラの構成作業に関する項を参照してください。