sys.dm_db_column_store_row_group_operational_stats (Transact-SQL)
適用於:SQL Server 2016 (13.x) 和更新版本 Azure SQL 資料庫 Azure SQL 受控執行個體
傳回數據行存放區索引中壓縮數據列群組的目前數據列層級 I/O、鎖定和存取方法活動。 使用 sys.dm_db_column_store_row_group_operational_stats 來追蹤使用者查詢必須等候讀取或寫入至數據行存放區索引壓縮數據列群組或分割區的時間長度,並識別遇到大量 I/O 活動或熱點的數據列群組。
記憶體內部數據行存放區索引不會出現在此 DMV 中。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
object_id | int | 具有數據行存放區索引的數據表標識符。 |
index_id | int | 數據行存放區索引的識別碼。 |
partition_number | int | 索引或堆積內的1個分割區編號。 |
row_group_id | int | 數據行存放區索引中數據列群組的標識碼。 這是分割區中唯一的。 |
scan_count | int | 自上次 SQL 重新啟動之後,透過資料列群組進行掃描次數。 |
delete_buffer_scan_count | int | 刪除緩衝區用來判斷此數據列群組中已刪除的數據列的次數。 這包括存取記憶體內部哈希表和基礎 B 型樹狀結構。 |
index_scan_count | int | 掃描數據行存放區索引分割的次數。 這與分割區中的所有數據列群組相同。 |
rowgroup_lock_count | bigint | 自上次 SQL 重新啟動之後,此數據列群組的鎖定要求累計計數。 |
rowgroup_lock_wait_count | bigint | 自上次 SQL 重新啟動之後,資料庫引擎在此數據列群組鎖定上等候的累計次數。 |
rowgroup_lock_wait_in_ms | bigint | 自上次 SQL 重新啟動之後,資料庫引擎在此數據列群組鎖定上等候的累計毫秒數。 |
注意
文件通常會使用「B 型樹狀結構」一詞來指稱索引。 在資料列存放區索引中,資料庫引擎會實作 B+ 樹狀結構。 這不適用於資料行存放區索引或經記憶體最佳化的資料表。 如需詳細資訊,請參閱 SQL Server 和 Azure SQL 索引架構和設計指南。
權限
需要下列權限:
object_id所指定數據表的CONTROL許可權。
使用物件通配符 @object_id = NULL,檢視 DATABASE STATE 許可權可傳回資料庫內所有物件的相關信息
授與 VIEW DATABASE STATE 允許傳回資料庫中的所有物件,不論特定物件上有任何 CONTROL 許可權遭到拒絕。
拒絕 VIEW DATABASE STATE 不允許傳回資料庫中的所有物件,而不論授與特定物件的任何 CONTROL 許可權為何。 此外,指定資料庫通配符 @database_id=NULL 時,會省略資料庫。
如需詳細資訊,請參閱動態管理檢視和函式(Transact-SQL)。
SQL Server 2022 和更新版本的權限
需要資料庫上的 VIEW DATABASE PERFORMANCE STATE 權限。
另請參閱
動態管理檢視和函數 (Transact-SQL)
索引相關的動態管理檢視和函式 (Transact-SQL)
效能的監視與微調
sys.dm_db_index_physical_stats (Transact-SQL)
sys.dm_db_index_usage_stats (Transact-SQL)
sys.dm_os_latch_stats (Transact-SQL)
sys.dm_db_partition_stats (Transact-SQL)
sys.allocation_units (Transact-SQL)
sys.indexes (Transact-SQL)