sys.dm_db_column_store_row_group_operational_stats (Transact-SQL)

適用於: SQL Server 2016 (13.x) 和更新版本 Azure SQL DatabaseAzure 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 重新開機之後,資料庫引擎在此資料列群組鎖定上等候的累計毫秒數。

注意

SQL Server 文件通常會使用「B 型樹狀結構」一詞來指稱索引。 在資料列存放區索引中,SQL Server 會實作 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)