ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionシステム管理者ガイド
11g リリース1 (11.1.1)
B63029-05
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

9 使用状況トラッキングの管理

この章では、Oracle Business Intelligenceの使用状況トラッキングを管理する方法について説明します。Oracle BIサーバーは、使用状況トラッキング・データの収集をサポートしています。使用状況トラッキングが有効な場合、Oracle BIサーバーは各問合せの使用状況トラッキングのデータを収集し、そのデータをデータベース表に直接挿入します。


注意:

Oracle BI Summary Advisor機能は、使用状況トラッキング機能と連携しています。Summary Advisorは、使用状況トラッキングの直接挿入とのみ連携して機能します。

Oracle BI Summary Advisorは、Oracle Business IntelligenceをOracle Exalytics Machineで実行している場合にのみ使用できます。Summary Advisor機能の詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド』のOracle BI Summary Advisorを使用した集計の問合せ候補の識別に関する項を参照してください。


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

9.1 使用状況トラッキングについて

Oracle BIサーバーでは使用状況トラッキングの累積統計をサポートしており、これは、データベースの最適化、集計計画、使用するリソースに基づくユーザーや部門への請求など、様々な形で使用できます。BIサーバーは、詳細な問合せレベルで使用状況を追跡します。

使用状況トラッキングを有効にすると、すべての問合せの統計がデータベース表に挿入されるか、使用状況トラッキング・ログ・ファイルに書き込まれます。直接挿入を使用する場合は、使用状況トラッキング・データがリレーショナル・データベース表に直接挿入されます。直接挿入を使用して統計をデータベース表に書き込むことをお薦めします。

BIサーバーが起動すると、メタデータ内の列名が、使用状況トラッキング表内の有効な列のリストに対して検証されます。次のイベントが発生します。


注意:

Oracle Business Intelligenceインストールの次の場所に、サンプルの使用状況トラッキング・リポジトリ・モデルが提供されています。

ORACLE_INSTANCE\bifoundation\admin\provisioning\OracleBIServerComponent\usage_tracking.rpd

このパスは、Oracle BI EE 11.1.1.7.10以降のバージョンには適用されますが、それより前のバージョンには適用されません。

サンプルの使用状況トラッキング・リポジトリを使用するには、ご使用のデータベースを指すように接続プールを変更して、使用状況トラッキング・リポジトリと既存のリポジトリをマージします。


9.2 使用状況トラッキングの情報を収集するための直接挿入の設定

直接挿入は、使用状況トラッキングの設定における推奨方法です。この項では、直接挿入を設定する方法および次の内容について説明します。

9.2.1 使用状況トラッキングの統計データベースの設定

使用状況トラッキングの直接挿入を使用する前に、使用状況トラッキングの統計を格納するデータベースを設定する必要があります。ターゲット・データベースでリポジトリ作成ユーティリティ(RCU)を実行し、必要な統計スキーマを作成する必要があります。

通常は、RCUで作成したスキーマがすでに含まれている、Oracle Business Intelligenceで使用するためにインストールしたデータベースを統計データベースとして使用します。使用状況トラッキング用にRCUで作成された表の名前は、S_NQ_ACCTおよびS_NQ_DB_ACCTです。これらの表の詳細は、第9.3項「使用状況トラッキング・データの説明」を参照してください。

このデータベースは、Oracle BIリポジトリの物理レイヤーにもインポートする必要があります。

使用状況トラッキングの統計データベースを設定するには:

  1. 選択した外部データベースでリポジトリ作成ユーティリティを実行します。Oracle Business Intelligenceで使用するためにインストールしたデータベースを使用状況トラッキングの統計用に使用する場合は、RCUで作成したスキーマがすでに含まれているため、この手順をスキップできます。

  2. 管理ツールを開き、このデータベースを物理レイヤーにインポートします。詳細は、『Oracle Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド』を参照してください。

  3. リポジトリを保存して閉じます。

  4. Fusion Middleware Controlを使用してリポジトリをアップロードし、問合せに使用できるようにします。詳細は、第10.2項「リポジトリをアップロードしOracle BIプレゼンテーション・カタログの場所を設定するためのFusion Middleware Controlの使用」を参照してください。

9.2.2 直接挿入パラメータの設定

新しい(アップグレードでない)インストールに直接挿入を設定するには、Fusion Middleware ControlでシステムMBeanブラウザを使用します。

