実行プランの集計されたパフォーマンス統計に関する情報を出力するSQL Server動的管理ビューレファレンス(69)

「Microsoft SQL Server」が稼働するデータベースシステムを運用する管理者に向け、「動的管理ビュー」の活用を軸にしたトラブル対策のためのノウハウを紹介していきます。今回は、実行プランの集計されたパフォーマンス統計に関する情報の出力について解説します。

» 2021年12月14日 05時00分 公開
[椎名武史@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

SQL Server動的管理ビュー一覧

 本連載では、「Microsoft SQL Server(以下、SQL Server)」で使用可能な動的管理ビューについて、動作概要や出力内容などを紹介していきます。今回は動的管理ビュー「sys.dm_exec_query_stats」における、実行プランの集計されたパフォーマンス統計に関する情報の出力について解説します。対応バージョンは、SQL Server(サポートされている全てのバージョン)です。

概要

 実行プランがメモリ上にキャッシュされている間は、パフォーマンスに関する情報も収集されています。「sys. dm_exec_query_stats」を実行すると、実行プランの集計されたパフォーマンス統計に関する情報を出力します。

出力内容

列名 データ型 説明
sql_handle varbinary(64) クエリの識別子
statement_start_offset int ステートメントの開始オフセット
statement_end_offset int ステートメントの終了オフセット
plan_generation_num bigint プランのシーケンス番号
plan_handle varbinary(64) クエリプランの識別子
creation_time datetime プランがコンパイルされた時刻
last_execution_time datetime 前回のプランが実行された時刻
execution_count bigint プランが実行された回数
total_worker_time bigint CPU時間の合計(マイクロ秒単位)
last_worker_time bigint 前回実行時のCPU時間(マイクロ秒単位)
min_worker_time bigint 1回の実行での最小CPU時間(マイクロ秒単位)
max_worker_time bigint 1回の実行での最大CPU時間(マイクロ秒単位)
total_physical_reads bigint 物理読み取り数の合計
last_physical_reads bigint 前回実行時の物理読み取り数
min_physical_reads bigint 1回の実行での最小物理読み取り数
max_physical_reads bigint 1回の実行での最大物理読み取り数
total_logical_writes bigint 論理書き込み数の合計
last_logical_writes bigint 前回実行時の論理書き込み数
min_logical_writes bigint 1回の実行での最小論理書き込み数
max_logical_writes bigint 1回の実行での最大論理書き込み数
total_logical_reads bigint 論理読み取り数の合計
last_logical_reads bigint 前回実行時の論理読み取り数
min_logical_reads bigint 1回の実行での最小論理読み取り数
max_logical_reads bigint 1回の実行での最大論理読み取り数
total_clr_time bigint CLRで使用した時間の合計(マイクロ秒単位)
last_clr_time bigint 前回実行時のCLRで使用した時間(マイクロ秒単位)
min_clr_time bigint 1回の実行でのCLRで使用した最小時間(マイクロ秒単位)
max_clr_time bigint 1回の実行でのCLRで使用した最大時間(マイクロ秒単位)
total_elapsed_time bigint 実行時間の合計(マイクロ秒単位)
last_elapsed_time bigint 前回実行時の実行時間(マイクロ秒単位)
min_elapsed_time bigint 1回の実行での最小実行時間(マイクロ秒単位)
max_elapsed_time bigint 1回の実行での最大実行時間(マイクロ秒単位)
query_hash binary(8) クエリのハッシュ値
query_plan_hash binary(8) クエリプランのハッシュ値
total_rows bigint クエリによって返された行数の合計
last_rows bigint 前回実行時のクエリによって返された行数
min_rows bigint 1回の実行でのクエリによって返された最小行数
max_rows bigint 1回の実行でのクエリによって返された最大行数
statement_sql_handle varbinary(64) クエリストアが有効な場合のクエリの識別子
statement_context_id bigint クエリストアが有効な場合のコンテキストID
total_dop bigint クエリの並列度の合計
last_dop bigint 前回実行時のクエリの並列度
min_dop bigint 1回の実行でのクエリの最小並列度
max_dop bigint 1回の実行でのクエリの最大並列度
total_grant_kb bigint 予約メモリ量の合計(KB単位)
last_grant_kb bigint 前回実行時の予約メモリ量(KB単位)
min_grant_kb bigint 1回の実行での最小予約メモリ量(KB単位)
max_grant_kb bigint 1回の実行での最大予約メモリ量(KB単位)
total_used_grant_kb bigint メモリ使用量の合計(KB単位)
last_used_grant_kb bigint 前回実行時のメモリ使用量(KB単位)
min_used_grant_kb bigint 1回の実行での最小メモリ使用量(KB単位)
max_used_grant_kb bigint 1回の実行での最大メモリ使用量(KB単位)
total_ideal_grant_kb bigint 理想的なメモリ使用量の合計(KB単位)
last_ideal_grant_kb bigint 前回実行時の理想的なメモリ使用量(KB単位)
min_ideal_grant_kb bigint 1回の実行での理想的な最小メモリ使用量(KB単位)
max_ideal_grant_kb bigint 1回の実行での理想的な最大メモリ使用量(KB単位)
total_reserved_threads bigint 予約済み並列スレッドの合計
last_reserved_threads bigint 前回実行時の予約済み並列スレッド
min_reserved_threads bigint 1回の実行での予約済み最小並列スレッド
max_reserved_threads bigint 1回の実行での予約済み最大並列スレッド
total_used_threads bigint 使用された並列スレッドの合計
last_used_threads bigint 前回実行時の使用された並列スレッド
min_used_threads bigint 1回の実行での使用された最小並列スレッド
max_used_threads bigint 1回の実行での使用された最大並列スレッド
total_columnstore_segment_reads bigint 列ストアセグメントの読み取り数の合計
last_columnstore_segment_reads bigint 前回実行時の列ストアセグメントの読み取り数
min_columnstore_segment_reads bigint 1回の実行での列ストアセグメントの最小読み取り数
max_columnstore_segment_reads bigint 1回の実行での列ストアセグメントの最大読み取り数
total_columnstore_segment_skips bigint 列ストアセグメントのスキップ数の合計
last_columnstore_segment_skips bigint 前回実行時の列ストアセグメントのスキップ数
min_columnstore_segment_skips bigint 1回の実行での列ストアセグメントの最小スキップ数
max_columnstore_segment_skips bigint 1回の実行での列ストアセグメントの最大スキップ数
total_spills bigint 書き込まれたページ数の合計
last_spills bigint 前回実行時の書き込まれたページ数
min_spills bigint 1回の実行での書き込まれた最小ページ数
max_spills bigint 1回の実行での書き込まれた最大ページ数
total_num_physical_reads bigint 物理読み取り数の合計
last_num_physical_read bigint 前回実行時の物理読み取り数
min_num_physical_read bigint 1回の実行での最小物理読み取り数
max_num_physical_read bigint 1回の実行での最大物理読み取り数
total_page_server_reads bigint リモートサーバの読み取りページ数の合計
last_page_server_reads bigint 前回実行時のリモートサーバの読み取りページ数
min_page_server_reads bigint 1回の実行でのリモートサーバの最小読み取りページ数
max_page_server_reads bigint 1回の実行でのリモートサーバの最大読み取りページ数
total_num_page_server_reads bigint リモートサーバのページ読み取り数の合計
last_num_page_server_reads bigint 前回実行時のリモートサーバのページ読み取り数
min_num_page_server_reads bigint 1回の実行でのリモートサーバのページ最小読み取り数
max_num_page_server_reads bigint 1回の実行でのリモートサーバのページ最大読み取り数

動作例

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。