بدست آورد سایز ایندکسها در پایگاه داده SQL Server

در این مقاله ، من یک اسکریپت T-SQL را برای بدست اندازه ایندکس ها در SQL Server به اشتراک می گذارم. اولین قدم برای بهینه سازی عملکرد پرس و جوهای پایگاه داده ، اندازه گیری حجم جداول و ایندکس ها است که به شما کمک می کند اطلاعات بیشتری درباره ایندکس گذاری داشته باشید.
SELECT
	OBJECT_SCHEMA_NAME(i.OBJECT_ID) AS SchemaName
	,OBJECT_NAME(i.OBJECT_ID) AS TableName
	,i.name AS IndexName
	,8 * SUM(au.used_pages) AS IndexSizeInKB
	,8 * SUM(au.used_pages)/1024 AS IndexSizeInMB
FROM sys.indexes AS i
JOIN sys.partitions AS p 
	ON p.OBJECT_ID = i.OBJECT_ID 
		AND p.index_id = i.index_id
JOIN sys.allocation_units AS au 
	ON au.container_id = p.partition_id
GROUP BY 
	i.OBJECT_ID
	,i.index_id
	,i.name
ORDER BY 8 * SUM(au.used_pages) desc ,OBJECT_NAME(i.OBJECT_ID),i.index_id
خروجی:
