ヘッダーをスキップ

Oracle Database 2日でパフォーマンス・チューニング・ガイド
11g リリース1(11.1)

E05744-02
目次
目次
索引
索引

戻る 次へ

4 リアルタイムなデータベースのパフォーマンスの監視

Oracle Enterprise Manager(Enterprise Manager)の「パフォーマンス」ページには、リアルタイムでデータベースの全体のパフォーマンスを評価するために使用できる3つのセクションの情報が表示されます。

図4-1    「パフォーマンス」ページ


画像の説明

一般的に、自動データベース診断モニター(ADDM)の自動診断機能を使用して、第3章「データベースのパフォーマンスの自動監視」で説明しているように、データベースでパフォーマンスの問題を識別します。ただし場合によっては、リアルタイムでデータベースのパフォーマンスを監視して、パフォーマンスの問題が発生したときそれらを識別します。たとえば、ADDMはデフォルトで1時間ごとの自動ワークロード・リポジトリ(AWR)・スナップショットの後、分析を実行します。ただし、「パフォーマンス」ページのデータベース・アクティビティで突然のスパイクに気づいた場合、次のADDM分析の前にインシデントを調査する必要があります。

「パフォーマンス」ページから適切なページにドリルダウンして、リアルタイムのデータベースのパフォーマンスの問題を識別できます。パフォーマンスの問題を検出した場合、ADDMの手動実行を選択して、次のADDM分析まで待たずに、すぐにその問題を分析できます。ADDMを手動で実行し、リアルタイムでパフォーマンスの分析をする方法は、「現在のデータベースのパフォーマンスを分析するADDMの手動実行」を参照してください。

内容は次のとおりです。

ユーザー・アクティビティの監視

「パフォーマンス」ページの「平均アクティブ・セッション」グラフには、ユーザーがどのくらいのCPUを消費しているのかというような、データベース内で考えられる問題が表示されます。待機クラスでは、ディスクI/Oなどのリソースに対する待機によって、どのくらいのデータベース・アクティビティが消費されているのかが表示されます。

図4-2    ユーザー・アクティビティの監視


画像の説明

第2章「Oracle Databaseのパフォーマンス・メソッド」で説明されているパフォーマンス・メソッドに従って、グラフからドリルダウンしてパフォーマンスの問題に関連するインスタンスの原因を識別し、解決できます。

ユーザー・アクティビティの監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. 「平均アクティブ・セッション」グラフでスパイクを確認します。

    「使用中のCPU」の値が「最大CPU」の線(点線で表示)に到達している場合は、そのホスト・システムでは、データベース・インスタンスがCPU時間の100%で実行されています。

    グラフのすべての他の値は、待機しているユーザー、および凡例の待機クラスで分類されるリソースの競合を示します。アクティブ・セッションの大きなブロックを使用する値は、凡例で関連する色で示されている特定の待機クラスが原因のボトルネックを示します。

    図4-2に示すグラフでは、アクティビティの最大ブロックが緑で表示され、凡例に示すとおり、「使用中のCPU」待機クラスに対応しています。

  3. 各待機クラスを識別するには、クラスに対応する「平均アクティブ・セッション」グラフのブロックにカーソルを移動します。

    対応する待機クラスは、グラフの凡例で強調表示されます。

  4. グラフで最大のカラー・ブロックまたは凡例で対応する待機クラスをクリックして、最大のアクティブ・セッションを含む待機クラスにドリルダウンします。

    「使用中のCPU」をクリックした場合、その待機クラスに対する実行中のアクティブ・セッション・ページが表示されます。「ユーザーI/O」などの、異なった待機クラスをクリックした場合、実行中のアクティブ・セッション・ページが表示されます。

    図4-3    実行中のアクティブ・セッション・ページ


    画像の説明

    実行中のアクティブ・セッション・ページには、1時間の時間軸が表示されます。各待機クラスの詳細は、「選択した5分間隔の詳細」の下に5分間隔で表示されます。

    異なったディメンションで待機クラスの詳細を確認できます。次のいずれかの項を続行します。

  5. 選択した間隔で時間を変更するには、グラフの下のスライダを異なった間隔に移動します。

    「選択した5分間隔の詳細」セクションに含まれる情報は、選択した時間間隔を表示するよう自動的に更新されます。

    図4-3の例では、「使用中のCPU」待機クラスで5:03〜5:08の5分間隔が選択されています。

  6. パフォーマンスの問題を検出した場合、リアルタイムでその問題を解決できます。「パフォーマンス」ページで次のいずれかを実行します。

上位SQLの監視

実行中のアクティブ・セッション・ページでは、「実行中の上位SQL」表に、CPUリソースを消費して積極的に実行しているSQL文のデータベース・アクティビティが表示されます。「アクティビティ(%)」列には、各SQL文が消費するアクティビティの割合が表示されます。1つまたは複数のSQL文がアクティビティの大部分を使用している場合、該当するSQL文を調査する必要があります。

図4-4    上位SQLの監視


画像の説明

図4-4の例では、SELECT文がデータベース・アクティビティの90%以上を使用しているため、この文の調査が必要です。

