プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド
12c (12.2.1.4.0)
E96106-04
目次へ移動
目次

前
次

7 データベース・オブジェクトおよび接続プールの設定

この章では、物理レイヤーのデータベースおよび接続プール・オブジェクトのプロパティについて説明します。

データベース・オブジェクトおよび接続プールのプロパティは、データ・ソースからメタデータをインポートしたときに自動的に設定されます。データベースや接続プールの設定は調整が必要になることがあります。また、データベース・オブジェクトや接続プールの手動作成が必要になることもあります。

この章の構成は、次のとおりです。

データベース・オブジェクトの設定

データ・ソースからメタデータをインポートすると、スキーマのデータベース・オブジェクトが自動的に作成されますが、データベース・プロパティの調整または表示が必要になる場合があります。

使用状況トラッキングの構成、Oracle Scorecardと戦略管理の設定、集計の永続性ターゲットの構成などの特定の状況では、手動によるデータベース・オブジェクトと接続プールの作成が必要になる場合もあります。

「システム要件と動作保証」を参照してください。

次の項では、物理レイヤーのデータベース・オブジェクトのプロパティを作成、編集または表示する方法を説明します。

物理レイヤーのデータベース・タイプについて

物理スキーマを物理レイヤーにインポートすると、管理ツールによって通常はデータベース・タイプが自動的に割り当てられます。

データベース・タイプの自動割当ての補足情報は次のとおりです。

  • リレーショナル・データ・ソース

    インポート・プロセス時に、ODBCドライバはOracle BIサーバーにデータベース・タイプを割り当てます。サーバーでこのデータベース・タイプを判別できない場合は、類似のODBCタイプがデータベース・オブジェクトに割り当てられます。このODBCタイプをデータベース・リストの最も近似するエントリに置き換えます。

  • マルチディメンション・データ・ソース

    現在使用可能で、サポートされるXMLA準拠データ・ソースは、Microsoft Analysis ServicesおよびSAP/BWのみです。マルチディメンション・データ・ソースからメタデータをインポートした後は、データベース・オブジェクトを確認して、必要に応じて適切なデータベース・タイプおよびバージョンに更新します。

物理レイヤーにおけるデータベース・オブジェクトの手動作成

データベース・オブジェクトを手動で作成する場合、関連付けられている接続プールを手動で設定する必要もあります。

マルチディメンション・データ・ソースで、リポジトリの物理レイヤーに物理スキーマを作成する場合は、物理レイヤーでデータ・ソース内の同一カタログ(データベース)にある各キューブ(またはキューブのセット)に対して1つずつデータベースを作成する必要があります。1つの物理データベースで複数のキューブを保持できます。キューブは、データ・ソース内の同一カタログに属している必要があります。データベースを作成するときに指定するプロパティとその値を把握するには、「データベースの一般プロパティ・リファレンス」を参照してください。

重要:

物理スキーマのインポートをお薦めします。

  1. 管理ツールで、「物理」レイヤーでオブジェクトを選択せずに、右クリックして新規データベースを選択します。
  2. 「データベース」ダイアログの「一般」タブで、データベースの「名前」を入力します。
  3. 「データ・ソース定義」で、「データベース・タイプ」リストから、「データベース」を値として選択します。
  4. (オプション)リレーショナル・データ・ソースおよび旧Siebel Systemsソースでのみ、「CRMメタデータ表」を選択します。
  5. (オプション)「仮想プライベート・データベース」を選択して、物理データベース・ソースを仮想プライベート・データベース(VPD)として識別します。
    対応する接続プールでSSOに構成されているEssbase、Hyperion Financial ManagementまたはHyperion Planningデータ・ソースについては、必ず「仮想プライベート・データベース」を選択します。
  6. (オプション)「デフォルトで問合せの移入を許可」を選択して、ユーザーがデータベースに移入できるようにします。
  7. (オプション)「デフォルトで直接データベース・リクエストを許可」を選択して、ユーザーが問合せを実行できるようにします。

データベースの一般プロパティ・リファレンス

構成するプロパティや、値を指定するのがいつ可能または必要かを把握するには、表のデータベース・プロパティを確認してください。

オプション 説明

データ・ソース定義: データベース

使用データベースのデータベース・タイプ。

CRMメタデータ表

選択されている場合、Siebel CRM表の物理表と列の定義がSiebelメタデータ・ディクショナリから派生したものであることを示します。

データ・ソース定義: 仮想プライベート・データベース

物理データベース・ソースを仮想プライベート・データベース(VPD)と見なします。VPDを使用すると、ユーザーの権限資格証明によって返されるデータ結果が決まります。このため、これらのソースの特定が重要になります。これらのデータ結果は、キャッシュで使用される問合せの結果セットの有効性に影響します。

対応する接続プールで SSOに対して構成されたEssbase、Hyperion Financial ManagementまたはHyperion Planningデータ・ソースについては、常にこのオプションを選択します。

ノート:

このオプションを選択する場合は、「セッション変数」ダイアログの「セキュリティ・センシティブ」オプションも選択する必要があります。

永続化された接続プール

永続接続プールを使用するには、事前に一時表を設定しておく必要があります。

デフォルトで問合せの移入を許可

選択すると、すべてのユーザーがPOPULATE SQLを実行できます。すべてではないが、大半のユーザーがPOPULATE SQLを実行できるようにするには、このオプションを選択してから、特定のユーザーやグループに対して問合せを制限します。

デフォルトで直接データベース・リクエストを許可

選択すると、すべてのユーザーが物理問合せを実行できます。Oracle BIサーバーによって、基礎を構成するデータベースに未処理のユーザー入力による物理SQLが直接送信されます。返される結果セットは、Oracle BIサーバーでのレンダリング、さらにチャート化、ダッシュボードでのレンダリングおよびOracle Business Intelligenceリクエストとしての処理が可能です。

全員ではなく大半のユーザーに物理問合せの実行を許可するには、このオプションを選択してから特定のユーザーおよびグループの問合せを制限します。

デフォルトで直接データベース・リクエストを許可する状況

プロパティ「デフォルトで直接データベース・リクエストを許可」を設定すると、ユーザーが物理問合せを実行できます。

構成が不適切であると、機密性の高いデータが予定外のユーザーに公開される場合があります。

このデータベース・プロパティを設定する際は、次のガイドラインを使用します。

  • Oracle BIサーバーは、Oracle BIサーバーOracle BIプレゼンテーション・サービスまたはOracle BIスケジューラが実行されているコンピュータからの接続リクエストのみを受け入れるように構成する必要があります。この制限事項は、Oracle BIサーバーのIPアドレスを使用してTCP/IPレベルで設定する必要があります。これにより、Oracle BIサーバーのIPアドレスからのTCP/IP接続のみが許可されます。

  • このコンピュータにリモート・ログインすることにより、ユーザーがnqcmd (SQLスクリプトを実行するユーティリティ)を実行できないようにするには、Oracle BIプレゼンテーション・サービスがインストールされているコンピュータに次の手段でアクセスを拒否する必要があります。

    • TELNET

    • リモート・シェル

    • リモート・デスクトップ

    • 遠隔会議ソフトウェア(Windows NetMeetingなど)

    必要に応じて、管理者権限の例外を作成する必要があります。

  • 次のタスクの実行は、管理者権限が付与されたユーザーにのみ実行を許可する必要があります。

    • TELNET経由による、Oracle BIサーバーおよびOracle BIプレゼンテーション・サービスのコンピュータにおけるキャッシュ・シードのためのnqcmdの実行などのタスクの実行。

    • 「アンサー」の高度なSQLページへのアクセスによるリクエストの作成。

  • Oracle BIプレゼンテーション・サービス上でグループ/ユーザーベースの権限を設定して、直接データベース・リクエストの編集(事前構成でOracle BIプレゼンテーション・サービス管理者によるアクセスを許可)および実行(事前構成ですべてのユーザーによるアクセスを許可しない)のアクセスを制御します。

データ・ソースでサポートされるSQL機能

「データベース」ダイアログの「一般」タブでメタデータのインポートまたはデータベース・タイプの指定を行うと、データベース・タイプに応じて適切なデフォルト値がデータベース・オブジェクトのSQL機能セットに自動的に移入されます。

Oracle BIサーバーは、特定のデータソースでサポートされているSQL機能を使用します。

