T-SQL クエリの監視 (プレビュー)

適用対象:✅ Microsoft Fabric の SQL 分析エンドポイントおよびウェアハウス

Important

この機能は プレビュー段階です

Data Warehouse Monitor を使用して、T-SQL コードを実行せずに、実行中および履歴の T-SQL クエリ、実行時間の長いクエリ、および頻繁に実行されるクエリを表示します。 Fabric ポータルに統合された Data Warehouse Monitor を使用して、クエリが正常に完了したことを確認し、実行パターンを分析し、低速なクエリ実行を詳細に調査できます。

Data Warehouse Monitor は、以前は "クエリ アクティビティ" という名前でした。

前提条件

  • Data Warehouse Monitor にアクセスするには、ワークスペースの管理者である必要があります。 メンバー、共同作成者、閲覧者には、このビューにアクセスするアクセス許可がありません。

概要

Data Warehouse Monitor エクスペリエンスは、2 つの方法で起動できます。

  • ワークスペース ビュー内で監視するウェアハウスの横にある [ その他のオプション] (...) を選択し、[監視] を選択 します

    ワークスペースのコンテキスト メニューの [モニター] エントリ ポイントのスクリーンショット。

  • 監視するウェアハウスのクエリ エディター内で、リボンの [監視 ] を選択します。

    リボンの [モニター] エントリ ポイントのスクリーンショット。

クエリの履歴

[ クエリ履歴 ] ページでは、最近のクエリ実行を確認し、ウェアハウス アクティビティのパターンを特定できます。 このビューは、要求数グラフと詳細な結果グリッドを組み合わせて、高度な傾向から特定のクエリ実行に移行できるようにします。

  • 要求数グラフを使用して、選択した時間範囲内のアクティビティの急増を特定します。
  • [フィルター] メニューを使用して、送信時刻 (UTC)状態送信者実行ソースステートメントの種類およびラベルでビューを絞り込みます。
  • 検索バーを使用して、クエリ テキストまたはその他の列で特定のキーワードを検索します。
  • 時間フィルターを使用して、過去 24 時間、過去 7 日間、過去 30 日間、またはカスタム時間範囲をすばやく切り替えます。
  • グラフ領域の上にあるリムーバブル 丸薬としてアクティブなフィルターを確認します。 フィルターを適用または削除すると、モニターによってグラフとクエリ グリッドが更新され、現在のフィルター セットに一致します。
  • [最新の情報に更新] を選択して、現在の結果を再読み込みします。 停止するクエリが表示された場合は、チェック ボックスを使用してクエリを選択し、[キャンセル] を選択 します。 クエリが取り消される前に確認を求められます。 選択したのと同じ SQL セッションの一部である選択されていないクエリも取り消されます。

Note

現在、監視エクスペリエンスに適用されたフィルターは、グラフとデータ グリッドの間で同期されない場合があります。 一貫性のある結果を表示するには、更新オプションを使用してデータを再読み込みします。

[クエリ履歴の取り消し] ダイアログのスクリーンショット。

  • 同じクエリ ハッシュを共有する 1 つ以上のクエリ実行を選択すると、 同様の実行を表示 できるようになります。 このオプションを使用して、同じクエリ パターンの実行を比較し、実行の間に期間、失敗、またはリソース使用量が変更されたかどうかを把握します。

クエリ履歴ビューの同様の実行のスクリーンショット。

グラフが更新され、現在のフィルター選択が反映され、次のような質問に簡単に回答できるようになります。

  • クエリのボリュームが増加したのはいつですか?
  • アクティビティの急増に関連付けられている送信者または実行ソースはどれですか?
  • 失敗したクエリまたは取り消されたクエリは特定の時間枠に集中していますか?

列メニューからテーブル レイアウトをカスタマイズすることもできます。

  • データ グリッドに表示する列を選択します。
  • 列メニュー内の項目をドラッグして並べ替えます。
  • 選択した列の順序に一致するようにグリッドを更新するには、[ 適用] を選択します。

クエリごとに、クエリ 履歴 グリッドで次の詳細を使用できます。 一部の列は既定で非表示になり、[ 列] オプションから追加できます。