実行中の上位SQL文の監視手順:
  1. 「パフォーマンス」ページの「アクティブ・セッション」グラフで、グラフにある「CPU」ブロックまたは凡例に対応する待機クラスをクリックします。

    実行中のアクティブ・セッション・ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、「実行中の上位SQL」表で最もアクティブなSQL文の「SQL ID」リンクをクリックします。

    「SQLの詳細」ページが表示されます。

    待機時間の大部分を使用しているSQL文に、「SQLチューニング・アドバイザ」を使用するか、SQLチューニング・セットを作成して、問題のSQL文をチューニングします。

    参照:

     

上位セッションの監視

実行中のアクティブ・セッション・ページで、「実行中の上位セッション」表が、選択した時間間隔中に対応した待機クラスを待機している上位セッションを表示します。セッションではユーザー・プロセスを介してデータベースに接続している特定のユーザーを示します。

図4-5    上位セッションの監視


画像の説明

セッションは、ユーザーがデータベースに接続してから切断するまでまたはデータベース・アプリケーションを終了するまで続きます。たとえば、SQL*Plusを開始したとき、ユーザーはセッションを確立するために有効なデータベースのユーザー名およびパスワードを提供する必要があります。単一セッションが待機時間の大部分を使用する場合、そのセッションを調べる必要があります。

実行中の上位セッションの監視手順:
  1. 「パフォーマンス」ページの「平均アクティブ・セッション」グラフで、グラフにある「使用中のCPU」ブロックまたは凡例に対応する待機クラスをクリックします。

    実行中のアクティブ・セッション・ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、最大のデータベース・アクティビティを消費しているセッションの「セッションID」リンクをクリックします。

    「セッションの詳細」ページが表示されます。

    このページには、セッション・アクティビティ、セッション統計、オープン・カーソル、ブロックしているセッション、待機イベントおよび選択したセッションのパラレルSQLなどの情報が含まれています。

    図4-5の例では、ユーザーSHのSQL*Plusセッションがデータベース・アクティビティの96%以上を使用しているため、このセッションの調査が必要です。

    図4-6    セッションの詳細の表示


    画像の説明

    この例では、セッションが100%のデータベース・アクティビティを消費しているため、「セッションの中断」をクリックしてセッションを終了し、このセッションが実行しているSQL文のチューニングを行います。

    参照:

     

上位サービスの監視

「上位サービス」表は、選択した時間間隔中に対応した待機イベントを待機している上位サービスを表示します。

「サービス」は共通の属性のアプリケーション・グループ、サービス・レベルのしきい値および優先度を示します。たとえば、SYS$USERSサービスは、ユーザー・セッションを明示的に識別するサービス名なしに確立したとき使用する、デフォルトのサービス名です。SYS$BACKGROUNDサービスは、すべてのOracle Databaseのバックグラウンド・プロセスで構成されています。単一のサービスが待機時間の大部分を使用している場合、そのサービスを調べる必要があります。

サービスの監視手順:
  1. 「パフォーマンス」ページの、「平均アクティブ・セッション」グラフで、グラフにあるブロックまたは凡例に対応する待機クラスをクリックします。

    実行中のアクティブ・セッション・ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、「ビュー」リストから「上位サービス」を選択します。

    「上位サービス」表が表示されます。

    図4-7    上位サービスの監視


    画像の説明

    図4-7の例では、SYS$USERSサービスがデータベース・アクティビティの97.32%を使用しています。このサービスは、図4-5に示されるユーザーSHのSQL*Plusセッションに対応しています。

  3. 最もアクティブなサービスの「サービス」リンクをクリックします。

    「サービス」ページが表示されます。

    このページには、選択したサービスのモジュール、アクティビティおよび統計に関する情報が含まれます。

上位モジュールの監視

「上位モジュール」表は、選択した時間間隔中に対応した待機イベントを待機している上位モジュールを表示します。

「モジュール」は、ワークロードの定義の一部としてサービス名を設定するアプリケーションを示します。たとえば、DBMS_SCHEDULERモジュールはSYS$BACKGROUNDで実行するジョブを割り当てます。単一のモジュールを待機時間の大部分で使用する場合、そのモジュールを調べる必要があります。

モジュールの監視手順:
  1. 「パフォーマンス」ページの、「平均アクティブ・セッション」グラフで、グラフにあるブロックまたは凡例に対応する待機クラスをクリックします。

    実行中のアクティブ・セッション・ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、「ビュー」リストから「上位モジュール」を選択します。

    「上位モジュール」表が表示されます。

    図4-8    上位モジュールの監視


    画像の説明

  3. アクティビティの割合が最も高いモジュールの「モジュール」リンクをクリックします。

    「モジュール」ページが表示されます。

    このページには、選択したモジュールのアクション、アクティビティおよび統計が含まれています。

    図4-8の例では、SQL*Plusモジュールがデータベース・アクティビティの95%以上を使用しているため、このモジュールの調査が必要です。図4-5に示すように、データベース・アクティビティの大半は、ユーザーSHのSQL*Plusセッションによって使用されています。

上位アクションの監視

「上位アクション」表は、選択した時間間隔中に対応した待機イベントを待機している上位アクションを表示します。

「アクション」は、モジュールで実行されたジョブを示します。たとえば、DBMS_SCHEDULERモジュールはGATHER_STATS_JOBアクションを実行して、すべてのデータベース・オブジェクトで統計を採取します。単一のアクションが待機時間の大部分を使用している場合、そのアクションを調べる必要があります。

