SQL Serverクエリのパフォーマンスをチェックする方法:ステップバイステップ

ページ名:SQL Serverクエリのパフォーマンスをチェックする方法_ステップバイステップ

このWikiHowでは、SQL Serverクエリストアを使用してデータベースクエリのパフォーマンスを監視する方法を説明します。

知っておくべきこと

  • SQL Server Management Studioでクエリストアを有効にします。
  • クエリストアの - ボタンをクリックするとメニューが表示され、リソースを多く消費するクエリを確認することができます。
  • また、-メニューの″Check for regression in″をクリックすると、リグレッションしているクエリを探すことができます。
パート1

クエリストアの有効化

  1. SQL Server Management Studioを開きます。SQL Server のクエリストア機能を使用して、データベースのパフォーマンス問題を監視することができます。この機能はSQL Server 2016以降に搭載されていますが、手動で有効にする必要があります。
  2. オブジェクト・エクスプローラーを開きます。オブジェクト・エクスプローラーがまだ表示されていない場合は、画面上部の[表示]メニューをクリックし、[オブジェクト・エクスプローラー]をクリックします。
  3. 確認したいデータベースを右クリックします。メニューが表示されます。
    • クエリストアは、マスタまたは tempdb データベースの監視には使用できません。
  4. プロパティ]をクリックします。
  5. クエリストア]をクリックします。プロパティ]ダイアログ・ボックスが表示されます。
  6. クエリ・ストアはすべてのクエリの追跡を開始します。
  7. オブジェクト・エクスプローラ・パネルでデータベースを更新します。これにより、Query Storeフォルダがパネルに追加されます。
  8. クエリストアが新しいデータを集計するタイミングをカスタマイズします。クエリストアはデフォルトで60分ごとに新しい統計情報を集計します。この間隔を変更する方法を以下に示します(例として15分を使用します):
    • ALTER DATABASE <データベース名>を設定します。
    • set query_store (interval_length_minutes = 15);.
パート2

リソース消費の多いクエリを見つける

  1. オブジェクト・エクスプローラで″Query Store″の横の-をクリックします。これにより、すべてのクエリストアオプションが表示されます。
    • この方法を使用して、最もサーバリソースを使用している特定のクエリを調べます。
  2. Top Resource Consuming Queries をクリックします。データベース内で最もリソースを消費している25のクエリを表示するグラフが開きます。これらの結果はかなり大まかなものですが、グラフをさらにカスタマイズしてより有益な情報を得ることができます。
  3. Configureをクリックします。レポートの右上にあります。ダイアログウィンドウが表示されます。
  4. リソース消費基準を選択します。一番上のセクション(″Resource Consumption Criteria″)で、どのリソースをチェックしたいか(例:CPU Time、Memory Consumption)、希望の統計(例:Avg、Total)を選択します。
  5. 期間を選択します。時間間隔」セクションで、結果を表示する期間を選択します。ドロップダウンメニューからオプションを選択するか、特定の日付をボックスに挿入することができます。
  6. 表示する結果の数を選択します。選択した期間のすべてのクエリを表示するには、″Return″ヘッダーの下にあるAllをクリックします。特定の数のクエリを表示するには、"Top "を選択し、数字を入力します(例:10、100)。
    • ワースト25に限定する場合は、″Return″ヘッダを変更する必要はありません。
  7. OKをクリックする。統計が更新され、あなたが見たいものが表示されます。
  8. 表示を調整する(オプション)。小さなグラフアイコン(グリッド、チャート、棒グラフ)を使って、さまざまな形式で結果を表示することができます。これらのボタンは、結果の右上にあります。
パート3

リグレストされたクエリのチェック

  1. オブジェクト・エクスプローラーの″Query Store″の横にある-をクリックします。これにより、すべてのクエリストアオプションが表示されます。
    • この方法を使用して、以前よりもパフォーマンスが低下している特定のクエリを見つけます。
  2. Regressed Queriesをクリックします。クエリストアのクエリとプランが表示されます。
  3. 最初のドロップダウンメニューからプランを選択します。パネルの左上の″Check for regression in″と書かれたメニューです。それぞれのプランは、クエリに対して異なるグラフィカルなパフォーマンスレポートを表示します。
    • 例えば、クエリの実行時間に関する問題をチェックしたい場合は、Durationを選択します。
    • RAM使用量に関する問題を確認するには、Memory Consumptionを選択します。
  4. 2番目のドロップダウンメニューから統計を選択します。これは、″Based on″と表示されたメニューです(前のメニューの右側。これで結果が再表示される。


この記事は、" How to Check SQL Server Query Performance: この記事は、CC BY-NC-SAで公開されている "How to Check SQL Server Query Performance: Step-by-Step Guide "を改変して作成しました。特に断りのない限り、CC BY-NC-SAの下で利用可能です。

シェアボタン: このページをSNSに投稿するのに便利です。

コメント

返信元返信をやめる

※ 悪質なユーザーの書き込みは制限します。

最新を表示する

NG表示方式

NGID一覧