sys.dm_xtp_gc_stats (Transact-SQL)
提供 In-Memory OLTP 記憶體回收處理序目前行為的相關資訊 (整體統計資料)。
資料列會在一般交易處理過程中進行記憶體回收,或是由主要記憶體回收執行緒回收,這稱為閒置工作者。 當使用者交易認可時,它會從記憶體回收佇列中清除一個工作項目的佇列 (sys.dm_xtp_gc_queue_stats (Transact-SQL))。 可以進行記憶體回收但是無法由主要使用者交易存取的任何資料列都會由閒置工作者在塵封角落掃描 (掃描不常存取之索引的區域) 時進行記憶體回收。
如需詳細資訊,請參閱<In-Memory OLTP (記憶體中最佳化)>。
適用於:SQL Server (SQL Server 2014 至目前版本)。 |
資料行名稱 |
類型 |
描述 |
---|---|---|
rows_examined |
bigint |
自從伺服器啟動之後記憶體回收子系統所檢查的資料列數。 |
rows_no_sweep_needed |
bigint |
沒有塵封角落掃描的情況下移除的資料列數。 |
rows_first_in_bucket |
bigint |
記憶體回收所檢查的資料列數,這些資料列為雜湊值區中的第一個資料列。 |
rows_first_in_bucket_removed |
bigint |
記憶體回收所檢查的資料列數,這些資料列為雜湊值區中已移除的第一個資料列。 |
rows_marked_for_unlink |
bigint |
記憶體回收所檢查的資料列數,這些資料列在其索引中已標示為未連結,且參考計數 =0。 |
parallel_assist_count |
bigint |
由使用者交易處理的資料列數。 |
idle_worker_count |
bigint |
閒置工作者所處理的廢棄資料列數目。 |
sweep_scans_started |
bigint |
記憶體回收子系統所執行的塵封角落掃描次數。 |
sweep_scans_retries |
bigint |
記憶體回收子系統所執行的塵封角落掃描次數。 |
sweep_rows_touched |
bigint |
塵封角落處理所讀取的資料列。 |
sweep_rows_expiring |
bigint |
塵封角落處理所讀取的過期資料列。 |
sweep_rows_expired |
bigint |
塵封角落處理所讀取的已過期資料列。 |
sweep_rows_expired_removed |
bigint |
塵封角落處理所移除的已過期資料列。 |
權限
需要執行個體上的 VIEW SERVER STATE 權限。
使用案例
下面是範例輸出:
rows_examined rows_no_sweep_needed rows_first_in_bucket rows_first_in_bucket_removed
280085 209512 69905
rows_first_in_bucket_removed rows_marked_for_unlink parallel_assist_count idle_worker_count
69905 0 8953
idle_worker_count sweep_scans_started sweep_scan_retries sweep_rows_touched
10306473 670 0 1343
sweep_rows_expiring sweep_rows_expired sweep_rows_expired_removed
0 673673