問合せログの収集および分析
問合せログには強力な診断情報が含まれており、管理者は問合せのパフォーマンス、エラー・シナリオおよび誤った結果に関連する問題を分析およびトラブルシューティングできます。 Oracle Analyticsで問合せログを有効にすると、解析、最適化、実行計画、物理問合せ、サマリー統計などに関する情報が問合せログに書き込まれます。
問合せログへのアクセス
ノート:
ワークブック作成者は、ワークブックのビジュアライゼーション・コンポーネントの問合せ時間、サーバー時間、ストリーミング時間などの問合せ情報にアクセスすることもできます。 このトピックの最後にある「ワークブックの問合せログへのアクセス」を参照してください。問合せログ・レベル
-
ログ・レベルによって、生成されるログの詳細および量が決まります。
- ログ・レベルは、システム、セッションまたはレポート・レベルで設定できます。
-
セマンティック・モデル(RPD)のグローバル・ログ・レベルは、「システム・ロギング・レベル」プロパティ(「ツール」、「オプション」、「リポジトリ」の下)を使用して定義するか、セッション変数を使用できます。
-
レポートのログ・レベルをオーバーライドするには、レポートの「上級」タブにある「プレフィクス」プロパティに
LOGLEVEL
変数を追加します。 -
キャッシュ・ヒットを回避して完全なログを取得するには、変数
DISABLE_CACHE_HIT=1
をLOGLEVEL
とともに含めることができます。 -
ログ・レベル(
LOGLEVEL
)値の範囲は0-7です。LOGLEVEL=0
は、ロギングが無効であることを意味します。-
LOGLEVEL=7
は、主にOracle開発チームによって使用される最も高いロギング・レベルです。 LOGLEVEL=2
は、パフォーマンス・チューニングおよび基本的な理解に適しています。- 行レベルのデータ・セキュリティ・フィルタをトラブルシューティングするには、
LOGLEVEL=3
が必要です。
-
ログ・レベルに応じて、問合せログには、論理リクエスト、ナビゲーションおよび実行計画、生成された物理問合せ、実行時間、異なる実行ノードで取得された行とバイト、キャッシュ関連情報などの問合せに関する情報が含まれます。
管理者は、適切なLOGLEVEL
および変数設定を使用して問合せを実行することで、コンソールの「SQLの発行」ページから問合せログを抽出できます。

図ceal_query_log3.jpgの説明
問合せログの読取り
「セッションおよび問合せログ」ページには、現在アクティブなすべての問合せおよびセッションがリストされます。 管理者は、コンソールからこのページにアクセスできます。

図ceal_query_log4.jpgの説明
ページ上の各エントリは、特定の問合せの問合せログにレベル・セット(つまり、セマンティック・モデル、セッションまたはレポート・レベル)でアクセスできます。
各リクエストには、Oracle Analyticsで一意のrequestid
があります。
論理SQL問合せ
Oracle Analyticsの論理SQL問合せの例を次に示します。

図ceal_query_log6.jpgの説明
論理SQLリクエストで表示される一般的な変数を次に示します:
QUERY_SRC_CD
: 問合せの起点: プロンプト、レポート、DV、SQLの発行など。SAW_SRC_PATH
: 問合せが保存されている場合は、カタログ内の問合せへのパスを指定します。SAW_DASHBOARD
: 問合せがダッシュボードに含まれている場合、カタログ内のダッシュボードへのパス。SAW_DASHBOARD_PG
: ダッシュボード・ページの名前。
論理リクエスト
論理リクエストは、セキュリティ・フィルタ(ある場合)を追加した後のプレゼンテーション・レイヤーからビジネス・モデルおよびマッピング・レイヤーへの問合せの変換です。

図ceal_query_log7.jpgの説明
Oracle Analyticsは、論理リクエストに基づいて、問合せが既存のキャッシュにヒットするか、データベースから取得する必要があるかを判断します。

図ceal_query_log8.jpgの説明
実行計画
実行計画は、実際の論理リクエストを、実行のための最適化された計画に変換することです。 これには、各操作の出荷計画、およびデータベースで実行されるか、Oracle Analyticsで実行されるかが含まれます。 Oracle Analyticsで操作が処理されると、問合せログに[for database 0:0,0]
が示されます。

図ceal_query_log9.jpgの説明
問合せの実行中、Oracle Analyticsはこのツリーをたどります。 詳細ログでは、処理された行に関する情報は、実行ツリーのすべてのノードで使用できます。

図ceal_query_log10.jpgの説明
物理またはデータベース・リクエスト
実行計画に基づいて、Oracle Analyticsは、指定されたデータベースで実行される物理SQLを生成します。 1つ以上のデータベースに1つ以上のリクエストを送信できます。