システムMBeanブラウザを使用して使用状況トラッキングの直接挿入を設定するには:

  1. Fusion Middleware Control MBeanブラウザを表示します。

    詳細は第2.4.2項「Fusion Middleware Control MBeanブラウザの表示」を参照してください。

  2. 「アプリケーション定義のMBean」、oracle.biee.admin、Domain: bifoundation_domainの順に開きます。

  3. ドメインを次のとおりにロックします。

    1. BIDomainを開き、group=ServiceのBIDomain MBeanを選択します。

    2. 「操作」タブを表示します。

    3. 「ロック」リンクをクリックします。

  4. BIDomain.BIInstance.ServerConfigurationを開き、BIDomain.BIInstance.ServerConfiguration MBeanを選択します。

  5. UsageTrackingCentrallyManaged属性がtrueに設定されていることを確認します。UsageTrackingCentrallyManagedがfalseに設定されている場合は、次のパラメータは、システムMBeanブラウザではなく、各Oracle BIサーバー・コンピュータ上のNQSConfig.INIファイルを使用して管理します。

    • SummaryAdvisorTableName

    • SummaryStatisticsLogging

    • UsageTrackingConnectionPool

    • UsageTrackingDirectInsert

    • UsageTrackingEnabled

    • UsageTrackingPhysicalTableName

  6. UsageTrackingEnabled属性をtrueに設定して使用状況トラッキングを有効にします。

  7. UsageTrackingDirectInsert属性をtrueに設定して直接挿入を有効にします。

  8. Oracle BIリポジトリの物理レイヤーに表示されているように、UsageTrackingPhysicalTableName属性を、問合せ統計情報を収集するための完全修飾データベース表の名前に設定します。例:

    "My_DB"."DEV_BIPLATFORM"."S_NQ_ACCT"

  9. Oracle BIリポジトリの物理レイヤーに表示されているように、UsageTrackingConnectionPool属性を、問合せ統計データベースの完全修飾接続プールの名前に設定します。例:

    "My_DB"."Usage Connection Pool"


    注意:

    使用状況トラッキングの挿入が行われるためには、バックエンド・データベースへの書込み権限を持つユーザーIDで接続プールを構成する必要があります。また、接続タイプが国際データをサポートすることもお薦めします。


  10. 変更を適用したら、次のとおりにドメインのロックを解除します。

    1. oracle.biee.admin、Domain:bifoundation_domain、BIDomainの下にあるgroup=ServiceのBIDomain MBeanに戻ります。

    2. 「操作」タブを表示します。

    3. コミット操作のいずれかをクリックします。

  11. Oracle Business Intelligenceの「概要」ページを開き、「再起動」をクリックします。

顧客のアップグレードについて、使用状況トラッキング・パラメータはデフォルトで集中管理されません。前述の手順で説明したように、UsageTrackingCentrallyManagedをtrueに設定し、システムMBeanブラウザを使用してパラメータを更新することも、NQSConfig.INIを使用して使用状況トラッキング・パラメータを管理することもできます。

これらのパラメータの集中管理が無効になっている場合に、NQSConfig.INIで使用状況トラッキングの直接挿入を有効にするには、次の手順を実行します。

  1. Oracle BIサーバー・コンピュータで、NQSConfig.INIファイルをテキスト・エディタで開きます。このファイルは次の場所にあります:

    ORACLE_INSTANCE/config/OracleBIServerComponent/coreapplication_obisn
    

    編集する前に、ファイルのバップアップ・コピーを作成します。

  2. [USAGE_TRACKING]セクションで、次のパラメータを更新します。

    • ENABLEYESに設定します。

    • DIRECT_INSERTYESに設定します。

    • Oracle BIリポジトリの物理レイヤーに表示されているように、PHYSICAL_TABLE_NAMEを、問合せ統計情報を収集するための完全修飾データベース表の名前に設定します。例:

      PHYSICAL_TABLE_NAME = "My_DB"."DEV_BIPLATFORM"."S_NQ_ACCT";
      
    • Oracle BIリポジトリの物理レイヤーに表示されているように、CONNECTION_POOLを、問合せ統計データベースの完全修飾接続プールの名前に設定します。例:

      CONNECTION_POOL = "My_DB"."Usage Connection Pool";
      

      注意:

      使用状況トラッキングの挿入が行われるためには、バックエンド・データベースへの書込み権限を持つユーザーIDで接続プールを構成する必要があります。また、接続タイプが国際データをサポートすることもお薦めします。


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

  4. Oracle BIサーバーを再起動します。

  5. 複数のOracle BIサーバー・インスタンスがある場合は、すべてのOracle BIサーバー・インスタンスについて、各NQSConfig.INIファイルでこれらの手順を繰り返します。

9.2.3 オプションの直接挿入パラメータの設定

