sys.dm_db_xtp_hash_index_stats (Transact-SQL)
這些統計資料有助於了解及調整值區計數。 另外還可用於偵測索引鍵擁有太多重複項目的情況。
大型平均鏈結長度代表有許多資料列會雜湊處理至相同貯體內。 發生這種情況可能是因為:
如果空貯體的數目較低或平均和最大鏈結長度類似,總值區計數就可能過低。 這樣會導致將許多不同的索引鍵雜湊處理至相同貯體。
如果空貯體的數目較高或最大鏈結長度相對於平均鏈結長度而言較高,則可能有許多資料列包含重複的索引鍵值,或是索引鍵值扭曲。 所有具有相同索引鍵值的資料列都會雜湊處理為相同貯體,因此該貯體會擁有很長的鏈結長度。
較長的鏈結長度可能對個別資料列上所有 DML 作業的效能造成相當大的影響,包括 SELECT 和 INSERT。 鏈結長度較短且空的值區計數較高時,表示 bucket_count 太高。 這樣會降低索引掃描的效能。
sys.dm_db_xtp_hash_index_stats 會掃描整個資料表。 因此,如果您的資料庫中有大型資料表,則 sys.dm_db_xtp_hash_index_stats 可能要花很長的時間執行。
如需詳細資訊,請參閱<判斷雜湊索引的正確值區計數>。
適用於:SQL Server (SQL Server 2014 至目前版本)。 |
資料行名稱 |
類型 |
描述 |
---|---|---|
object_id |
int |
父資料表的物件識別碼。 |
index_id |
int |
索引識別碼。 |
total_bucket_count |
bigint |
索引中雜湊值區的總數。 |
empty_bucket_count |
bigint |
索引中空雜湊值區的數目。 |
avg_chain_length |
bigint |
索引中所有雜湊值區的平均資料列鏈結長度。 |
max_chain_length |
bigint |
雜湊值區中資料列鏈結的最大長度。 |
權限
需要伺服器的 VIEW DATABASE STATE 權限。