テーブルにアクセスする最も遅いクエリの発見

Visual Expert 2019 では、実行時間の長いSQLクエリを見つける新しいマクロ [Slowest SQLs using this table] ([このテーブルを使用した最も遅いSQL])が実装されました。

これは、コードの全体的なパフォーマンスを向上させるために、パフォーマンスの低下したSQLを排除したり、修正したりするのに役立ちます。

トラディショナルなDBAツールとの違いは何か?

DBAツールは、DBのレスポンス タイムに影響を与える遅いクエリを特定できます。しかし、この情報は開発者にとっては役に立たないことが多く、通常はコードの中でこの遅いクエリの発生源を特定できません。このような場合、パフォーマンスの低い SQL はコード内で変更されずに残っています。

Visual Expert は、SQL の実行統計とコードの静的分析を組み合わせることで、SQL を改善すべきプロシージャや関数をピンポイントで特定できます。

  1. テーブルを選択し、ナビゲーションバーの[パフォーマンス]セクションにある[Slowest SQLs using this table]([このテーブルを使用した最も遅いSQL])をクリックします。

  2. find slowest queries accessing a table

  3. またリは、ボンメニューの[パフォーマンス]タブの[Slowest SQLs]([最も遅いSQL])オプションからアクセスすることもできます。

  4. find slowest sql queries accessing a table

  5. その結果、SQLは遅いものから速いものまでランク付けされます。

  6. find slowest sql queries accesing a table

  7. そのコードがSQLのどこから来ているかを調べるには、それを選択して、ナビゲーションバーの[Locate]([ロケート])をクリックします。

  8. find slowest sql queries accesing a table

この機能には2つのパラメータがあり、結果をカスタマイズできます(項目右側の小さなレンチをクリックして設定)。

wrench option for finding slowest sql queries accessing a table in visual expert

  • 結果に表示される項目の数(デフォルトは20)
  • 有意な応答時間を持つSQLのみを表示するための最小実行時間

customize result for the slowest sql queries accessing a table in visual expert

前提条件:

  1. このVEのプロジェクトは、データベース接続を介してDBコードを読み取る必要があります(ファイルからDBコードを読み取るのとは対照的に)。
  2. VEの [パフォーマンス モニター] をアクティブにします。

    .
  3. データベースがSQLクエリを実行し、いくつかの実行統計をログするまで待ちます。

続きを読む

この記事では、コード パフォーマンスの分析と最適化について詳しく説明します。

Visual Expert 2019, Oracle, SQL Server