前述の設定パラメータに加えて、次のオプションのパラメータもNQSConfig.INIファイルの使用状況トラッキング・セクションで更新できます。

  • BUFFER_SIZE。このパラメータは、挿入文のバッファリング用にBIサーバーが割り当てるメモリー量を示します。このようなバッファにより、BIサーバーは複数の挿入文を1つのトランザクションに含めて発行でき、使用状況トラッキング挿入のスループットが向上します。また、通常の分析では使用状況トラッキング挿入を待つ必要がないため、問合せの平均レスポンス時間も向上します。サーバー・コンピュータ上の使用可能なメモリーとメモリーの使用状況に応じて、この値を調整します。

  • BUFFER_TIME_LIMIT_SECONDS。このパラメータは、使用状況トラッキング・サブシステムが挿入文の発行を試行するまでの、挿入文がバッファ内に存続する最大時間を示します。この時間制限によって、静止状態が長く続いていても、BIサーバーは挿入文をすぐに発行できます。

  • NUM_INSERT_THREADS。このパラメータは、バッファから挿入文を削除し、それを使用状況トラッキング・データベースに挿入するスレッドの数を示します。読取りと挿入で接続プールがそれぞれ別の場合、挿入スレッド数は通常、接続プールの最大接続設定に等しくなります。

  • MAX_INSERTS_PER_TRANSACTION。このパラメータは、使用状況トラッキング・サブシステムが、1つのトランザクションの一部として発行を試みる挿入文の最大数を示します。この値が大きくなるほど、使用状況トラッキング挿入が長時間にわたって行われ、潜在的なスループットが増します。ただし、値が大きいと、デッドロックが原因でトランザクションが失敗する可能性も増します。BUFFER_TIME_LIMIT_SECONDSに小さい値を指定すると、トランザクション当たりの挿入数を制限できます。

使用状況トラッキングの構成パラメータの詳細は、付録A「NQSConfig.INIファイルの構成設定」を参照してください。

9.3 使用状況トラッキング・データの説明

表9-1は、S_NQ_ACCT使用状況トラッキング表内の各列の説明です。該当する場合は、データ型と長さも示されています。

表9-1で説明している時間に関連したいくつかの列には、加算または減算によってその正確な値を求められると推測できるものがあります。たとえば、END_TSからSTART_TSを引けば、TOTAL_TIME_SECを求められるように思われるかもしれません。次の理由により、これらの列を使用しても正確な値は求められません。

表9-1 S_NQ_ACCTの使用状況トラッキング・データ

説明

CACHE_IND_FLG

デフォルトはNです。

Yは問合せのキャッシュ・ヒットを示し、Nはキャッシュ・ミスを示します。

COMPILE_TIME_SEC

問合せのコンパイルにかかった時間(秒単位)です。この表で説明しているように、COMPILE_TIME_SECの秒数はTOTAL_TIME_SECに含まれます。

CUM_DB_TIME_SEC

BIサーバーが論理問合せのかわりにバックエンド物理データベースを待機した合計時間(秒単位)です。

CUM_NUM_DB_ROW

バックエンド・データベースから返された合計行数です。

END_DT

論理問合せが完了した日付です。

END_HOUR_MIN

論理問合せが完了した時間(時間と分)です。

END_TS

論理問合せが終了した日付と時間です。開始タイムスタンプと終了タイムスタンプも、リソースが使用可能になるまでの問合せの待機時間を表します。

注意: 問合せの終了前に、問合せを発行しているユーザーがページから移動すると、最終的なフェッチは行われず、3600というタイムアウト値が記録されます。しかし、タイムアウトの前にユーザーがページに戻ると、その時点でフェッチが完了し、これがend_ts時間として記録されます。

ERROR_TEXT

デフォルトはNullです。Varchar(250)

バックエンド・データベースからのエラー・メッセージです。この列は、SUCCESS_FLG(詳細は、この表の後述のエントリを参照)が0(ゼロ)以外の値に設定されている場合のみ適用されます。複数のメッセージは連結され、BIサーバーによって解析されません。

ID

一意の行IDです。

NODE_ID

<hostname>:<instance_name>:<component_name>を連結します。<instance_name>:<component_name>は、環境変数INSTANCE_NAMEおよびCOMPONENT_NAMEでオーバーライドできます。たとえば、examplehost:instance1:coreapplication_obis1となります。

INSTANCE_NAMEのデフォルト値はinstance1、COMPONENT_NAMEのデフォルト値はcoreapplication_obis1です。

NUM_CACHE_HITS

問合せに対してキャッシュ結果が返された回数を示します。NUM_CACHE_HITSは32ビットの整数(または10桁の整数)です。

デフォルトはNullです。

NUM_CACHE_INSERTED

問合せによってキャッシュ・エントリが生成された回数を示します。

デフォルトはNullです。NUM_CACHE_INSERTEDは32ビットの整数(または10桁の整数)です。

NUM_DB_QUERY

論理問合せリクエストを満たすためにバックエンド・データベースに対して発行された問合せの数です。成功した問合せ(SuccessFlag = 0)の場合、この値は1以上です。

PRESENTATION_NAME

デフォルトはNullです。Varchar(128)

Oracle BIプレゼンテーション・カタログの名前です。

QUERY_BLOB

