Amazon RDS の Performance Insights ダッシュボードを使用した Oracle 実行プランの分析 - Amazon Relational Database Service

Amazon RDS の Performance Insights ダッシュボードを使用した Oracle 実行プランの分析

Oracle Database の DB 負荷を分析する際に、DB 負荷に最も影響しているプランを知りたい場合があります。DB 負荷に最も影響しているプランを特定するには、Performance Insights のプランキャプチャ機能を使用できます。

コンソールを使用して Oracle 実行プランを分析するには
  1. Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. ナビゲーションペインで、[Performance Insights] を選択します。

  3. Oracle DB インスタンスを選択します。この DB インスタンスに Performance Insights ダッシュボードが表示されます。

  4. [データベース負荷 (DB 付加)] セクションで、[スライス基準] の横にある [プラン] をクリックします。

    平均アクティブセッションのグラフには、上位 SQL ステートメントで使用されているプランが表示されます。プランのハッシュ値は、色分けされた四角形の右側に表示されます。各ハッシュ値によりプランを一意に識別できます。

    プランによるスライス化
  5. 下部にある [トップ SQL] タブまでスクロールします。

    次の例では、上位 SQL ダイジェストに 2 つのプランがあります。ステートメント内で疑問符を付けることで、それがダイジェストだと伝えることができます。

    ダイジェストプランを選択する
  6. ダイジェストを選択して、そのコンポーネントステートメントを展開します。

    以下の例では、SELECT ステートメントがダイジェストクエリです。ダイジェスト内のコンポーネントクエリでは、2 つの異なるプランが使用されます。プランに付けられた色は、データベースの負荷チャートのものと対応しています。ダイジェスト内のプランの総数が、2 列目に表示されます。

    ダイジェストプランを選択する
  7. 下にスクロールし、[ダイジェストクエリのプラン] リストから、比較する 2 つの [プラン] を選択します。

    1 つのクエリについて、一度に 1 つまたは 2 つのプランを表示できます。次のスクリーンショットは、ダイジェスト内で、ハッシュ 2032253151 とハッシュ 1117438016 を含む 2 つのプランを比較しています。次の例では、このダイジェストクエリを実行する平均アクティブセッションの 62% が左側のプランを使用しているのに対し、38% は右側のプランを使用しています。

    プランを並べて比較する

    この例では、それぞれのプランに重要な相違点があります。プラン 2032253151 のステップ 2 ではインデックススキャンが使用されますが、プラン 1117438016 ではフルテーブルスキャンが使用されます。ほとんどの場合、行数が多いテーブルでは、インデックススキャンを使用すると 1 行のクエリを高速化できます。

    プランを並べて比較する
  8. (オプション) [コピー] をクリックし、クリップボードにプランをコピーします。あるいは、[ダウンロード] により、ハードドライブにプランを保存します。