クエリの完了率と予測完了時間を確認してみる
今回やることを説明してみる
クエリの完了率と予測完了時間を確認します。久しぶりの SQL Server 関連の記事です。
使用する環境を説明してみる
My Lenovo with SQL Server 2014 です。
試してみる
早速試してみましょう。今回は、DBCC CHECKDB で確認してみます。SQL Server Management Studio で クエリ画面を二つ立ち上げ、それぞれの画面で下記のコマンドおよびクエリを実行します。
DBCC CHECKDB
SELECT [クエリ] = est.text, [完了率] = percent_complete, [開始時間] = start_time, [予測完了時間] = DATEADD(SECOND,estimated_completion_time/1000, GETDATE()) FROM sys.dm_exec_requests er CROSS APPLY sys.dm_exec_sql_text(er.sql_handle) est OPTION (RECOMPILE)
完了率、予測完了時間が取得できています。長時間に及ぶ処理だと、どのくらいで完了するかわかると安心できますよね。但し、完了率が取得できるコマンドは下記のものだけです。
- ALTER INDEX REORGANIZE
- ALTER DATABASE の AUTO_SHRINK オプション
- BACKUP DATABASE
- DBCC CHECKDB
- DBCC CHECKFILEGROUP
- DBCC CHECKTABLE
- DBCC INDEXDEFRAG
- DBCC SHRINKDATABASE
- DBCC SHRINKFILE
- RECOVERY
- RESTORE DATABASE
- rollback
- TDE ENCRYPTION
終わりに何か言ってみる
全部のコマンドで完了率とか取れたらいいのに....と思ってみる。INDEX の REBUILD 処理とか....
プログラミング.NET Framework 第4版買おうかな....ちょっと前は、kindle 版が半額になってました。
- 作者: Jeffrey Richter
- 出版社/メーカー: 日経BP社
- 発売日: 2014/07/30
- メディア: Kindle版
- この商品を含むブログを見る