アクティブ・セッション履歴の概要

データベース・アクティビティの詳細な履歴を取得するには、Oracle Databaseでは、アクティブ・セッション履歴(ASH)の検査員によってアクティブ・セッションが毎秒サンプリングされます。AWRのスナップショットの処理によってサンプリングされたデータがメモリーに収集され、永続記憶域に書き込まれます。ASHはOracle Databaseの自己管理フレームワークに不可欠であり、パフォーマンスの問題の診断に非常に役立ちます。

ASHでは、インスタンス・レベルではなくセッション・レベルでサンプル・データが収集されます。アクティブ・セッションのみに対する統計を取得すると、ASHでは管理しやすいデータのセットが収集されます。このデータのサイズは、データベース・インスタンス全体のサイズではなく実行されている作業に直接関連するサイズです。

ASHによって取得されたサンプル・データは、データのディメンションに基づいて集計できます。次のものが含まれます。

  • SQL文のSQL識別子

  • オブジェクト数、ファイル数およびブロック数

  • 待機イベント識別子およびパラメータ

  • セッション識別子およびセッション・シリアル番号

  • モジュールおよびアクション名

  • セッションのクライアント識別子

  • サービス・ハッシュ識別子

ASHレポートを実行して、特定の期間にのみ発生するデータベースの一時的なパフォーマンスの問題を分析できます。この手法は次のいずれかを試す場合に特に有効です。

  • 特定のジョブまたはセッションが応答しないがインスタンスの他の部分は通常どおりに動作している場合など、発生期間が短い一時的なパフォーマンスの問題を解決する

  • 時間、セッション、モジュール、アクション、SQL識別子など、様々なディメンションおよびその組合せで指定範囲または特定のターゲットのパフォーマンス分析を実行する