アクションの監視手順:
  1. 「パフォーマンス」ページの、「平均アクティブ・セッション」グラフで、グラフにあるブロックまたは凡例に対応する待機クラスをクリックします。

    実行中のアクティブ・セッション・ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、「ビュー」リストから「上位アクション」を選択します。

    「上位アクション」表が表示されます。

    図4-9    上位アクションの監視


    画像の説明

  3. 最もアクティブなアクションの「アクション」リンクをクリックします。

    「アクション」ページが表示されます。

    このページには、選択したアクションの統計が含まれています。

    図4-9の例では、SQL*PlusモジュールとSALES_INFOアクションに関連するアクションがデータベース・アクティビティの96%を使用しています。この情報は、ユーザーSHのSQL*Plusセッションがデータベース・アクティビティの96%以上を使用していることを示す図4-5と一致します。

上位クライアントの監視

「上位クライアント」表は、選択した時間間隔中に対応した待機イベントを待機している上位クライアントを表示します。クライアントは、データベースで実行される操作のリクエストを開始するWebブラウザまたはエンド・ユーザー・プロセスです。単一のクライアントが待機時間の大部分を使用している場合、そのクライアントを調べる必要があります。

クライアントの監視手順:
  1. 「パフォーマンス」ページの、「平均アクティブ・セッション」グラフで、グラフにあるブロックまたは凡例に対応する待機クラスをクリックします。

    実行中のアクティブ・セッション・ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、「ビュー」リストから「上位クライアント」を選択します。

    「上位クライアント」表が表示されます。

    図4-10    上位クライアントの監視


    画像の説明

  3. 最もアクティブなクライアントの「クライアントID」リンクをクリックします。

    「クライアント」ページが表示されます。

    このページには、選択したユーザー・プロセスの統計が含まれています。

上位PL/SQLの監視

「上位PL/SQL」表は、選択した時間間隔中に対応した待機イベントを待機している上位PL/SQLサブプログラムを表示します。単一のPL/SQLサブプログラムが待機時間の大部分を使用する場合、そのPL/SQLサブプログラムを調べる必要があります。

PL/SQLサブプログラムの監視手順:
  1. 「パフォーマンス」ページの、「平均アクティブ・セッション」グラフで、グラフにあるブロックまたは凡例に対応する待機クラスをクリックします。

    実行中のアクティブ・セッション・ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、「ビュー」リストから「上位PL/SQL」を選択します。

    「上位PL/SQL」表が表示されます。

    図4-11    上位PL/SQLの監視


    画像の説明

  3. 最もアクティブなサブプログラムの「PL/SQLサブプログラム」リンクをクリックします。

    「PL/SQLサブプログラム」ページが表示されます。

    このページには、選択したサブプログラムの統計が表示されます。

    図4-11では、SYSMAN.MGMT_JOB_EXEC_UPDATEサブプログラムがデータベース・アクティビティの100%を使用しています。

上位ファイルの監視

「上位ファイル」表は、選択した時間間隔中に指定したファイルの平均待機時間を表示します。このデータは「待機中アクティブ・セッション: ユーザーI/O」から使用できます。

ファイルの監視手順:
  1. 「パフォーマンス」ページの、「平均アクティブ・セッション」グラフで、グラフにある「ユーザーI/O」ブロックまたは凡例に対応した待機クラスをクリックします。

    「待機中アクティブ・セッション: ユーザーI/O」ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、「ビュー」リストから「上位ファイル」を選択します。

    「上位ファイル」表が表示されます。

    図4-12    上位ファイルの監視


    画像の説明

  3. 最大平均待機時間を含むファイルの「表領域」リンクをクリックします。

    「表領域の表示」ページが表示されます。

    図4-12の例では、待機時間はすべてSYSTEM表領域内のファイルのI/Oに関連付けられます。

上位オブジェクトの監視

「上位オブジェクト」表は、選択した時間間隔中に対応した待機イベントを待機している上位データベース・オブジェクトを表示します。このデータは「待機中アクティブ・セッション: ユーザーI/O」から使用できます。

オブジェクトの監視手順:
  1. 「パフォーマンス」ページの、「平均アクティブ・セッション」グラフで、グラフにある「ユーザーI/O」ブロックまたは凡例に対応した待機クラスをクリックします。

    「待機中アクティブ・セッション: ユーザーI/O」ページが表示されます。

  2. 「選択した5分間隔の詳細」の下で、「ビュー」リストから「上位オブジェクト」を選択します。

    「上位オブジェクト」表が表示されます。

    図4-13    上位オブジェクトの監視


    画像の説明

  3. 最大平均待機時間を含むオブジェクトの「オブジェクト名」リンクをクリックします。

    オブジェクトの「表示」ページが表示されます。

    図4-13の例は、すべての待機がSYS.I_SYSAUTH1索引に対するものであることを示しています。図4-4および図4-5の情報から、ユーザーSHが実行したSELECT文によってパフォーマンスの問題が発生しており、このユーザーはSYS.I_SYSAUTH1索引へのアクセスを待機していることがわかります。

インスタンス・アクティビティの監視