機能がサポートされているというマークが付いていると(「データベース」ダイアログの「機能」タブにある「デフォルト」列にチェックマークがあると)、Oracle BIサーバーは、パフォーマンスの向上のために関数や計算をデータ・ソースにプッシュ・ダウンします。関数または機能がデータ・ソースでサポートされていない場合はOracle BIサーバーで計算または処理が実行されます。

サポートされる機能のリストは、ORACLE_HOME/bi/bifoundation/server/binにあるDBFeatures.defaultsファイルで定義されたデフォルトを使用しています。このファイルは変更しないでください。DBFeatures.defaultsファイルを確認して、様々なデータ・ソース・タイプでサポートされる機能を比較できます。

ノート:

12cDBFeatures.defaultsにある内容は、以前は11gのディレクトリORACLE_INSTANCE/.../configにあるファイルDBFeatures.INIにありました。

データソースに対する問合せ機能は、新しいデータソースのバージョンにアップグレードして、アップグレードした機能がOracle BIサーバーのデフォルトで反映されているかどうかを確かめるときになどに調整してください。サポートされている機能が「機能」タブに示されていない場合は、新バージョンのデータ・ソースで実際にサポートされている機能が反映されるように、「機能」タブで設定を更新できます。データ・ソースで特定の機能(左外部結合の問合せなど)がサポートされ、その問合せがOracle BIサーバーから特定のデータ・ソースに送信されることを禁止する必要がある場合は、「機能」タブでそのデフォルト設定を変更できます。関数を個別に実行するフェデレーテッド・データ・ソースがある場合は、問合せ結果の整合性を維持するために、「機能」タブで関数を適宜無効化して、Oracle BIサーバーで計算が一貫した方法で実行されるようにします。

重要:

データ・ソースがサポートしていないSQL機能を有効にすると、問合せでエラーや予期せぬ結果が返される場合があります。サポートされるSQL機能を無効にすると、サーバーからデータ・ソースに発行されるSQLの効率が下がります。

ほとんどの場合は、デフォルト値を保持することをお薦めします。「機能」タブで、特定の機能のデフォルト値を変更して、その機能をサポート対象であると指定する場合は、その機能が実際にデータ・ソースでサポートされていることを確認する必要があります。

ノート:

OPTIMIZE_MDX_FILTER_QUALIFICATION値は変更しないでください。

「サポートされるデータベース機能の確認」を参照してください。

次の表は、「データベース」ダイアログの「機能」タブで使用可能なオプションのリストです。

オプション 説明

機能

COUNT_DISTINCT_SUPPORTEDのような、データベース機能の名前。

特定の機能の現在値を表示します。選択されている場合はその機能がデータ・ソースでサポートされていること、およびその関数または機能がOracle BIサーバーではなくデータ・ソースで実行されることを示します。

一部の機能では、選択されているかどうかではなく、「」列にデフォルト値が表示されます。たとえば、MAX_ENTRIES_PER_IN_LISTの場合はこの列に10が表示されます。

デフォルトの選択とデフォルト値を保持することを強くお薦めします。

デフォルト

特定の機能のデフォルト値を表示します。この列に表示されるデフォルトは、ファイルDBFeatures.defaultsで指定されます。

検索

リスト内の機能を検索します。

再検索

このオプションは、「検索」をクリックした後に使用可能になります。同じ文字列で複数回の検索の実行を可能にします。

DBMSの問合せ

「DBMSの問合せ」は、Oracle BIサーバーに機能デフォルト・セットがないデータ・ソースのインストール時および問合せ時にのみ使用します。「DBMSの問合せ」により、このタイプのデータ・ソースの機能表エントリに対する問合せが可能になり、サポートされるSQL機能を検索できるようになります。この問合せ結果に基づいて、「機能」タブに表示されるエントリの変更が可能になります。「DBMSの問合せ」は、XMLまたはマルチディメンション・データ・ソースを使用しているときには選択できません。

ノート:

「DBMSの問合せ」機能の結果がデータ・ソースで実際にサポートされるSQL機能を正確に反映しているとはかぎりません。この機能を使用する際は、「機能」タブに表示されるサポートされる機能のリストがデータ・ソースで実際にサポートされる機能と一致していることを検証する必要があります。詳細は、使用するデータ・ソースのドキュメントを参照してください。

デフォルトにリセット

このボタンは、このデータ・ソース・タイプのデフォルト値をDBFeatures.defaultsファイルからリストアします。

データベース・プロパティの表示

一部のデータ・ソースについては、物理レイヤーのメタデータを拡張できます。

たとえば、Oracle ADFデータ・ソースについては、Oracle ADF BIのビュー・オブジェクトから管理ツールに渡されるカスタム・データベース・プロパティを表示できます。これらのプロパティは通常は編集されません。

この表は、カスタム・プロパティの例を示しています。

カテゴリ キー名 説明

FscmTopModelAM.AccountBIAM

BIObject_FLEX_TREE_VS_COST_CENTER_LABEL_VI

Dim - Cost Center

FLEX_TREE_VS_COST_CENTER_LABEL_VIビュー・オブジェクトは、Dim - Cost Center論理ディメンションにマップする必要があります。

FscmTopModelAM.AccountBIAM

BIFlexfieldViewUsage

FLEX_BI_AcctKff_VI

FLEX_BI_AcctKff_VIは、FscmTopModelAM.AccountBIAMに対するCCIDビュー・オブジェクトです。

FscmTopModelAM.AccountBIAM

EnforceCustomDataType_FscmTopModelAM.AccountBIAM

"Segment 1":"VARCHAR"; "Segment ID":"DOUBLE"

FscmTopModelAM.AccountBIAMビュー・オブジェクトについては、いくつかの物理列のデータ型をプロパティで渡される値でオーバーライドします。

サポートされるデータベース機能の確認

Oracle BI管理ツールでは、データベースおよびデータソースでサポートされる機能を確認できます。期待どおりに動作しない問合せなどの操作をトラブルシューティングするときには、「データベース・オプション」を使用できます。

機能とは、ISDESCENDANT文を使用するクエリや、ADDまたはSQRT (平方根)操作がサポートされている操作など、データベースに対して実行できるSQL式、文、関数、操作などのOracle BI EE機能のことです。「値」列または「デフォルト」列にチェック・マークが表示されている場合、その機能がサポートされています。「値」列または「デフォルト」列の詳細は、「データ・ソースでサポートされるSQL機能」を参照してください。

  1. Oracle BI管理ツールを開きます。
  2. 「ファイル」メニューから、オンライン・モードまたはオフライン・モードを選択します。
  3. 「リポジトリを開く」ダイアログで、リポジトリを選択して「開く」をクリックします。
  4. 「物理」列で、データベースまたはデータ・ソースをクリックして、「プロパティ」を選択します。
  5. 「データベース・プロパティ」で、「機能」タブをクリックして、特定のデータベースまたはデータ・ソースでサポートされている機能を確認します。

接続プールについて

接続プールは物理レイヤーのオブジェクトで、データ・ソースへのアクセスを記述します。

接続プールには、Oracle BIサーバーとそのデータ・ソース間の接続の詳細が含まれます。

BIサーバーの物理レイヤーには、データベースごとに1つ以上の接続プールが格納されています。接続プールは、データ・ソースのスキーマをインポートして物理レイヤーを作成するときに自動的に作成されます。1つのデータベースに対して複数の接続プールを構成できます。接続プールを使用すると、複数の同時データ・ソース・リクエスト(問合せ)で単一のデータベース接続の共有が可能になり、データベースへの接続のオーバーヘッドを軽減できます。

ノート:

初期化ブロックには専用接続プールを作成することをお薦めします。「初期化ブロックの接続プールについて」を参照してください。

接続プールのそれぞれに、許容される最大同時接続数を指定する必要があります。この制限値に達すると、接続リクエストは、接続に空きができるまで待機します。

許容される同時接続数が増えると、接続プールからのアクセス先になる基礎データベースの負荷が増加する可能性があります。テストを実行しDBAと協議して、接続プールで指定した接続数をデータ・ソースで処理できることを確認してください。また、データ・ソースに接続数に基づくチャージバック・システムがある場合、同時接続数を制限してチャージバック・コストを低く保持することが必要な場合もあります。

データベース・リソースに関連して見込まれる負荷およびコストに加えて、Oracle BIサーバーではサーバーの起動時に接続のそれぞれに共有メモリーが割り当てられます。これによって接続数が上昇し、Oracle BIサーバーのメモリー使用量が増加します。

初期化ブロックの接続プールについて