論理SQL文全体が切り捨てられることなく含まれています。

QUERY_BLOB列は、長い文字列です。

QUERY_KEY

デフォルトはNullです。Varchar(128)です。

Oracle Business Intelligenceによって論理SQL文から生成されたMD5ハッシュ・キーです。

QUERY_SRC_CD

リクエストのソースです。

挿入可能な値の例は、次のとおりです。

分析またはエクスポート操作により、'Report'が挿入されます。

フィルタ・ダイアログで「値」ドロップダウンを使用するか、ダッシュボード・プロンプトを使用すると、'ValuePrompt'が挿入されます。

分析サーバー・キャッシュをシードするエージェントにより、'Seed'が挿入されます。

オンライン管理ツールの物理表または列行数、あるいはビュー・データにより、'NULL'が挿入されます。

QUERY_TEXT

Varchar(1024)です。

問合せで発行されたSQL文です。

この列の長さはALTER TABLEコマンドで変更できますが、この列に書き込まれるテキストは、物理レイヤーで定義されているサイズに常に切り捨てられます。リポジトリ管理者は、この列の長さを、バックエンド物理データベースでサポートされている最大問合せ長より大きな値に設定しないでください。

たとえば、Oracle Databaseでは最大4000のVarcharを使用できますが、4000文字ではなく4000バイトに切り捨てられます。このため、マルチバイト・キャラクタ・セットを使用している場合、使用しているキャラクタ・セットと文字に応じて、実際の最大文字列サイズの文字数が異なります。

REPOSITORY_NAME

問合せがアクセスするリポジトリの名前です。

ROW_COUNT

問合せクライアントに返される行数です。

注意: 大量のデータが問合せから返される場合、すべてのデータがユーザーに表示されるまで、この列には移入されません。

IMPERSONATOR_USER_NAME

デフォルトはNoneです。Varchar(128)です。

偽装ユーザーのユーザー名です。リクエストが偽装ユーザーとして実行されない場合、値は'None'です。

SAW_DASHBOARD

ダッシュボードのパス名です。問合せがダッシュボードを通じて発行されなかった場合、値はNULLです。

SAW_DASHBOARD_PG

デフォルトはNullです。Varchar(150)

ダッシュボード内のページ名です。リクエストがダッシュボード・リクエストでない場合、値はNULLです。

SAW_SRC_PATH

分析するOracle BIプレゼンテーション・カタログ内のパス名です。

START_DT

論理問合せが発行された日付です。

START_HOUR_MIN

論理問合せが発行された時間(時間と分)です。

START_TS

論理問合せが発行された日時です。

SUBJECT_AREA_NAME

アクセスされるビジネス・モデルの名前です。

SUCCESS_FLG

次のリストで定義される、問合せの完了ステータスです。

  • 0 - 問合せがエラーを発生せずに正常終了しました。

  • 1 - 問合せがタイムアウトしました。

  • 2 = 行制限を越えたために問合せが失敗しました。

  • 3 = その他の理由で問合せが失敗しました。

TOTAL_TIME_SEC

クライアントが分析へのレスポンスを待機している間に、BIサーバーが問合せの処理に要した時間(秒単位)です。TOTAL_TIME_SECには、COMPILE_TIME_SECの時間が含まれます。

この設定は、第8.4.1.1項「問合せのロギング・レベルの設定」で説明されている、nqquery.logファイル内のレスポンス時間と同じです。

USER_NAME

問合せを発行したユーザーの名前です。


表9-2は、S_NQ_DB_ACCT表の説明です。これは、S_NQ_ACCTに格納されている論理問合せに対応する物理SQL情報を提供することで、使用状況トラッキング表を補足しています。S_NQ_DB_ACCTには、S_NQ_ACCTへの逆方向の外部キー・リレーションシップがあります。

表9-2 S_NQ_DB_ACCTの使用状況トラッキング・データ

説明

END_DT

物理問合せが完了した日付です。

END_HOUR_MIN

物理問合せが完了した時間(時間と分)です。

END_TS

物理問合せが終了した日付と時間です。開始タイムスタンプと終了タイムスタンプも、リソースが使用可能になるまでの問合せの待機時間を表します。

ID

一意の行IDです。

LOGICAL_QUERY_ID

Varchar2(50)です。

S_NQ_ACCT表の論理問合せを参照します。

QUERY_BLOB

物理SQL文全体が切り捨てられることなく含まれています。

QUERY_BLOB列は、長い文字列です。

QUERY_TEXT

Varchar(1024)です。

問合せで発行されたSQL文です。

ROW_COUNT

問合せクライアントに返される行数です。

TIME_SEC

物理問合せの実行時間です。

START_DT

物理問合せが発行された日付です。

START_HOUR_MIN

物理問合せが発行された時間(時間と分)です。

START_TS

物理問合せが発行された日時です。