2010-06-22 210 views
4

我有一個查詢,我在兩個等效的數據庫上運行,但託管在單獨的MS SQL 2005服務器上。我想衡量這兩臺服務器上查詢的時間,因此嘗試了以下內容:SQL Server執行時間代表什麼?

SET STATISTICS TIME ON 
GO 
SELECT TOP 10000 * 
    FROM table 
GO 
SET STATISTICS TIME OFF; 
GO 

,得到了以下結果:

SQL Server parse and compile time: 
    CPU time = 0 ms, elapsed time = 2 ms. 

(10000 row(s) affected) 

SQL Server Execution Times: 
    CPU time = 16 ms, elapsed time = 8143 ms. 
SQL Server parse and compile time: 
    CPU time = 0 ms, elapsed time = 0 ms. 

我的問題是,什麼是SQL Server的執行時間是指?它只是在數據庫執行查詢,還是執行包括將數據傳輸回運行SQL Server Management Studio的客戶端的查詢?

Thanx提前!

回答

3

經過時間=總時間來運行查詢(包括等待I/O)

CPU時間=總CPU時間。

關於這個問題的有用製品是在http://www.sqlservercentral.com/articles/Performance+Tuning/measuringperformance/1323/

+0

據我所知的文章,I/O裝置從磁盤和/或存儲器中讀出到/。也就是說,不包括通過tcp/ip傳輸數據。這聽起來正確嗎? – 2010-06-22 11:11:24

+0

對我來說聽起來很合適。但是,您也可能需要考慮任何並行處理。但它最有可能是磁盤I/O。有關SSC論壇的有趣討論:http://www.sql-server-performance.com/faq/cpu_elapsed_time_query_performance_p1.aspx – 2010-06-22 15:33:42

相關問題