初期化ブロックに専用の接続プールを作成する必要があります。

この接続プールは問合せに使用しないでください。

初期化ブロックのタイプごとに接続プールを分離することをお薦めします。接続プールを分離することで、認証およびログイン固有の初期化ブロックでログイン・プロセスの速度が低下しないことが保証されます。次のタイプの初期化ブロックには、独立した接続プールを設定する必要があります。

  • 言語、外部化文字列、グループ割当てなどの認証およびログイン固有の初期化ブロック。

  • セッション変数を設定するすべての初期化ブロック。

  • リポジトリ変数を設定するすべての初期化ブロック。リポジトリ変数を設定する初期化ブロックは、管理者権限を持つ資格証明を使用して実行します。

    これらの初期化ブロックの数、スケジュールされたリフレッシュ率、およびその実行のスケジュール時点は把握しておく必要があります。このシナリオでリソースに対する影響の極端な状況を考えてみましょう。たとえば、リフレッシュ率を分単位で設定し、同時にリフレッシュされる初期化ブロックが15を超えており、これらのシナリオのいずれかが最もユーザー・アクセスが多い時間フレームに発生するとします。

初期化ブロックは、ブロック別にOracle BIサーバーの変数の最大数を設定するように設計する必要があります。たとえば、5つの変数がある場合、効率的でリソース集中度を低くするには、5つの変数のすべてが格納される単一の初期化ブロックを構成します。初期化ブロック1つを使用した場合、初期化文字列を使用し、バック・エンド表に対するコール1回だけで値が解決されます。変数ごとに1つずつ、合計5つの初期化ブロックを構成した場合は、バック・エンド表に対するコールが5回発生して割当てが実行されることになります。

Oracle BIサーバーの起動中に、初期化ブロックが特定の接続プールに対して失敗した場合、その接続プールを使用する初期化ブロックはそれ以上処理されません。そのかわり、接続プールはブラックリストに記載され、その接続プールの後続の初期化ブロックはスキップされます。この動作により、共有プールに多くの関連する初期化ブロックまたは変数がある場合でもOracle BIサーバーが適切なタイミングで開始します。

この場合、サーバー・ログに次のようなメッセージが表示されます。

[OracleBIServerComponent] [ERROR:1] [43143] Blacklisted connection pool 
name_of_connection_pool

このエラーが表示された場合は、特定の接続プールの初期化ブロックを確認し、それらのブロックが正しいことを確認します。

接続プールの作成または変更

物理スキーマをインポートしなかった場合は、接続プールの作成前にデータベース・オブジェクトを作成する必要があります。

データベース・オブジェクトと接続プールは、リレーショナルとマルチディメンションのいずれのデータ・ソースの場合も物理スキーマのインポート時に自動的に作成されます。

接続プールは、管理ツールの物理レイヤーで作成および変更します。

複数の接続プールを変更するには、接続プールのリスト・コマンドおよび接続プールの更新コマンドを使用します

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

本番移行などのプロセスにおける接続プールの変更を自動化するには、XML APIの使用を検討してください。『Oracle Business Intelligence Enterprise Editionセキュリティ・ガイド』のOracle BIサーバーXML APIに関する項を参照してください。

  1. 管理ツールの「物理」レイヤーで、データベースを右クリックし、「新規オブジェクト」「接続プール」を選択します。
  2. 必要に応じてプロパティを指定または調整して「OK」をクリックします。

「一般」タブの接続プール・プロパティの設定

「接続プール」ダイアログの「一般」タブのプロパティについて学習します。

「一般」タブにリストされるプロパティは、データ・ソース・タイプによって異なります。たとえば、XMLAデータ・ソースには「URL」の接続プロパティがありますが、リレーショナルおよびXMLのデータ・ソースにはオプション「完全修飾表名が必要」があります。

  • 「接続プール」ダイアログで、「一般」タブをクリックし、各フィールドに入力します。

「一般」タブの共通的な接続プール・プロパティ

このトピックでは、「一般」タブに表示される接続プール・プロパティのうち、ほとんどのデータ・ソース・タイプで共通するプロパティについて説明します。

この表は、「接続プール」ダイアログの「一般」タブの、各種のデータ・ソース・タイプで共通的なプロパティを説明しています。

プロパティ 説明

名前

接続プールの名前。インポート時に作成された接続プールには名前が自動的に割り当てられます。

権限

このオプションを使用して、接続プールにアクセスする権限を個別のユーザーまたはアプリケーション・ロールに割り当てます。たとえば、特権ユーザー・グループに独自の接続プールを設定することなどができます。

この権限は、データ・アクセスのセキュリティを目的としていません。たとえば、接続プール権限では、キャッシュ・エントリの保護は行われません。

「リポジトリ・オブジェクトへのデータ・アクセス・セキュリティの適用」を参照してください。

コール・インタフェース

データ・ソースにアクセスに使用されるApplication Programming Interface (API)を特定します。ネイティブAPIを使用してアクセスできるデータベースもあれば、ODBCを使用するデータベースもあります。また、いずれの方法も使用できるデータベースもあります。JDBC/JNDIを使用してJavaデータ・ソースにアクセスします。

コール・インタフェースがXMLの場合、適用可能なプロパティを更新するための「XML」タブが表示されます。

最大接続数

接続プールで許容される接続の最大数。デフォルトは10です。この値は、データベースの種類およびモデル、データベースを実行するコンピュータのハードウェア構成、およびアクセスを要求する同時使用ユーザー数から決定できます。

Microsoft Analysis Servicesデータ・ソースの場合、接続プールの「最大接続数」の設定(デフォルトは10)がAnalysis Servicesで構成されたXMLA MaxThreadsPerClientの設定(デフォルトは4)より大きい場合に503 Service Not Availableエラーが発生することがあります。このエラーを回避するには、msmdpump.iniファイルのMaxThreadsPerClientの設定を大きくするか、リポジトリ接続プールの「最大接続数」を小さくします。

「TimesTenデータ・ソースでのシステム・メモリー・リソースの使用の向上」を参照してください。

「Oracle BIインタラクティブ・ダッシュボード」ページを使用するデプロイメントでは、この値を同時ユーザー数にダッシュボード上のリクエスト数を乗じた数の10-20%と見積もることを検討してください。この数値は、使用率に応じて調整できます。リポジトリ内の全接続の合計数は800未満に定義します。初期化ブロック専用の接続プールに必要な最大接続数を見積もるには、初期化ブロック実行時に同時ログオンするユーザー数を使用することをお薦めします。

完全修飾表名が必要

このオプションは、データベースまたはデータベース構成で完全修飾表名が要求される場合に選択します。一部のデータ・ソース・タイプではこのオプションを使用できません。

このオプションを選択すると、接続プールから送信されるすべてのリクエストで、基礎となるデータベースへの問合せに完全修飾名が使用されます。完全修飾名は、リポジトリ内の物理オブジェクト名に従います。物理メタデータのインポート元であった表自体に対する問合せを実行する場合は、このオプションを安全に選択できます。ある物理データベースから、データベース名とスキーマ名が異なる別の物理データベースにリポジトリを移行した場合は、移行後の新しいデータベースで完全修飾名が無効になります。このような状況では、このオプションの選択を解除しておくと、新しいデータベース・オブジェクトに対する問合せを正常に実行できます。

完全修飾名によって問合せが必要なデータベース内の必要な表にダイレクトされることが保証されるため、データ・ソースによっては完全修飾名の使用で安全度が向上する場合があります。たとえば、RDBMSでマスター・データベースの概念がサポートされる場合、Customerという名前の表に対する問合せは、まず、マスター・データベース内で、次に指定データベース内でその表を検索します。マスター・データベースにCustomerという名の表が存在する場合はその表で問合せが実行され、指定されたデータベースのCustomerという名の表では実行されません。

Oracle Databaseを使用し、表を格納するスキーマの所有者でないユーザーを使用してデータベースにアクセスしている場合は、このオプションを選択することが必要な場合もあります。問合せ内で表名が完全修飾されていないと、Oracle DatabaseがSQLで表名を解釈する際に問合せの実行者が所有者であると想定されます。これによって不適切な修飾名が発生する場合があります。