「パフォーマンス」ページの「平均アクティブ・セッション」セクションで、「スループット」、「I/O」、「パラレル実行」および「サービス」グラフを使用して、データベース・インスタンス・アクティビティを監視できます。「「データベース・パフォーマンス」ページのカスタマイズ」で説明しているように、「パフォーマンス」ページをカスタマイズして、デフォルトで最も有効なグラフを表示できます。

図4-14    インスタンス・アクティビティの監視


画像の説明

インスタンス・アクティビティ・グラフを使用して、次のタスクを実行できます。

スループットの監視

「スループット」グラフは「平均アクティブ・セッション」グラフで使用する競合を表示します。グラフでは、ユーザーに対してデータベースがどのくらいの作業を実行しているのかを示します。「パフォーマンス」ページの「スループット」グラフは次の項目を表示します。

「スループット」グラフのピークを「平均アクティブ・セッション」グラフのピークと比較します。「平均アクティブ・セッション」グラフに待機中のセッションが多数表示され、内部的な競合が示されている場合でも、スループットが高ければ、状況は許容できる可能性があります。内部的な競合が低く、スループットが高い場合も、データベースはおそらく効率よく実行されています。一方、内部的な競合が高くスループットが低い場合は、データベースのチューニングを検討してください。

スループットの監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. インスタンス・アクティビティ・グラフで、「スループット」をクリックします。

    「スループット」グラフは、デフォルト値を「1秒当たり」に設定した「インスタンス・スループット率」で表示されます。「1トランザクション当たり」を選択して、1トランザクション当たりのスループット率を表示できます。

    図4-15に示す例では、1秒当たりのトランザクション数と物理読取りでは、午前10:45ごろにスパイクが発生しています。1秒当たりのトランザクション数は、25分間にわたって1000〜2000の状態が続いています。物理読取りは、1秒当たり500〜1000KBの状態が続いています。

  3. アクティビティの各タイプの上位コンシューマを表示するには、凡例に対応したリンクをクリックします。

    「上位コンシューマ」ページが表示されます。このページには、選択したアクティビティの上位セッションが表示されます。


    画像の説明

    この例では、オペレーティング・システム・ユーザーlashdownによって作成されたSQL*Plusセッションによって、データベース・スループットが増加しています。

  4. セッションを選択して、「ビュー」をクリックして詳細を取得します。

    情報を分析した後、「セッションの中断」をクリックして終了するか、「パフォーマンス」ページに戻ります。

I/Oの監視

「I/O」グラフは、すべてのデータベース・クライアントから収集したI/O統計を表示します。データベース・プロセスのI/O待機時間は、保留中のI/Oが完了した場合、プロセスが有効な動作を実行する時間を示します。Oracle Databaseは、均一な状態ですべての重要なI/OコンポーネントのI/O待機時間を取得して、OracleプロセスでのすべてのI/O待機時間がI/O統計から推論できるようにします。

図4-16    I/Oの監視


画像の説明

「同期単一ブロック読取りの待機時間」グラフは、ブロック読取りのI/O待機時間の合計を表示します。この時間は、I/Oが発行された時間からデータベースによって処理されるまでの時間です。待機時間が10ミリ秒以下の場合、ほとんどのシステムは正常に実行します。このタイプのI/Oリクエストは、次の理由によりI/Oパフォーマンスの最適なインジケータとなります。

次の項の説明に従って、「I/Oブレークダウン」の選択に応じて、他のグラフが表示されます。

関数によるI/Oの監視

「I/Oファンクション」グラフにより、アプリケーションまたはジョブごとのI/O使用レベルが決定されます。コンポーネント・レベルの統計により、I/Oバンド幅使用状況の詳細が表示され、ジョブのスケジューリングおよびI/Oのプロビジョニングに使用できます。コンポーネント・レベルの統計は次のカテゴリに分類されます。

関数によるI/Oの監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. インスタンス・アクティビティ・グラフで、「I/O」をクリックします。

    I/O MB/秒のグラフおよび「1秒当たりのI/Oリクエスト」グラフが表示されます。

  3. 「I/Oブレークダウン」で、「I/Oファンクション」を選択します。

    「ファンクションごとのI/O MB/秒」グラフと「ファンクションごとのI/Oリクエスト数/秒」グラフが表示されます。

    図4-16の例は、ログ・ライターによって大量のI/Oが実行されていることを示しています。ログ・ライターのアクティビティのピークは、約550 I/Oリクエスト/秒です。

  4. グラフ上で最大のカラー・ブロックをクリックするか、または凡例内の対応するファンクションをクリックして、I/Oレートが最も高いファンクションにドリルダウンします。

    「I/O詳細」ページが表示されます。

    I/OのMBまたはI/Oリクエストの詳細に関する、リアルタイム・データまたは履歴データを参照できます。

    参照:

    • ARCH、LGWR、DBWRなどのデータベース・バックグラウンド・プロセスの詳細は、『Oracle Database概要』を参照してください。

     

タイプ別のI/Oの監視

「I/Oタイプ」グラフにより、読取りおよび書込み操作のタイプ別にI/Oを監視できます。小規模I/Oとは128KBより小さいリクエストで、通常、単一のデータベース・ブロックのI/O操作です。大規模I/Oとは、128KB以上のリクエストです。大規模の読取りは、表または索引のスキャン、ダイレクト・データ・ロード、バックアップ、リストアおよびアーカイブなどのデータベース操作によって生成されます。


