「Microsoft SQL Server」が稼働するデータベースシステムを運用する管理者に向け、「動的管理ビュー」の活用を軸にしたトラブル対策のためのノウハウを紹介していきます。今回は、統計情報のプロパティに関する情報の出力について解説します。
本連載では、「Microsoft SQL Server(以下、SQL Server)」で使用可能な動的管理ビューについて、動作概要や出力内容などを紹介していきます。今回は動的管理関数「sys.dm_db_stats_properties」における、統計情報のプロパティに関する情報の出力について解説します。対応バージョンは、SQL Server(サポートされている全てのバージョン)、「Azure SQL Database」「Azure SQL Managed Instance」です。
SQL Serverでは、クエリ実行時にどのインデックスを使用すれば効率的に実行できるかを判断するために統計情報を使用します。統計情報には、値の分布や列間の相関関係などの情報が含まれます。
「sys.dm_db_stats_properties」では、統計情報のプロパティに関する情報を出力します。パーティション単位の統計情報を取得したい場合は、以前に紹介した「sys.dm_db_incremental_stats_properties」を使用する必要があります。
構文 sys.dm_db_stats_properties (object_id, stats_id)
列名 | データ型 | 説明 |
---|---|---|
object_id | int | オブジェクトのID |
stats_id | int | 統計のID |
列名 | データ型 | 説明 |
---|---|---|
object_id | int | オブジェクトのID |
stats_id | int | 統計のID |
last_updated | datetime2 | オブジェクトが最後に更新された日付と時刻 |
rows | bigint | 統計情報が最後に更新された時点のテーブルの行数 |
rows_sampled | bigint | 統計の計算時にサンプリングされた行数 |
steps | int | ヒストグラムの区間の数 |
unfiltered_rows | bigint | フィルター式を適用する前のテーブル内の行数 |
modification_counter | bigint | 統計情報が前回更新されてから統計列に対して行われた変更の総数 |
persisted_sample_percent | float | サンプリングの割合を明示的に指定しない統計情報の更新に使用されるサンプリングのパーセンテージ |
Copyright © ITmedia, Inc. All Rights Reserved.