たとえば、ユーザーSAMPLEがCUSTOMERという名の表を作成した場合、完全修飾表名はSAMPLE.CUSTOMERになります。ユーザーSAMPLEが問合せで表CUSTOMERを参照すると、Oracle Databaseでは、完全修飾表名がSAMPLE.CUSTOMERであると見なされ、このアクセスは正常に実行されます。しかし、ユーザーJANEDOEが問合せで表CUSTOMERを参照した場合は、Oracle Databaseによって完全修飾表名がJANEDOE.CUSTOMERであると見なされ「表またはビューが見つかりません」というエラーが発生する可能性があります。JANEDOEからのアクセスを実行可能にするには、接続プールで「完全修飾表名が必要」を選択して、Oracle BIサーバーがすべての問合せでSAMPLE.CUSTOMERを指定できるようにする必要があります。

データ・ソース名

接続プールの接続先および物理問合せの送信先にするデータ・ソースの名前。このフィールドに入力する値は、選択した呼出しインタフェースによって決まります。

  • コール・インタフェースがOCIの場合は、Oracle Business Intelligence環境内で設定した、BI_DOMAIN/bidata/components/core/serviceinstances/ssi/oracledbにあるtnsnames.oraファイル内の接続文字列全体またはネット・サービス名を入力します。

  • データベースごとにネイティブ・インタフェースを使用している場合は、そのシステムのデータベース名を入力します。

  • 呼出しインタフェースがODBCの場合、ソース名フィールドにはローカル・コンピュータ上のODBCに定義されたすべてのユーザーとシステムDSNが記載されたリストが表示されます。接続先のデータ・ソースに適切なものを選択します。

Microsoft SQL Serverを使用している場合は、ODBCデータ・ソース名または完全な接続文字列を入力します。完全な接続文字列の構文は次のとおりです。

Driver={Driver Name};Address=Host Name;Database=Database Name

この場合、Driver NameはMicrosoft SQL ServerのODBCドライブ名です。このドライバ名はodbcinst.iniに存在している必要があり、環境変数ODBCINSTodbcinst.iniを指すように設定する必要があります。

共有ログオン

選択した場合は、基礎となるデータベースにアクセスするために問合せでその接続プールを使用するすべてのユーザーが、同じユーザー名とパスワードを使用します。

このオプションを選択すると、ユーザーがDSNまたはユーザー構成でデータベース・ユーザー名とパスワードを指定した場合でも、接続プールをデータベースへの接続に使用するすべての接続で、接続プールで指定されたユーザー名とパスワードが使用されます。

このオプションの選択を解除すると、接続プールを介する接続には、DSNまたはユーザー・プロファイルで指定されたデータベース・ユーザーIDとパスワードが使用されます。

Oracle Call Interface (OCI)を使用してデータベースに接続する場合は、Oracleデータベースに対して接続プールの共有ログオン・プロパティの選択を解除できます。OCIは、リポジトリ内のユーザーの資格証明を取得します。

「共有ログオン」オプションは、Essbase接続プールではデフォルトで有効になっています。Essbase接続プールの共有ログオンを無効にすることはできません。

接続プーリングの有効化

選択すると、指定した期間だけその後の問合せリクエストに備えて単一のデータベース接続を開いたままに保持できます。接続プールでは、問合せごとに新規の接続を開始/終了するオーバーヘッドを省くことができます。このオプションの選択を解除した場合は、データベースに送信される問合せごとに新たな接続が開始されます。

タイムアウト

リクエスト完了後にデータ・ソースへの接続が開いた状態で保持する時間の量および増分単位(分など)を指定します。この時間内は、最大接続数で指定した数を上限として、新たなリクエストで新たな接続が開かれるのではなく、この接続が使用されます。この時間は接続リクエストの完了ごとにリセットされます。

ADFデータ・ソースを使用し、コール・インタフェースがOracleADF_HTTP、問合せモードがSQLBypassである場合、「タイムアウト」は、接続が取り消されるまでの最大実行時間を指定します。

マルチスレッド接続の使用

このオプションを選択すると、Oracle BIサーバーはアイドル状態の物理問合せ(スレッド)を終了します。選択を解除すると、1つのスレッドが1つのデータベース接続に結合されます(スレッド数=最大接続数)。スレッドは、アイドルであってもメモリーを消費します。

NQSConfig.iniのServerセクションのパラメータDB_GATEWAY_THREAD_RANGEは、Oracle BIサーバーがアイドル・スレッドを終了する時点を設定します。範囲の下限の数値は、Oracle BIサーバー がアクションを実行することなく開いた状態で保持されるスレッド数です。開いたスレッドの数が範囲の下限を超えると、Oracle BIサーバーはアイドル・スレッドを終了します。たとえば、DB_GATEWAY_THREAD_RANGEが40-200に設定され、75スレッドが開かれている場合、Oracle BIサーバーはアイドル状態であるすべてのスレッドを終了します。

サポートされているパラメータ

このオプションの選択が解除され、データベース機能表でパラメータがサポートされていると、特殊なコードが実行され、Oracle BIサーバーではデータベースに対してパラメータを使用したフィルタ(または計算)のプッシュが可能になります。Oracle BIサーバーは、追加のSQLPrepareコールをデータベースに送信することによってゲートウェイ/アダプタ・レイヤー内のパラメータ・サポートをシミュレートして、これを実行します。

分離レベル

ODBCおよびDB2ゲートウェイ専用。この値によって、バックエンド・データベースに対する接続それぞれのトランザクション分離レベルが設定されます。分離レベルの設定によって接続から発行されるすべての文のデフォルトのトランザクション・ロック動作が制御されます。一度に1つのみ設定できます。その接続に対する設定は、明示的に変更されるまで存続します。

次のオプションを使用できます。

ダーティ読取り。内容を保証しない読取りを実装します(分離レベル0のロック)。これは、最も制限の少ない分離レベルです。このオプションを設定すると、未コミットのデータや内容を保証しないデータを読み取り、データの値を変更して、トランザクションの終了前にデータ・セットで行を表示したり非表示にしたりすることができます。

内容を保証しないデータとは、クリーンにしないと問合せで正しい結果が得られないデータです(例: 重複レコード、不整合があるネーミング規則によるレコード、互換性のないデータ型のレコード)。

コミットされた読取り。内容を保証しない読取りを回避するため、データの読取り中に共有ロックが保持されるように指定します。トランザクションの終了前にデータを変更できるため、反復不可能な読取りや仮データが発生します。

反復可能読取り。問合せで使用されるすべてのデータにロックを設定して、他のユーザーによるデータの更新を防止します。別のユーザーが設定したデータに新規の仮行を挿入できます。その行は現行トランザクションの後続の読取りに含まれます。

シリアライズ可能。データ・セットに対して範囲ロックを設定して、トランザクションが完了するまで他のユーザーによる更新およびデータ・セットへの行の挿入が防止されます。これは4種の分離レベルのうち、最も制限が厳しいレベルです。同時実行性が低下するため、このオプションは必要な場合のみ使用してください。

「一般」タブの多次元接続プールのプロパティ

接続プール・プロパティの使用方法を学習します。

この表は、「接続プール」ダイアログの「一般」タブのプロパティのうち、マルチディメンション・データ・ソースに固有のプロパティを説明しています。一部のプロパティは特定タイプのマルチディメンション・データ・ソースでのみ表示されます。

  • URL

    このプロパティはXMLAデータ・ソースのみに表示されます。XMLAプロバイダに接続するURLを指定します。このURLは、キューブをホストするコンピュータのXMLA仮想ディレクトリをポイントします。仮想ディレクトリは、msxisapi.dll (Microsoft XML for Analysis SDKインストールに含まれる)と関連付ける必要があります。このURLはたとえば次のようになります。

    http://SDCDL360i101/xmla/msxisap.dll

  • Essbase Server

    このプロパティはEssbaseデータ・ソースでのみ表示されます。Essbase Serverを実行しているコンピュータの名前を指定します。

    Essbase Serverがデフォルト以外のポートで実行していたり、Essbase Clusterの一部である場合には、ポート番号をhostname:portのフォーマットで「Essbase Server」フィールドに含める必要があります。

    ノート:

    Essbaseクラスタからメタデータをインポートできますが、それでも「Essbase Server」フィールドに個別のEssbaseサーバーのホスト名とポート番号を指定する必要があります。

  • SSO

    このプロパティはEssbase、Hyperion Financial ManagementおよびHyperion Planningのデータ・ソースでのみ表示されます。

    Essbaseでは、Essbaseを使用して様々なユーザーに異なるキューブ・アクセスまたはメンバーレベル・アクセスを提供するセキュリティ・ポリシーを施行できるようにする場合にこのオプションを選択します。このオプションを選択する場合、「共有ログオン」オプションも選択する必要があります。

    すべてのユーザーがEssbaseキューブへの同じアクセス権を持つよう想定されている場合、このオプションを選択しないでください。この場合、すべてのユーザーは、接続プールで指定された共有資格証明に基づき、キューブへの同じアクセス権を持ちます。このオプションを選択しない場合、「共有ログオン」オプションも選択する必要もあります。

    Hyperion Financial ManagementまたはHyperion Planningの場合、このオプションを選択して、接続プールの一連の共有資格証明のかわりに共有トークンを使用してHyperion Financial ManagementまたはHyperion Planningに対して認証を行うために「共有ログオン」オプションを選択解除していることを確認します。

    このオプションを選択する場合、対応するデータベース・オブジェクトで「仮想プライベート・データベース」を選択して、キャッシュ・エントリを保護することも必要です。

    EPMシステム・インストーラを使用してインストールされたEssbase、Hyperion Financial ManagementおよびHyperion Planningデータ・ソースについては、このオプションを選択する前に事前構成が必要です。「Essbase、Hyperion Financial ManagementのSSOの構成」を参照してください。

  • 共有ログオン

    このプロパティはEssbase、Hyperion Financial ManagementおよびHyperion Planningのデータ・ソースでのみ表示されます。

    すべてのEssbaseデータ・ソースで、このオプションを選択する必要があります。「共有ログオンを使用するためのEssbaseの構成」を参照してください。

    Hyperion Financial ManagementまたはHyperion Planningの場合、SSOプロパティの設定方法に基づいてこのオプションを設定します。

    • 「SSO」プロパティを選択した場合は、このオプションを選択しないでください。このオプションをチェックしないと、接続プールの一連の共有資格証明のかわりに共有トークンを使用してHyperion Financial ManagementまたはHyperion Planningに対して認証が行われます。

    • 「SSO」プロパティを選択しなかった場合は、このオプションを選択して、Oracle BIサーバーですべてのOracle BIユーザーが同じ共有ログオン資格証明を使用してそのデータ・ソースに接続できるようにします。すべてのユーザーは、データ・ソースへの同じアクセス権を共有します。

  • データ・ソース

    マルチディメンション・データ・ソースへの接続に使用されるベンダー固有の情報を指定します。仕様が一様ではないため、設定手順については、マルチディメンション・データ・ソース管理者に問い合せてください。たとえば、XML for Analysis SDKのv 1.0を使用している場合は、この値Provider-MSOLAP;Data Source-localを使用します。v 1.1を使用している場合は、値Local Analysis Serverを使用します。

  • カタログ

    データ・ソースからデータをインポートした場合は、使用可能なカタログのリストを指定します。キューブ表は接続プールで使用するカタログに対応します。

  • システムIPまたはホスト名

    このプロパティはSAP/BWデータ・ソースでのみ表示されます。SAPデータ・サーバーのホスト名またはIPアドレスを指定します。このフィールドは、SAP/BW接続文字列のパラメータashostに対応します。

  • システム番号

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

  • クライアント番号

    このプロパティはSAP/BWデータ・ソースでのみ表示されます。SAPクライアントの番号を指定します。これは、SAPでクライアントと呼ばれる自己完結型の単位に割り当てられた3桁の番号です。クライアントは、トレーニング、開発、テスト、本番のクライアントなどです。また、大企業の各部署を表すこともできます。このフィールドは、SAP/BW接続文字列のパラメータclientに対応します。

  • 言語

    このプロパティはSAP/BWデータ・ソースでのみ表示されます。データ・ソースへのログイン時に使用されるSAPの言語コードを指定します(英語はEN、ドイツ語はDEなど)。このフィールドは、SAP/BW接続文字列のパラメータlangに対応します。

  • 追加パラメータ

    このプロパティはSAP/BWデータ・ソースでのみ表示されます。オプションで、param=valueの形式で追加の接続文字列パラメータを指定します。複数のパラメータを指定する場合はコロンで区切ります。

  • セッションの使用

    このプロパティはXMLAデータ・ソースのみに表示されます。問合せが共通セッションを介するかどうかを制御するオプションです。このオプションを有効化する必要があるかどうかの判定については、マルチディメンション・データ・ソースの管理者に問い合せてください。デフォルトはOff (選択解除)です。

「接続スクリプト」タブでの接続プール・プロパティの設定

接続スクリプトを作成して、接続の確立前、問合せの実行前、問合せの実行後または接続の切断後にスクリプトが実行されるように設定できます。

たとえば、接続時にユーザー名と接続時間を表に挿入する接続スクリプトを作成することなどができます。

ここでは、「接続プール」ダイアログの「接続スクリプト」タブのプロパティについて説明します。「接続スクリプト」タブは、ODBC、OCI、 Oracle OLAP、ADF、およびDB2のデータ・ソースで使用できます。

接続スクリプトには、たとえば引用識別子をオンにするコマンドなど、データベースで受け入れられる任意のコマンドを組み込むことができます。メインフレーム環境では、スクリプトを使用してDB2への接続時にRACFなどのメインフレームのセキュリティ・パッケージへのセキュリティ・イグジットを強制するセカンダリ権限IDを設定することなどができます。これによって、メインフレーム環境のセキュリティの一元的な管理が可能になります。

接続スクリプトは、データ・ソースに直接送信されるため、スクリプトではOracle BIサーバーの論理SQLではなくネイティブSQLまたはデータ・ソースで認識されるその他の言語を使用する必要があります。

  • 「接続プール」ダイアログの「接続スクリプト」タブをクリックし、次の表の情報を参照してフィールドに入力します。

    接続スクリプトを新規に入力するには、適切なスクリプト・タイプの横にある「新規」をクリックします。次に、スクリプトのSQL文を入力するか、貼り付けて「OK」をクリックします。

    省略記号ボタンをクリックして「物理SQL」ウィンドウを起動して、既存のスクリプトを編集することもできます。既存スクリプトを並べ替えるには、上矢印および下矢印ボタンを使用します。

    スクリプトを削除するには、「削除」をクリックします。

この表は、「接続プール」ダイアログの「接続スクリプト」タブのプロパティを説明しています。

プロパティ 説明

接続時に実行

接続の確立前に実行されるSQL問合せが格納されます。

問合せ前に実行

問合せの実行前に実行されるSQL問合せが格納されます。

問合せ後に実行

問合せの実行後に実行されるSQL問合せが格納されます。

切断時に実行

接続の切断後に実行されるSQL問合せが格納されます。

「XML」タブの接続プール・プロパティの設定

「XML」タブの「接続プール」のプロパティを使用して、XMLデータ・ソースのプロパティを設定します。

ノート:

「接続プール」ダイアログの「XML」タブでは、「物理表」ダイアログの「XML」タブと同じ機能が用意されています。「物理表」ダイアログの「XML」タブのプロパティのほうが、「接続プール」ダイアログの対応する設定より優先されます。

  • 「接続プール」ダイアログの「XML」タブをクリックし、次の表の情報を参照してフィールドに入力します。

この表は、「接続プール」ダイアログの「XML」タブのプロパティを説明しています。

プロパティ 説明

接続方法:

検索スクリプト

このプロパティは、XMLサーバー・データ・ソース用です。「参照」をクリックし、使用する検索スクリプトを見つけます。

接続プロパティ:

URLリフレッシュ間隔

このプロパティはXMLデータ・ソースに使用されますが、XMLサーバー・データ・ソースには使用できません。リフレッシュ間隔は、データベース表のキャッシュ永続期間の設定に似ています。URLリフレッシュ間隔では期間が設定され、この期間を経過すると、キャッシュ内の結果を使用するのではなく、XMLデータ・ソースに対する直接問合せが再度実行されます。デフォルトの設定は無限で、XMLデータ・ソースのリフレッシュは行われません。

データ・ソースへのアクセスに使用するURLを指定した場合は、URLリフレッシュ間隔を設定します。

  • リストから値(「無限」、「日」、「時間」、「分」または秒)を選択します。

  • 間隔の数値部分とする整数値を指定します。

接続プロパティ:

URLのロードのタイムアウト

問合せのタイムアウトの間隔。デフォルトは15分です。

データ・ソースへのアクセスに使用するURLを指定した場合は、「URLのロードのタイムアウト」を次のように設定します。

  • リストから値(「無限」、「日」、「時間」、「分」または秒)を選択します。

  • 間隔の数値部分とする整数値を指定します。