画像の説明

トランザクションの時間を軽減するために最適化する場合は、I/Oリクエストが完了される率を監視します。I/O待機時間が短いと、単一ブロックのパフォーマンスは最適になります。待機時間が長いということは、通常、ストレージ・システムがボトルネックであることを示します。I/Oワークロードが大きくなると、パフォーマンスは低下します。

データ・ウェアハウス内にあるような大規模な問合せを最適化する場合、パフォーマンスはI/Oリクエストの待機時間ではなく、ストレージ・システムが実現できる最大のスループットに依存します。この場合、同期単一ブロック読取りの待機時間ではなくI/O MB/秒が監視されます。

タイプ別のI/Oの監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. インスタンス・アクティビティ・グラフで、「I/O」をクリックします。

    I/O MB/秒のグラフおよび「1秒当たりのI/Oリクエスト」グラフが表示されます。

  3. 「I/Oブレークダウン」で、「I/Oタイプ」を選択します。

    「I/OタイプごとのI/O MB/秒」グラフと「I/OタイプごとのI/Oリクエスト数/秒」グラフが表示されます。

    この例では、1秒当たりの小規模の書込み数が550に増えています。これらの書込みは、図4-16に示されるログ・ライターのI/Oリクエストに対応しています。

  4. グラフ上で最大のカラー・ブロックをクリックするか、または凡例内の対応するファンクションをクリックして、I/Oレートが最も高いファンクションにドリルダウンします。

    「I/O詳細」ページが表示されます。

    I/OのMBまたはI/Oリクエストの詳細に関する、リアルタイム・データまたは履歴データを参照できます。

コンシューマ・グループ別のI/Oの監視

Oracle Database Resource Managerが使用可能である場合は、データベースにより、現在有効なリソース・プランに含まれるコンシューマ・グループ全体のI/O統計が収集されます。「コンシューマ・グループ」グラフを使用すると、I/Oをコンシューマ・グループ別に監視できます。

リソース・プランでは、リソースを様々なユーザー(リソース・コンシューマ・グループ)間で分散する方法を指定します。リソース・コンシューマ・グループを使用して、ユーザー・セッションをリソース要件ごとにグループ化できます。_ORACLE_BACKGROUND_GROUP_コンシューマ・グループには、バックグラウンド・プロセスにより発行されたI/Oリクエストが含まれることに注意してください。


画像の説明

コンシューマ・グループ別のI/Oリクエストの監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. インスタンス・アクティビティ・グラフで、「I/O」をクリックします。

    I/O MB/秒のグラフおよび「1秒当たりのI/Oリクエスト」グラフが表示されます。

  3. 「I/Oブレークダウン」で、「コンシューマ・グループ」を選択します。

    「コンシューマ・グループごとのI/O MB/秒」グラフおよび「コンシューマ・グループごとのI/Oリクエスト数/秒」グラフが表示されます。

パラレル実行の監視

「パラレル実行」グラフには、パラレル問合せに関連するシステム・メトリックが表示されます。パラレル問合せでは、SQL文を実行する作業が複数のプロセスに分割されます。グラフには、サンプル・セッション・アクティビティの最も高い割合を占める待機イベントを待機していたパラレル問合せが表示されます。

図4-17    パラレル実行の監視


画像の説明

パラレル実行の監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. インスタンス・アクティビティ・グラフで、「パラレル実行」をクリックします。

    「パラレル実行」グラフが表示されます。

    2つのペアのグラフが表示されます。最初のペアはY軸上のセッションの数を示し、2番目のペアはY軸上の秒単位の率を示します。

    図4-17の例では、問合せのパラレル化が午前11時30分から午後12時20分までアクティブでした。

サービスの監視

「サービス」グラフには、表示中の期間における、対応する待機イベントについて待機しているサービスが表示されます。サービスとは、共通の属性、サービス・レベルのしきい値および優先度のあるアプリケーション・グループを表します。たとえば、SYS$USERSサービスとは、サービス名を明示的に識別せずにユーザー・セッションを確立する場合に使用されるデフォルトのサービス名です。

図4-18    サービスの監視


画像の説明

サービスの監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. インスタンス・アクティビティ・グラフで、「サービス」をクリックします。

    「サービス」グラフが表示されます。

    図4-18では、emdcサービスとSYS$USERSサービスに、最大数のアクティブ・セッションがあります。

  3. グラフ上で最大のカラー・ブロックをクリックするか、または凡例内の対応するサービスをクリックして、アクティブ・セッションが最も多いサービスにドリルダウンします。

    「サービス」ページが表示され、「アクティビティ」サブページが表示されます。


    画像の説明

    このページでは、サービスに関連付けられたすべての待機クラスに対するセッション負荷を示すリアルタイム・データを参照できます。

ホスト・アクティビティの監視

「パフォーマンス」ページの「ホスト」グラフに、データベースのホスト・システムの使用状況に関する情報が表示されます。

図4-19    ホスト・アクティビティの監視


画像の説明

ホスト・システムにデータベースを実行するために十分な使用可能なリソースがあるかどうかを確認するには、使用するCPU、メモリーおよびディスクのリソースの量に対する適切な要件を確立します。次に、データベースによりこれらのリソースが過剰に消費されていないかどうかを確認できます。