列名 Description
分散ステートメント ID 各クエリの一意の ID
クエリ テキスト 実行されたクエリのテキスト
クエリ ハッシュ 実行全体で同様のクエリ ロジックを識別するのに役立つクエリ図形のハッシュ値
ステータス クエリの状態: 成功、失敗、または取り消し
送信者: クエリを送信したユーザーまたはシステムの名前
送信時刻 (UTC) 要求到着時のタイムスタンプ
期間 クエリの完了にかかった合計時間
実行ソース セッションを開始したクライアント プログラムの名前
CPU 時間 クエリ実行に割り当てられた CPU 時間の合計
リモートでスキャンされたデータ OneLake のリモート ストレージから読み取られたデータの量
ディスク上でスキャンされたデータ ローカル ディスクから読み取られたデータの量
キャッシュでスキャンされたデータ ローカル メモリ キャッシュから読み取られたデータの量
セッション ID 特定のユーザー セッションにクエリをリンクする ID
ラベル クエリに関連付けられたラベルで、ラベルが指定された場合に限りオプションです。
ステートメントの種類 SELECT、INSERT、UPDATE、DELETE など、実行された SQL ステートメントの種類
行数 クエリによって返される行の数
バッチ ID グループ化された一連のクエリの ID (該当する場合)
接続 ID クエリによって使用される接続の識別子
データベース名 実行時に接続されたウェアハウスまたは SQL 分析エンドポイントの名前
終了時刻 クエリの実行が完了したときのタイムスタンプ
分散されている クエリが分散操作として実行されたかどうかを示します。yes の場合は 1、いいえの場合は 0 です。
結果キャッシュヒット クエリの結果セットのキャッシュ状態: 2 はキャッシュ ヒットを意味し、1 はキャッシュが作成されたという意味で、0 は結果セットキャッシュが適用されなかったことを意味します
ルート バッチ ID クエリが入れ子になったバッチの一部である場合の最上位バッチの ID
SQL プール名 要求の実行に使用される SQL プールの名前
エラー コード エラーが報告されたときにクエリの実行に対して返されるエラー コード

動的管理ビューとクエリ分析情報ビュー (たとえば、queryinsights.exec_requests_history) を使用して、クエリの実行に関する同じ情報を確認することもできます。

クエリの分析情報

その他の [監視 ] タブは、履歴から要約された分析に移動するのに役立ちます。

  • 実行時間の長いクエリ は、一貫して実行時間が長いクエリを識別するのに役立ちます。
  • クエリを頻繁に実行 すると、チューニングのメリットがあるクエリ パターンを繰り返し見つけることができます。

実行時間の長いクエリの分析情報では、クエリごとに以下の詳細が表示されます。

列名 Description
クエリ テキスト 実行されたクエリのテキスト
実行時間の中央値 実行全体におけるクエリ実行時間の中央値 (ミリ秒)
実行数 クエリが実行された合計回数
最後の実行時間 最後の実行にかかった時間 (ミリ秒)
最後に実行された分散ステートメント ID 最後のクエリ実行の一意の ID
最後の実行のセッション ID 最後の実行のセッション ID

頻繁に実行されるクエリの分析情報では、クエリごとに以下の詳細が表示されます。

列名 Description
クエリ テキスト 実行されたクエリのテキスト
平均実行時間 実行全体における平均クエリ実行時間 (ミリ秒)
最大時間 最大クエリ実行時間 (ミリ秒)
最小時間 最小クエリ実行時間 (ミリ秒)
最後に実行された分散ステートメント ID 最後のクエリ実行の一意の ID
実行数 クエリが実行された合計回数
成功した実行の数 成功したクエリ実行の数
失敗した実行の数 失敗したクエリ実行の数
キャンセルされた実行の数 キャンセルされたクエリ実行の数

これらのビューから最大の値を取得するには:

  • クエリ履歴から開始して、調査する時間範囲、提出者、または実行ソースを特定します。
  • 同様の実行を表示して、同じクエリ ハッシュを共有する実行を比較します。
  • 実行時間の長いクエリに移動して、中央値の長い期間のクエリ パターンを特定します。
  • 頻繁 に実行されるクエリ を確認して、チューニングに適した大量のクエリ図形を見つけます。

クエリ履歴では、完了したクエリ、失敗したクエリ、取り消されたクエリに関する情報と集計されたインサイトを、Fabric データ ウェアハウスのクエリ インサイトでも確認できます。

制限事項

  • 同時実行ワークロードによっては、履歴クエリがモニターに表示されるまでに最大 15 分かかることがあります。
  • モニターには、現在のフィルター選択の上位 10,000 行のみが表示されます。 結果セットを減らすには、時間範囲を絞り込むか、フィルターを追加します。
  • 新しい倉庫を作成した直後にモニターを開くと、 Invalid object name queryinsights.exec_requests_history エラーが表示されることがあります。 このエラーは、基になるシステム ビューがまだ生成されていないために発生します。 回避策として、2 分待ってからページを更新します。