接続プロパティ:

最大接続数

接続の最大数。デフォルトは10です。

問合せ入力補足:

ヘッダー・ファイル/トレーラ・ファイル

このプロパティは、XMLサーバー・データ・ソースでのみ表示されます。「参照」をクリックして、ヘッダー・ファイルとトレーラ・ファイルを見つけます。

問合せ出力フォーマット

XMLデータ・ソースでは、「XML」のみを選択します。

XMLサーバー・データ・ソースでは、その他の出力フォーマットを使用できます。

検索スクリプトの例

この検索スクリプト例を使用して、XMLデータ・ソースの検索スクリプトを作成します。

例7-1 検索スクリプト

<ConnectionPool name="Connection Pool" parentName="&quot;Stock Quotes&quot;" parentId="3023:3037" parentUid="80000557-0bcf-0000-714b-e31d00000000" id="3029:3046" uid="8000055b-0bd5-0000-714b-e31d00000000" password="E3130008E1C4CAD47041E4AE68B048E6 7C2E35213306F12832914CBE7A9DD95561D771DED06484112B1FC6F27B6D0D58" timeout="4294967295" maxConnDiff="10" maxConn="32" dataSource="http://www.host.net/stockquote.asmx" type="Default" reqQualifedTableName="false" isSharedLogin="true" isConcurrentQueriesInConnection="false" isCloseAfterEveryRequest="true" xmlRefreshInterval="4294967295" scriptPath="java.exe -Dhttp.proxyHost=www-proxy.us.oracle.com -Dhttp.proxyPort=80 -classpath \analytics\server\Query\Execution\DbGateway\DbGatewayXML\Test\stocktick_webservices -jar \analytics\server\Query\Execution\DbGateway\DbGatewayXML\Test\stocktick_webservices\XMLServiceAdapter.jar" outputType="xml" gwDelim="," ignoreFirstLine="false" bulkInsertBufferSize="0" transactionBoundary="0" xmlaUseSession="false" xmlHeaderPath="C:\orahome_2015\biclient\oraclebi\orainst\config\OracleBIServerComponent\coreapplication\NQSQueryHeader.xml" trailerPath="C:\orahome_2015\biclient\oraclebi\orainst\config\OracleBIServerComponent\coreapplication\NQSQueryTrailer.xml" supportParams="false" isSiebelJDBSecured="false">
</ConnectionPool>

「ライトバック」タブの接続プール・プロパティの設定

「ライトバック」タブを使用して、ODBC、OCI、Oracle OLAP、ADF、およびDB2のデータ・ソースのライトバック・プロパティを設定します。

  • 「接続プール」ダイアログの「ライトバック」タブをクリックし、表の情報を参照してフィールドに入力します

「バッファ・サイズとトランザクション境界の設定について」を参照してください。

この表は、「接続プール」ダイアログの「ライトバック」タブのプロパティを説明しています。

プロパティ 説明

一時表:

接頭辞

Oracle BIサーバーで一時表を作成する際の一時表名の最初の2文字です。デフォルト値はTTです。

一時表:

所有者

SQL文で一時表名の修飾に使用される表の所有者名。たとえば、表owner.tablenameのように作成されます。空白のままにすると、書込み可能な接続プールで指定したユーザー名を使用して、表名が修飾されます。「一般」タブで「共有ログオン」フィールドを設定します。

一時表:

データベース名

一時表が作成されるデータベース。このプロパティはIBM OS/390にのみ適用されます。これは、IBM OS/390ではデータベース名修飾子がCREATE TABLE文に組み込む必要があるためです。空白にした場合は、ユーザーに表作成権限がないシステム・データベースが、OS/390でターゲット・データベースのデフォルトとして設定される場合があります。

一時表:

表領域名

一時表が作成される表領域。このプロパティは、OS/390にのみ適用されます。これは、OS/390では表領域名修飾子をCREATE TABLE文に組み込む必要があるためです。空白にした場合は、ユーザーに表作成権限がないシステム・データベースが、OS/390でターゲット・データベースのデフォルトとして設定される場合があります。

一括挿入:

バッファ・サイズ(KB)

データベース表への1回あたりのデータ挿入のバイト数の制限に使用されます。パフォーマンスを最適化するには、このパラメータの設定を128にすることをお薦めします。

一括挿入:

トランザクション境界

データベース表への挿入1回あたりのバッチ・サイズを制御します。パフォーマンスを最適化するには、このパラメータの設定を1000にすることをお薦めします。

Unicodeデータベース・タイプ

このオプションは、UnicodeデータベースでNCHARなどの明示的なUnicodeデータ型の列を操作する際に選択します。これによって、バインディングが適正で、データが正しく挿入されることが保証されます。データベース・ベンダーが異なると、提供される文字データ型およびUnicodeサポートのレベルも異なります。このオプションを設定する状況の判定には、次の一般ガイドラインを使用します。

  • CHARデータ型でUnicodeがサポートされ、独立したNCHARデータ型がないデータベースの場合はこのオプションを選択しません。

  • NCHARデータ型が使用可能なデータベースでは、このオプションを選択することをお薦めします。

  • CHARおよびNCHARのデータ型でUnicodeをサポートするように構成されているデータベースの場合、このオプションの選択は任意です。

単一の非UnicodeデータベースにUnicodeと非Unicodeのデータ型を共存させることはできません。たとえば、単一の非Unicodeデータベース環境でCHARNCHARのデータ型を混成することはサポートされません。

「その他」タブの接続プール・プロパティ

「接続プール」ダイアログの「その他」タブを使用して、ADF、JDBCおよびJNDIデータ・ソースのアプリケーション・プロパティを設定します。

アプリケーション・プロパティを設定する場合は、「JDBC (ダイレクト・ドライバ)またはJDBC (JNDI)データ・ソースのアプリケーション・プロパティの指定」を参照してください。

この表は、「接続プール」ダイアログの「その他」タブのプロパティを説明しています。

プロパティ 説明

AppModuleの定義

接続先のルート・アプリケーション・モジュールの完全修飾Javaパッケージ名(例: oracle.apps.fii.receivables.model.RootAppModule)。

AppModuleの構成

接続で使用されるアプリケーション構成を決定します(例: RootAppModuleShared)。

URL

Oracle Business Intelligenceブローカ・サーブレットへのURL。形式は次のとおりです。

http://host:port/APP_DEPLOYMENT_NAME/obieebroker

例:

http://localhost:7001/SnowflakeSalesApp/obieebroker

URLでは大/小文字が区別されます。

SQL Bypass Database

(オプション) SQL Bypassデータベースの名前。SQL Bypassデータベースは、リポジトリの物理レイヤーにある物理データベースである必要があります。SQL Bypassデータベースのデータベース・オブジェクトには、Oracle WebLogicサーバーで定義されたJDBCデータベースと同じデータベースをポイントする接続情報とともに有効な接続プールを設定する必要があります。

SQL Bypassデータベースに表を設定する必要はありません。有効なデータベース名が指定されると、すべての問合せに対してSQL Bypass機能が有効化されます。

SQL Bypass機能はデータベースに直接問い合せるため、可能な場合は集計やその他の変換がプッシュ・ダウンされ、Oracle Business Intelligenceにストリームされて処理されるデータの量が削減されます。「SQL Bypassデータベースの指定について」を参照してください。

JDBC (ダイレクト・ドライバ)またはJDBC (JNDI)データ・ソースのアプリケーション・プロパティの指定

