ฉันใช้สคริปต์นี้เพื่อพยายามค้นหาดัชนีที่ไม่เกี่ยวข้อง
select o.name as TableName, i.name as IndexName, p.reserved_page_count * 8.0 / 1024 as SpaceInMB, s.*
from sys.dm_db_index_usage_stats s
inner join sys.objects o on s.object_id = o.object_id
inner join sys.indexes i on i.index_id = s.index_id and i.object_id = o.object_id
inner join sys.dm_db_partition_stats p on i.index_id = p.index_id and o.object_id = p.object_id
where o.name = ‘TableName’
ฉันรู้ว่าเมื่อ last_user_seek / scan / ค้นหาเป็นโมฆะทั้งหมดไม่มีผู้ใช้ที่ใช้ดัชนีตั้งแต่รีสตาร์ทครั้งล่าสุด แต่ฉันสงสัยว่า system_scans / การค้นหา / การค้นหา ... คืออะไร? เพราะในตารางหนึ่งฉันพบ 5 ที่ไม่มีกิจกรรมของผู้ใช้ แต่มีกิจกรรมของระบบเมื่อ 10 วันที่แล้ว ใครบ้างมีความเข้าใจในสิ่งที่ระบบสแกน / แสวงหา / การค้นหาอาจจะ? ตารางเหล่านี้ดูเหมือนมีการทำดัชนีมากเกินไปและฉันต้องการตัดไขมัน