Buffer Manager 物件提供計數器來監視 SQL Server 的使用方式:
用來儲存數據頁的記憶體。
用於監視 SQL Server 讀取和寫入資料庫頁面時實體 I/O 的計數器。
使用快速非揮發性儲存裝置,例如固態硬碟(SSD),來擴充緩衝池和緩衝快取。
監視 SQL Server 所使用的記憶體和計數器可協助您判斷:
如果因物理記憶體不足而存在瓶頸。 如果無法將經常存取的數據儲存在快取中,SQL Server 必須從磁碟擷取數據。
如果查詢效能可以藉由新增更多記憶體,或讓更多記憶體可供數據快取或 SQL Server 內部結構使用,來改善查詢效能。
SQL Server 需要從磁碟讀取數據的頻率。 與其他作業相比,例如記憶體存取,實體 I/O 會耗用很多時間。 將實體 I/O 最小化可以改善查詢效能。
Buffer Manager 效能物件
下表描述 SQL Server Buffer Manager 效能物件。
| SQL Server Buffer Manager 計數器 | 說明 |
|---|---|
| 緩衝區快取命中率 | 指出緩衝區快取中找到的頁面百分比,而不需要從磁碟讀取。 此比率的計算方式,是將快取點擊的總數除以快取查閱的總數 (以過去數千個頁面存取作為樣本)。 經過很長一段時間后,比率移動很少。 由於從快取讀取的成本遠低於從磁碟讀取,因此您會希望此比率是偏高的。 一般而言,您可以增加 SQL Server 可用的記憶體數量,或使用緩衝池擴充功能來增加緩衝區快取命中率。 |
| 檢查點頁面/秒 | 指出檢查點或其他作業每秒排清到磁碟的頁面數目,這些作業需要清除所有髒頁面。 |
| 資料庫頁面 | 指出緩衝池中含有資料庫內容的頁數。 |
| 延伸模組配置的頁面 | 緩衝池擴充檔案中非自由快取頁面的總數。 |
| 無延伸模組頁面 | 緩衝池擴充檔案中的可用快取頁面總數。 |
| 擴充功能的使用率百分比 | 緩衝區管理員頁面所佔用之緩衝池延伸模組分頁檔案的百分比。 |
| 擴充未處理的 IO 計數器 | 緩衝池擴充檔案的 I/O 佇列長度。 |
| 擴充頁面清除/秒 | 每秒從緩衝池擴充檔案收回的頁面數目。 |
| 擴展頁面讀取次數/秒 | 每秒從緩衝池擴充檔案讀取的頁數。 |
| 擴充功能頁面未參考的時間 | 頁面在緩衝池擴充功能中停留的平均秒數,而不會參考該頁面。 |
| 擴充功能頁面 writes/sec | 每秒寫入緩衝池擴充檔案的頁數。 |
| 空閒列表停滯/秒 | 指出每秒必須等候免費頁面的要求數目。 |
| Lazy writes/sec | 指出緩衝區管理員延遲寫入器每秒寫入的緩衝區數目。 延遲寫入器是一個系統進程,會排清出一批骯髒的過時緩衝區(緩衝區,其中包含必須回寫到磁碟的變更,才能將緩衝區重複使用給不同的頁面),並讓它們可供用戶進程使用。 延遲寫入器不需要執行頻繁的檢查點,才能建立可用的緩衝區。 |
| 頁面預期壽命 | 指示頁面在緩衝池中保持不被引用的秒數。 |
| 頁面查閱/秒 | 指出每秒在緩衝池中尋找頁面的要求數目。 |
| Page reads/sec | 指出每秒發出的實體資料庫頁面讀取數目。 此統計數據會顯示所有資料庫的實體頁面讀取總數。 因為實體 I/O 成本很高,因此您可以使用較大的數據快取、智慧型索引和更有效率的查詢,或變更資料庫設計,將成本降到最低。 |
| 每秒頁面寫入 | 表示每秒發出的實際資料庫頁面寫入數量。 |
| 預讀頁面/秒 | 指出預期使用時每秒讀取的頁面數目。 |
另請參閱
SQL Server:Buffer Node
伺服器記憶體伺服器組態選項
SQL Server,Plan Cache 物件
監視資源使用狀況 (系統監視器)
sys.dm_os_performance_counters (Transact-SQL)
緩衝集區擴充