JDBC (ダイレクト・ドライバ)またはJDBC (JNDI)データ・ソースのアプリケーション・プロパティを設定するステップを使用します。

  1. Oracle BI管理ツールで、物理データベースをダブルクリックして、JDBC (ダイレクト・ドライバ)またはJDBC (JNDI)データ・ソースのアプリケーション・プロパティを設定します。
  2. 「プロパティ」で、「接続プール」タブをクリックします。
  3. 「接続」を選択し、「編集」をクリックして「接続プール」ダイアログを開きます。
  4. 「接続プール」ダイアログで、「その他」タブをクリックします。
  5. 次に示す情報を使用して、フィールドに入力します。
    • 必要なカートリッジ・バージョン: デフォルトは12.1です。

    • HTTP経由のSQLを使用してください: JDBC (JNDI)呼出しインタフェースのみ。Oracle BI Cloud Serviceを使用している場合、このフィールドを「false」に設定して、HTTPを使用してネットワーク間の通信を行います。たとえば、アクセスしているOracle BIサーバー とデータ・ソースが異なるOracleクラウドに存在する場合、このフィールドを「false」に設定します。

    • JavadsサーバーURL: JDBC (ダイレクト・ドライバ)呼出しインタフェースのみ。このフィールドには、「Javaデータソース・サーバーに接続」ダイアログで指定したホスト名とポートが移入されます。「JavadsサーバーURL」は、Javaメタデータを「物理」レイヤーに提供するJavaデータソース・サーバーのURLです。

    • ドライバ・クラス: JDBC (ダイレクト・ドライバ)呼出しインタフェースのみ。データベースに接続するためのドライバ(DB2 JDBCドライバなど)を指定します。Oracle WebLogic Serverにデプロイされているドライバを選択する必要があります。

      デフォルトでは、Oracle JDBCドライバ(oracle.jdbc.OracleDriver)がOracle WebLogic Serverで使用できます。

JDBC文字列パターンおよびドライバ・クラス

使用できるJDBC文字列とドライバ・クラスの例。