CPU、メモリーおよびディスク使用率の詳細の表示手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. 「ホスト」グラフの凡例で「平均のロード」をクリックします。

    「ホスト」ページが表示され、「パフォーマンス」サブページが表示されます。

    図4-20    パフォーマンス・サマリー


    画像の説明

    デフォルトで、「パフォーマンス・サマリー」ビューが表示されます。パフォーマンス・サマリー・ビューにCPU使用率、メモリー使用率、ディスクI/O使用率、およびCPU使用率とメモリー使用率の両方に基づいた上位10プロセスのメトリック値が表示されます。

  3. 十分なリソースが使用可能かどうか、またシステムにより過剰なリソースが使用されているかどうかを確認します。

    次の場合にデータベースにより使用されるCPU、メモリーおよびディスクのリソースの量を確認します。

    • システムがアイドル状態(Oracleのアクティビティがほとんど存在しないか、Oracle以外のアクティビティが存在する)の場合

    • 平均ワークロード

    • ピーク・ワークロード

    システムのリソース使用率のレベルを評価する場合、ワークロードは重要なファクタです。ワークロードのピーク時に、CPUに10パーセントのアイドル時間および待機時間があり、リソースの使用率が90パーセントの場合、許容範囲内です。ただし、通常のワークロードにおいて、システムが高い使用率を表示するような場合は、追加のワークロードのための容量はありません。

    次の項のプロシージャを使用して、データベースのホスト・アクティビティを監視します。

  4. パフォーマンス・メトリックに対する適切なしきい値を設定すると、これらのしきい値を超えた場合、システムにより自動的にアラートが生成されます。

    メトリックのしきい値の設定については、「パフォーマンス・アラートのメトリックしきい値の設定」を参照してください。

CPU使用率の監視

CPUの問題に対処するには、まずシステムに必要なCPUリソースの量を適切に予測します。次に、十分なCPUリソースが使用可能であるかどうかを判断し、システムがリソースを過剰に使用している時期を確認します。この項では、CPU使用率を監視する方法について説明します。

CPU使用率の監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. 「ホスト」グラフの凡例で「平均のロード」をクリックします。

    「ホスト」ページが表示され、「パフォーマンス」サブページが表示されます。

  3. 「ビュー」リストで「CPU詳細」を選択します。

    「CPU詳細」ビューが表示されます。

    このビューには、CPU使用率、I/O待機および最近1時間の負荷に関する統計が含まれます。上位10のプロセスもCPU使用率順にリストされます。


    画像の説明

  4. 「CPU使用率」グラフを使用して、現在のCPU使用率を確認します。

    「CPU使用率」グラフに最近1時間のCPU使用率が表示されます。現在の値はグラフの下に表示されます。標準のワークロード時には、この値がクリティカルなしきい値を超えることはありません。

  5. 「CPU使用率」をクリックします。

    「CPU使用率」ページが表示されます。

    このページには、過去24時間に生成されたCPU使用率統計および関連アラートが表示されます。


    画像の説明

    この例では、午後9:56にCPU使用率がクリティカルなしきい値を超えたため、CPUのパフォーマンスの問題が考えられることを示す、CPU使用率に関するアラートが生成されます。

    通常のワークロード時に予期しないスパイクが発生しこの値が取り消される場合、CPUパフォーマンスの問題を調査する必要があります。

  6. 「CPU I/O待機」グラフを使用して、現在のCPU I/O待機時間を確認します。

    「CPU I/O待機」グラフに最近1時間のCPU I/O待機時間が表示され、現在の値はグラフの下に表示されます。通常のワークロード時にはCPU I/O待機の値は警告のしきい値を超えません。

    CPU I/O待機とは、間隔中にI/Oを待機しているジョブの平均数を表します。

  7. 「CPU I/O待機」をクリックします。

    「I/O待機内のCPU」ページが表示されます。

    このページには、CPU I/O待機統計および24時間以内に生成された関連するアラートが含まれます。


    画像の説明

    標準のワークロード時に予期しないスパイクが発生しこの値が取り消される場合、CPUパフォーマンスに問題がある場合があります。

  8. 「CPU負荷」グラフを使用して、現在のCPU使用率を確認します。

    「CPU負荷」グラフに最近1時間のCPU負荷が表示されます。現在の値はグラフの下に表示されます。標準のワークロード時には、CPU負荷の値が警告のしきい値を超えることはありません。

    CPU負荷は、過去1分間にCPUリソース用にスケジュールされることを待機していた平均プロセス数、または長時間のCPU競合時間のレベルを表します。

  9. 「CPU負荷」をクリックします。

    「実行キューの長さ」ページが表示されます。

    このページには、CPU負荷の統計および24時間以内に生成された関連するアラートが含まれます。


    画像の説明

    この例では、CPU負荷が警告のしきい値を超えましたが、クリティカルなしきい値より低いため、アラートは生成されませんでした。

    通常のワークロード時に予期しないスパイクが発生しこの値が取り消される場合、CPUパフォーマンスに問題がある場合があります。

  10. 「ホスト・パフォーマンス」サブページの「CPU詳細」ビューに戻り、「上位10のプロセス」表を確認します。

    プロセスがCPU使用率を過剰に消費する場合、このプロセスを調査する必要があります。


    画像の説明

    この例では、データベースのCPU使用率は100%です。このため、潜在的なCPUのパフォーマンスの問題の原因はデータベースである可能性が高く、調査が必要です。

  11. CPUのパフォーマンスの問題が識別された場合、次の方法によって問題の解決を試みることができます。

