SQL Server Index Tuning


Initially miniDBA displays total index usage data as seen below. It tells you how many times types of operation have been performed on the index and the last time at which these operations occured. This view gives you the ability to see what the most used and unused indexes are which leads to be able to identify important indexes.
The query used for this view is lightweight and refreshing using the refresh button will put negligable load on the server.
SQL Server index use by operation type and time

Aside from the table and index name the following columns are included:
  • Type (Index Type - clustered/nonclustered/heap)
  • Total User Operations (total of all operations performed on the index)
  • User Seeks (total seek operations performed on the index)
  • User Scans (total scan operations performed on the index)
  • User Lookups (total lookup operations performed on the index)
  • User Updates (total update operations performed on the index)
  • Last User Seek (time of last seek)
  • Last User Scan (time of last scan)
  • Last User Lookup (time of last lookup)
  • Last User Update (time of last update)

These columns give a clear picture of how each index is used and if there are any indexes that have not been used for a long period of time. Dropping/replacing rarely used index with better alternatives is a key piece of index tuning.
Indexes with extremely high numbers of operation may be performance bottlenecks and may benefit from investigation to see if the query that uses them would be more effecient with a new index designed specifically for that query.

Live Index Usage

The Current Usage tab is a live updating grid that displays real-time index usage. This is highly useful when diagnosing what indexes slow operations are actually using. The grid can be paused to keep results on the screen for analysis.
Often unexpected index usage can be seen in this view, indexes that were presumed to be supporting queries are unused and this leads to significant performance gains when rectified.

SQL Server index use by operation type and time

Unused & Missing Indexes

Unused (indexes that have not been used since server restart or the database was restored) and missing index (indexes that may be helpful) information can be seen under the other 2 tabs.

SQL Server unused indexes