現象
Microsoft SQL Server では、拡張イベント (xEvents) および動的管理ビュー (Dmv sys.dm_exec_query_stats sys.dm_exec_requests) を使用してキャッシュされた クエリプラン を監視しようとしても、キャッシュされたクエリプランをまとめるのは非常に困難です。
原因
この問題は、 Query_hash 列と Query_plan_hash 列のデータ型が dmv と xEvents で異なるために発生します。 Dmv では、 Query_hash 列と Query_plan_hash 列は Varbinary データ型として定義されています (sys.dm_exec_requests と sys.dm_exec_query_stats)。 XEvents では、列は UINT64 データ型として定義されます。
解決方法
SQL Server の Service pack 情報
この更新プログラムは、SQL Server 用の次の service pack で修正されています。
-
Service Pack 4 For SQL Server 2012
サービスパックは累積されます。 Service Pack は累積的であり、 最新の Service Pack には新しい修正プログラムと共に、それ以前の Service Pack に含まれていたすべての修正プログラムが含まれています。 このサービスパックの最新の service pack と最新の累積的な更新プログラムを適用することをお勧めします。 最新の service pack をインストールする前に、以前のサービスパックをインストールする必要はありません。 最新の service pack と最新の累積的な更新プログラムの詳細については、次の記事の表1を参照してください。
この更新プログラムをインストールすると、 INT64データ型として定義されている2 つの列が追加され、Query_hash_signedとQuery_plan_hash_signedされます。これにより、Dmv と xEvents (rpc_completedやsql_batch_completedなど)間で簡単にデータを結合することができます。
SQL Server 用の新しい更新プログラムには、以前の更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の service pack を確認してください。
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
関連情報
マイクロソフトでソフトウェア更新プログラムの説明に使用する用語集を参照してください。