Oracle:
   Driver Class: oracle.jdbc.OracleDriver
   jdbc string: jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=[\"host-name\"])(PORT=[\"port\"]))(CONNECT_DATA=(SERVICE_NAME=[\"service-name\"])))              
Apache Hive
    Driver Class: com.oracle.bi.jdbc.hive.HiveDriver
    jdbc:oracle:hive://[\"host-name\"]:[\"port\"];EncryptionMethod=SSL;ValidateServerCertificate=false
DB2
   com.oracle.bi.jdbc.db2.DB2Driver
   jdbc:oracle:db2://[\"host-name\"]:[\"port\"];DatabaseName=[\"service-name\"]
Impala
   com.oracle.bi.jdbc.impala.ImpalaDriver
   jdbc:oracle:impala://[\"host-name\"]:[\"port\"];EncryptionMethod=SSL;ValidateServerCertificate=false
MySQL
   com.mysql.cj.jdbc.Driver
   jdbc:mysql://[\"host-name\"]:[\"port\"]"[/database][?properties]
SQL Server
   com.oracle.bi.jdbc.sqlserver.SQLServerDriver
   jdbc:oracle:sqlserver://[\"host-name\"]:[\"port\"];DatabaseName=[\"service-name\"]
Teradata
   com.teradata.jdbc.TeraDriver
   jdbc:teradata://[\"host-name\"]/DBS_PORT=[\"port\"]  

EXECUTE PHYSICAL DATABASE

EXECUTE PHYSICAL DATABASE文を使用して、Oracle BIサーバーに物理SQLを送信してデータ・ソースに接続します。

EXECUTE PHYSICAL DATABASE文を使用すると、接続プールの情報を知らなくてもクライアントから物理問合せを実行できるようになります。

構文

EXECUTE PHYSICAL DATABASE DatabaseName/*add a valid SQL statement

永続接続プールの設定

永続接続プールは、マーケティングをサポートするために使用する問合せなど、特定のタイプの問合せに使用されるデータベース・プロパティです。

問合せの機能の中にデータベースでサポートできないものが含まれる場合があるため、一部の問合せでは含まれる論理問合せのすべてをトランザクション・データベースに送信できるとは限りません。この問題は、データベース内に物理表を一時的に作成し、Oracle BIサーバー問合せをリライトして新しい一時物理表を参照させることによって解決できる可能性があります。

永続接続プールは、次の状況で使用できます。

  • ストアド・プロシージャの移入。論理SQL結果セットの管理表へのリライトに使用されます。通常はOracleのSiebel Marketing Serverで、セグメンテーション・キャッシュ結果セットの書込みに使用されます。

  • 汎化サブ問合せの実行。非機能サブ問合せを一時表に格納してから、この表に対して元のサブ問合せの結果をリライトします。Oracle BIサーバーとデータベース間のデータの移動を減少し、無制限のINリスト値をサポートします。また、パフォーマンスの向上にも有益です。

    これらの状況では、論理SQL問合せを発行するユーザーにターゲット・データベースに対する移入権限が付与されている必要があります。

永続接続プール機能は、ライトバック機能を持つ接続プールを指定して、このタイプの問合せを処理します。単一データベース内の1つの接続プールを永続接続プールとして割り当てます。この機能を有効にする場合は、接続プールで指定されたユーザー名に、データベースでDDL(データ定義言語)およびDML(データ操作言語)を作成する権限が付与されている必要があります。

「「ライトバック」タブの接続プール・プロパティの設定」を参照してください。

  1. 管理ツールの物理レイヤーで、永続接続プールを割り当てるデータベース・オブジェクトをダブルクリックします。
  2. 「データベース」ダイアログで「一般」タブをクリックします。
  3. 永続接続プール」領域で、「クリア」をクリックします。

    永続接続プール」フィールドのデータベース名が「未割当て」に置き換わります。

  4. 複数の接続プールが存在する場合は、「参照」ダイアログで適切な接続プールを選択し、「OK」をクリックします。
    選択した接続プールの名前が「永続接続プール」フィールドに表示されます。
  5. (オプション)「接続プール」タブをクリックして、ライトバック・プロパティを設定します。
  6. 接続プールのリストで、接続プールをダブルクリックします。
  7. 「接続プール」ダイアログで、「ライトバック」タブをクリックします。
  8. OK」をクリックします。再度「OK」をクリックして、永続接続プールを保存します。

「永続化接続プール」プロパティの削除

次のステップを使用して、「永続化接続プール」プロパティを削除します。

  1. Oracle BI管理ツールの物理レイヤーで、削除する永続接続プールが含まれるデータベース・オブジェクトをダブルクリックします。
  2. 「データベース」ダイアログで「一般」タブをクリックします
  3. 永続接続プール」領域で、「クリア」をクリックします。
    永続接続プール」フィールドのデータベース名が「未割当て」に置き換わります。
  4. 「OK」をクリックします。

バッファ・サイズとトランザクション境界の設定について

結果セットの各行のサイズが1KBで、バッファ・サイズが20KBの場合、配列サイズは20KBです。

120行存在する場合は、それぞれバッチ・サイズが20行に制限された6つのバッチが存在します。

トランザクション境界」を3に設定した場合、サーバーは2回コミットします。1度目は行60の後(3 * 20)にサーバーがコミットします。2度目は行120の後にサーバーがコミットします。サーバーのコミット時に障害が発生した場合は、現在トランザクションのみがロールバックされます。たとえば、2回のコミットがあり、最初のコミットは正常に実行され、2回目のコミットが失敗した場合、サーバーでは2回目のコミットのみがロールバックされます。

最適なパフォーマンスを得るには、バッファ・サイズを128に、トランザクション境界を1000に設定することを検討してください。

接続プールのリスト・コマンド

listConnectionpoolコマンドを使用して、特定のサービス・インスタンスに対してJSON形式で接続プールのリストを作成します。

複数の接続プールを更新する必要がある場合、listConnectionpoolコマンドおよびupdateConnectionpoolユーティリティを使用します。

ランチャ・スクリプト(UNIXの場合はdatamodel.sh、Windowsの場合はdatamodel.cmd)を介して、ユーティリティを実行します。

ドメインがデフォルトのフォルダにインストールされている場合、ランチャ・スクリプトの場所は次のようになります。

Oracle_Home/user_projects/domains/Domain_Name/bitools/bin/datamodel.shまたはWindowsの場合はdatamodel.cmd

クライアント・インストールにドメイン名がない場合、ランチャ・スクリプトの場所は次のようになります。

Oracle_Home\bi\bitools\bin\datamodel.cmd

「コマンドを使用する前の必知事項」を参照してください。

構文

listConnectionpoolコマンドは、次のパラメータをとります。

listConnectionpool -SI <service_instance> -U <cred_username> [-P <cred_password>] [-S <hostname>] [-N <port_number>] [-V <true/false>] [-O <outputFile.json>] [-SSL] [-H]

説明

SIは、コンポーネント・インスタンスの名前を指定します。

Uは、Oracle BI EE認証に使用する有効なユーザー名を指定します。

Pは、Uに指定したユーザーの名前に対応するパスワードを指定します。パスワードを指定していないと、コマンドの実行時にパスワードの入力を求められます。自動化されたスクリプティングを使用してコマンドを実行する場合にのみ、コマンドにパスワードを含めることをお薦めします。

Sは、Oracle BI EEホスト名を指定します。クライアント・インストールからコマンドを実行している場合のみ、このオプションを含めます。

Nは、Oracle BI EEポート番号を指定します。クライアント・インストールからコマンドを実行している場合のみ、このオプションを含めます。

Vは、接続プールで使用されるリポジトリ変数を含めるかどうかを指定します。デフォルトは、falseです。

Oは、.json接尾辞を使用した出力ファイル名を指定します。

SSLは、SSLを使用して Oracle WebLogic Serverに接続してコマンドを実行することを指定します。クライアント・インストールからコマンドを実行している場合のみ、このオプションを含めます。

Hは、使用方法の情報を表示し、コマンドを終了します。-Hを使用するか、パラメータを指定しないで.shを実行すると、ヘルプ・コメントが表示されます。

datamodel.sh listConnectionpool -SI bi -U weblogic -P password -S server1.example.com -N 7777  -SSL -V true -O output.json

サンプルの接続プールのリストJSON出力

{    "Title":"List Connection Pools",
   "Conn-Pool-Info":[
       {
           "uid":"80ca62c5-0bd5-0000-714b-e31d00000000",
           "connPool":"SampleApp_Lite_Xml",
           "parentName":"\"Sample App Lite Data\"",
           "user":"VALUEOF(REPO_STATIC_VAR)_Tushar",
           "password":"B25F85BC2A170AD4349DEF26E4D1295D 7C2E35213306F12832914CBE7A9DD95561D771DED06484112B1FC6F27B6D0D58",
           "dataSource":"VALUEOF(NQ_SESSION.SERVICEINSTANCEROOT)/data/SampleAppLite"
       }
   ],
   "Variables-In-Conn-Pool":[
       {
           "uid":"40000000-3c25-155b-991a-0af2537d0000",
           "variable":"REPO_STATIC_VAR",
           "value":"'RepoStaticVariable'"
       }
   ]}

接続プールの更新コマンド

更新updateConnectionpoolコマンドを使用して、更新された接続プールを含む変更されたJSONファイルを特定のサーバー・インスタンスにアップロードします。

複数の接続プールを更新する必要がある場合、updateConnectionpoolコマンドおよびlistConnectionpoolユーティリティを使用します。

listConnectionpoolコマンドを使用して、特定のサービス・インスタンスの接続プールのリストを含むJSONファイルを作成します。このファイルの接続プール情報を変更し、updateConnectionpoolコマンドを使用してサービス・インスタンスにアップロードします。ファイルのuidおよびconnPool値を変更しないでください。「接続プールのリスト・コマンド」を参照してください。

ランチャ・スクリプト(UNIXの場合はdatamodel.sh、Windowsの場合はdatamodel.cmd)を介して、ユーティリティを実行します。

ドメインがデフォルトのフォルダにインストールされている場合、ランチャ・スクリプトの場所は次のようになります。

Oracle_Home/user_projects/domains/Domain_Name/bitools/bin/datamodel.shまたはWindowsの場合はdatamodel.cmd

クライアント・インストールにドメイン名がない場合、ランチャ・スクリプトの場所は次のようになります。

Oracle_Home\bi\bitools\bin\datamodel.cmd

「コマンドを使用する前の必知事項」を参照してください。

構文

updateConnectionpoolコマンドは、次のパラメータをとります。

updateConnectionpool -C <connectionpoolList.json> -SI <service_instance> -U <cred_username> [-P <cred_password>] [-S <hostname>] [-N <port_number>] [-SSL] [-H]

説明

Cは、アップロードする変更されたJSONファイルの名前を指定します。このファイルに変更されたuidおよびconnPool値を含めないでください。

SIは、コンポーネント・インスタンスの名前を指定します。

Uは、Oracle BI EE認証に使用する有効なユーザー名を指定します。

Pは、Uに指定したユーザーの名前に対応するパスワードを指定します。パスワードを指定しない場合、コマンドの実行時にパスワードの入力を求められます。セキュリティ上の目的のため、自動化されたスクリプティングを使用してコマンドを実行する場合のみコマンドにパスワードを含めることをお薦めします。

Sは、Oracle BI EEホスト名を指定します。クライアント・インストールからコマンドを実行している場合のみ、このオプションを含めます。

Nは、Oracle BI EEポート番号を指定します。クライアント・インストールからコマンドを実行している場合のみ、このオプションを含めます。

SSLは、SSLを使用して Oracle WebLogic Serverに接続してコマンドを実行することを指定します。クライアント・インストールからコマンドを実行している場合のみ、このオプションを含めます。

Hは、使用方法の情報を表示し、コマンドを終了します。-Hを使用するか、パラメータを指定しないで.shを実行すると、ヘルプ・コメントが表示されます。

datamodel.sh updateConnectionpool -C connpool.json -SI bi -U weblogic -P password -S server1.example.com -N 7777 -SSL

接続プール・パスワードの変更のためのBIServerT2PProvisioner.jarユーティリティの使用

Oracle BIリポジトリをある環境から別の環境に移動するときに、多くの場合、データ・ソースに対する接続プール情報を変更する必要があります。一般的に、環境の接続情報は別の環境での接続情報とは異なるからです。

ノート:

接続プール・パスワードは、BIServerT2PProvisioner.jarを使用して更新できますが、updateConnectionpoolコマンドを使用する方法をお薦めしています。「接続プールの更新コマンド」を参照してください。

接続プール・パスワードは暗号化され、暗号化されたリポジトリ・ファイル内に保存されます。このため、Oracle BIリポジトリを使用する前に、プレーン・テキストのパスワードを暗号化してください。

BIServerT2PProvisioner.jarユーティリティを使用して、リポジトリ内の接続プール・パスワードをプログラムで変更して暗号化できます。このユーティリティはRPDフォーマットのリポジトリでしか動作しません。MDS XMLフォーマットのリポジトリでは使用できません。また、ユーティリティにはJDK 1.6が必要です。

BIServerT2PProvisioner.jarユーティリティを使用して、接続プール・パスワードを変更するには:

BIServerT2PProvisioner.jarは、次の場所にあります。

Oracle_Home/bi/bifoundation/server

システムでクリアテキスト・パスワードを使用可能にしておくことは推奨されません。そのかわりに、入力パスワード・ファイルを完全に削除するか、パスワードを表示しないように暗号化してください。

  1. 次に示すように、-generateオプションを指定してBIServerT2PProvisioner.jarを実行し、新しいパスワードを入力できるテンプレート・ファイルを生成します。
    java -jar ORACLE_HOME/bifoundation/server/bin/BIServerT2PProvisioner.jar -generate repository_name -output password_file

    説明:

    repository_nameは、パスワードを変更する接続プールを含むOracle BIリポジトリの名前とパスです。

    password_fileは出力パスワード・テキスト・ファイルの名前とパスです。このファイルには指定したリポジトリからの接続プールの名前が含まれています。

    次に、プロンプトが表示されたらリポジトリのパスワードを入力します。

    例:

    java -jar BIServerT2PProvisioner.jar -generate original.rpd –output
    inputpasswords.txt
    Enter the repository password: My_Password
    
  2. パスワード・ファイルを編集して、<Change Password>を接続プールごとの更新されたパスワードで置き換えます。サンプルのパスワード・ファイルは次のとおりです。
    "SQLDB_UsageTracking"."UTCP" = <Change Password>
    "SQLDB_Data"."Db Authentication Pool" = <Change Password>

    ヒント:

    等号の右側のテキストのみを編集してください。等号の左側のテキストを変更すると、接続プール名の構文が正しくなくなります。

    編集を完了したら、パスワード・ファイルを保存して閉じます。

  3. 次に示すように、-passwordsオプションを指定して、もう一度BIServerT2PProvisioner.jarを実行します。
    java -jar BIServerT2PProvisioner.jar -passwords password_file
    -input input_repository -output output_repository
    

    説明:

    password_fileは接続プールとその対応する変更されたパスワードを指定するテキスト・ファイルの名前とパスです。

    input_repositoryは、変更されたパスワードを適用するOracle BIリポジトリの名前とパスです。

    output_repositoryは、変更されたパスワードを含む出力リポジトリの名前とパスです。

    次に、プロンプトが表示されたらリポジトリのパスワードを入力します。

    例:

    java -jar BIServerT2PProvisioner.jar -passwords inputpasswords.txt -input
    original.rpd -output updated.rpd
    Enter the repository password: My_Password