メモリー使用率の監視

オペレーティング・システムのパフォーマンスの問題には、一般的にプロセス管理、メモリー管理およびスケジューリングが関連しています。この項では、メモリー使用率を監視し、ページングやスワッピングなどの問題を識別する方法について説明します。

メモリー使用率の監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. 「ホスト」グラフの凡例で「平均のロード」をクリックします。

    「ホスト」ページが表示され、「パフォーマンス」サブページが表示されます。

  3. 「ビュー」リストで「メモリーの詳細」を選択します。

    「パフォーマンス」サブページの「メモリーの詳細」ビューが表示されます。

    このビューには、メモリー使用率、ページ・スキャン率および最近1時間のスワップ使用量に関する統計が含まれます。上位10のプロセスもメモリー使用率順にリストされます。


    画像の説明

  4. 「メモリー・ページ・スキャン率」グラフを使用して、現在のメモリー・ページ・スキャン率を確認します。

    メモリー・ページ・スキャン率の現在の値がグラフの下に表示されます。UNIXベースのシステムでは、この値は1秒当たりにスキャンされるページの平均数を表します。Microsoft Windowsでは、困難なページ・フォルトの解決のためにディスクから読み込まれるまたはディスクに書き込まれるページの率を表します。この値は、システム規模の遅延を引き起こす可能性のあるフォルトの主要なインジケータとなります。

  5. 「ページ・スキャン率」をクリックします。

    「メモリー・ページ・スキャン率」ページが表示されます。

    このページには、メモリー・ページ・スキャン率の統計および24時間以内に生成された関連アラートが含まれます。


    画像の説明

    この例では、しきい値が定義されていないため、アラートは生成されません。

    標準のワークロード時に予期しないスパイクが発生しこの値が取り消される場合、メモリー・パフォーマンスに問題がある場合があります。

  6. 「メモリー使用率」グラフを使用して、現在のメモリーの使用率を確認します。

    「メモリー使用率」グラフにメモリーの使用率が表示されます。メモリー使用率の現在の値はグラフの下に表示されます。標準のワークロード時には、この値が警告のしきい値(黄色で表示)を超えることはありません。

  7. 「メモリー使用率」をクリックします。

    「メモリー使用率」ページが表示されます。

    このページには、過去24時間に生成されたメモリー使用率統計および関連アラートが表示されます。


    画像の説明

    この例では、メモリー使用率が警告のしきい値(99%)に近くなってはいますが、超えてはいないため、アラートは生成されません。

    通常のワークロード時に予期しないスパイクが発生しこの値が取り消される場合、メモリー・パフォーマンスに問題がある場合があります。

  8. 「スワップ使用率」グラフを使用して、現在のスワップ使用量を確認します。

    「スワップ使用率」グラフにスワップ領域の使用率が表示されます。スワップ使用率の現在の値はグラフの下に表示されます。通常のワークロード時には、この値が警告のしきい値を超えることはありません。

  9. 「スワップ使用率」をクリックします。

    「スワップ使用率(%)」ページが表示されます。

    このページには、過去24時間に生成されたスワップ使用率統計および関連アラートが表示されます。


    画像の説明

    この例では、スワップ使用率が警告しきい値よりも低いため、アラートは生成されません。

    通常のワークロード時に予期しないスパイクが発生しこの値が取り消される場合、メモリー・パフォーマンスに問題がある場合があります。

  10. 「ホスト・パフォーマンス」サブページの「メモリーの詳細」ビューで、「上位10のプロセス」表の上位プロセスを確認します。

    プロセスがメモリーを過度に多く占有する場合、このプロセスを調査する必要があります。

    この例では、データベースのCPU使用率は82.86%です。常駐サイズは259MBであるのに対し、仮想サイズは391MBです。このため、潜在的なメモリーの問題の原因はデータベースである可能性が高く、調査が必要です。


    画像の説明

  11. メモリー・パフォーマンスの問題が識別された場合、次の方法によって問題の解決を試みることができます。

ディスクI/O使用率の監視

データベースは一連のディスク上に存在するため、I/Oサブシステムのパフォーマンスは、データベースのパフォーマンスにとって非常に重要です。ディスクに関する重要な統計には、1秒当たりのディスクI/Oおよびサービス時間の長さが含まれます。これらの統計は、ディスクが最適な状態で実行されているかどうか、またはディスクが過負荷の状態にあるかどうかが表示されます。この項では、ディスクI/O使用率を監視する方法について説明します。