図ceal_query_log11.jpgの説明
データベースに送信される物理リクエストごとに、取得される行数とバイト数のログがあります。

図ceal_query_log12.jpgの説明
複数の問合せがある場合は、問合せID(この例では1914627
)を使用して、セクションSending query to the database
に記録された問合せと正確に一致させることができます。 これにより、複数のデータベース・リクエストがある場合に取得された行に問合せをマップできます。
1つのレポートでは、レポート構造およびセマンティック・モデル定義に応じて、複数の問合せを1つ以上のデータベースに送信できます。 たとえば、この問合せログでは、3つの物理問合せがデータベースに送信されました。

図ceal_query_log13.jpgの説明
ログには、実行計画のすべてのノードについて、同様の処理済行情報が表示されます。 最後に、クライアントに送信された行がログに記録されます。

図ceal_query_log14.jpgの説明
ログには、完全な実行時間を含む統計の最終サマリーも含まれます。 ここで時間を関連付けて、パフォーマンスの問題を分析および調査できます。

図ceal_query_log15.jpgの説明
サマリーの統計
- 「経過時間」 - 論理問合せが受信されてからクライアントがカーソルをクローズするまでの合計経過時間。 Oracle Analyticsと同様に、クライアントが結果をスクロールすることを許可した場合、ユーザーが別のページに移動するかログアウトするまで、カーソルは長時間開いたままになることがあります。
- 「コンパイル時間」 - Oracle Analyticsが論理SQL問合せから実行計画および物理問合せを生成するために使用する時間。
- 「BIサーバーの合計時間」 - クライアントがレスポンスを待機している合計時間。 これには、物理問合せの実行時間、フェッチ中の待機時間、およびOracle Analyticsで内部実行に費やされた時間が含まれます。
- 「実行時間」- 論理問合せの実行が完了するまでの、Oracle Analyticsによる論理問合せの受信時間。 これには、クライアントが結果をフェッチしているときに論理問合せの実行が完了した後に費やされた時間は含まれません。
- 「レスポンス時間」 - 論理問合せがOracle Analyticsによって受信されてから、最初の行がクライアントに戻されるまでの時間。
問合せログに関する考慮事項
-
Single-threaded activity. 悪い状況では、2を超えるログ・レベルのパフォーマンス・ボトルネックが発生する可能性があります。
-
表示および計算される時刻は、エントリがログに書き込まれる時点のもので、これはほとんどの場合、イベント(つまり、ログ・エントリを開始したアクティビティ)が発生した時刻です。 ロギングに影響する他のボトルネックがないかぎりです。
-
問合せロギングは診断であり、使用状況情報の収集を目的としていません。 使用状況トラッキングについて学習するには、「トラック使用状況」を参照してください。
ワークブックの問合せログへのアクセス
管理者のみが、コンソールの「セッションおよび問合せログ」ページからログにアクセスできます。 ただし、コンテンツ作成者は、「開発者」メニューからワークブック内のビジュアライゼーション問合せのログ情報にアクセスできます。これは、問合せのパフォーマンスをトラブルシューティングする作成者にとって便利なツールです。 ワークブックのパフォーマンス・ツール(「開発者」メニュー・オプション)にアクセスするには、ユーザーは、「マイ・プロファイル」の下の「上級」メニューにある「開発者オプションを有効化」をオンにする必要があります。

図ceal_query_log16.jpgの説明
有効にすると、ワークブック・メニューに「開発者」メニュー・オプションが表示されます。

図ceal_query_log17.jpgの説明
「開発者」オプションを使用すると、ユーザーはキャンバス上のビジュアライゼーションについて、様々なログをすぐに表示および分析できます。 キャンバスの下に、情報のタイプごとに異なるタブがある個別のフレームが表示されます。 デフォルトでは、ビジュアライゼーションの実行時にログが移入またはリフレッシュされません。

図ceal_query_log18.jpgの説明
分析するビジュアライゼーションを選択し、「リフレッシュ」をクリックしてログを生成します。 リフレッシュすると、ビジュアライゼーションに関連する様々な情報が表示され、特定のビジュアライゼーションのログ情報を分析できます。 複数のビジュアライゼーションを分析するには、それらを個別にリフレッシュし、それらを1つずつ分析する必要があります。

図ceal_query_log19.jpgの説明
ノート:
「開発者」メニューはワークブックでのみ使用できます。 クラシック分析およびダッシュボードの場合は、「セッションおよび問合せログ」ページから問合せログにアクセスします。