ディスクI/O使用率の監視手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. 「ホスト」グラフの凡例で「平均のロード」をクリックします。

    「ホスト」ページが表示され、「パフォーマンス」サブページが表示されます。

  3. 「ビュー」リストで「ディスクの詳細」を選択します。

    「ディスクの詳細」ビューが表示されます。

    このビューには、ディスクI/O使用率および最近1時間に収集されたサービス時間統計、およびビジーの割合ごとに表示される上位ディスク・デバイスが含まれます。


    画像の説明

  4. 「ディスクI/O使用率」グラフを使用して、現在のディスクI/O使用率を確認します。

    「ディスクI/O使用率」グラフに、1秒当たりに実行されるディスクI/Oの数が表示されます。1秒当たりの合計I/Oに対する現在の値はグラフの下に表示されます。

  5. 「1秒当たりの合計I/O」をクリックします。

    「合計ディスクI/O/秒」ページが表示されます。

    このページにはディスク使用率の統計、および24時間以内に生成された関連するアラートが含まれます。


    画像の説明

    この例では、しきい値が定義されていないため、アラートは生成されません。

    標準のワークロード時に予期しないスパイクが発生しこの値が取り消される場合、ディスクI/Oのパフォーマンスに問題がある可能性があり、調査が必要です。

  6. 「最長I/Oサービス時間」グラフを使用して、現在のI/Oサービス時間を確認します。

    「最長I/Oサービス時間」グラフに、ディスクI/Oに対する最長サービス時間がミリ秒単位で表示されます。最長I/Oサービス時間に対する現在の値はグラフの下に表示されます。

  7. 「最長I/Oサービス時間」をクリックします。

    「最長サービス時間」ページが表示されます。

    このページにはI/Oサービス時間の統計および24時間以内に生成された関連するアラートが含まれます。


    画像の説明

    この例では、しきい値が定義されていないため、アラートは生成されません。

    通常のワークロード時に予期しないスパイクが発生しこの値が取り消される場合、ディスクI/Oのパフォーマンスに問題がある可能性があり、調査が必要です。

  8. 「ディスクの詳細」ページの「上位ディスク・デバイス(ビジー順にソート)」表で、ディスク・デバイスを確認します。

    特定のディスクがほとんどの時間でビジーになっている場合は、このディスクを調査する必要があります。

    この例では、Oracle Databaseのホスト・ドライブ(Cドライブ)へのアクセス時間がわずか2.82%で、ディスクのパフォーマンスの問題はないと考えられます。


    画像の説明

  9. ディスクI/Oのパフォーマンスの問題が識別された場合、次の方法によって問題の解決を試みることができます。

「データベース・パフォーマンス」ページのカスタマイズ

要件に対応できるように、「パフォーマンス」ページをカスタマイズできます。「インスタンス・アクティビティの監視」で説明されているように、「パフォーマンス」ページにデフォルトで表示するグラフおよびグラフの表示方法を指定できます。「スループット」グラフおよび「サービス」グラフにベースライン値を含めるかどうかも決定できます。

Enterprise Managerには、リポジトリ内の各ユーザーの永続カスタマイズ情報が格納されます。「パフォーマンス」ページにアクセスして設定を変更するまで残りのブラウザ・セッションに対してカスタマイズ・データをキャッシュする場合は、Enterprise Managerによりカスタマイズ・データが取得されます。

「パフォーマンス」ページのカスタマイズ手順:
  1. データベースのホームページで「パフォーマンス」をクリックします。

    「パフォーマンス」ページが表示されます。

  2. 「パフォーマンス」ページで、「設定」をクリックします。

    「「パフォーマンス」ページの設定」ページが表示されます。


    画像の説明

  3. 「グラフの詳細設定」セクションで、インスタンス・アクティビティ・グラフの表示のデフォルトを選択します。次の手順を実行します。

    1. 「デフォルトのビュー」で、「平均アクティブ・セッション」セクションにデフォルトで表示するインスタンス・アクティビティ・グラフを選択します。

      「スループット」、「I/O」、「パラレル実行」および「サービス」の各グラフの説明は、「インスタンス・アクティビティの監視」を参照してください。

    2. 「スループット・グラフの設定」で、「スループット」グラフに表示するデフォルトのインスタンスのスループットの割合として、「1秒当たり」または「1トランザクション当たり」を選択します。

      「スループット」グラフの使用方法は、「スループットの監視」を参照してください。

    3. 「I/Oグラフの設定」で、「I/O」グラフに表示するデフォルトのI/Oブレークダウンを選択します。

      「I/O」グラフの使用方法は、「I/Oの監視」を参照してください。

  4. 「ベースライン表示」セクションで、パフォーマンス・グラフでの自動ワークロード・リポジトリ(AWR)・ベースラインの表示方法を選択します。次のいずれかの操作を行います。

    • 「ベースライン値を表示しない」を選択してベースラインを表示させないようにします。

    • 「システム変動ウィンドウ・ベースラインを使用して、99番目のパーセンタイル・ラインを表示します」を選択して、「スループット」グラフおよび「サービス」グラフの表示のパーセンタイルを指定します。

      99番目のパーセンタイルは、非常に高い重大度レベルであることに注意してください。

    • 「計算された統計を持つ静的ベースラインを使用して、99番目のパーセンタイル・ラインを表示します」を選択し、「ベースライン名」リストからベースライン名を選択します。

      「ベースラインのしきい値統計の計算」の説明に従って、スケジュール統計の計算を経たベースラインのみ選択できることに注意してください。

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

    「パフォーマンス」ページが表示されます。

    カスタマイズ設定に従って、グラフが表示されます。


戻る 次へ
Oracle
Copyright © 2007, 2008 Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引