Select Page

Investigating Missing SQL Indexes to Increase Performance

Author: Eric Russo | 3 min read | December 12, 2013

If your organization uses a relational database, chances are it relies on an SQL server.

Although there are companies with products bearing this name, here we use the term generically for those database management systems able to respond to queries from client machines that are formatted in SQL.

If you’re trying to troubleshoot or take on some performance tuning for your SQL server database, one of the issues may result from missing indexes.

An index stores data in the database logically. Indexes can be used for optimizing operations. They can, for example, be created across partitions. These different choices contribute to the database’s performance. A database administrator with a good understanding of how indexes work enables that administrator to improve database response time and performance as well as the end-user’s experience.

So why not insure your database is fully indexed from the outset? Microsoft’s Tom Mills explains:

“Over-indexing a database table can lead to bigger performance problems such as having to update more indexes during write operations. The Missing Indexes report is useful for identifying candidates for new indexes. Index tuning is still a practice that requires as much art as automation.”

You should be able to easily determine those missing indexes by using dynamic management views (DMV). From this point, proceed with care to prevent compounding the problem by adding indexes. SQL Server Pro advises:

“Don’t just take the information from the DMVs and create all the specified indexes. The reported indexes should be compared against the indexes that already exist in the database to ensure that duplicate indexes aren’t being created. Duplicate indexes can lead to additional writes, updates, and deletes, causing performance problems.”

Running a query is a better strategy for evaluating missing indexes. This approach pinpoints the issue on the specific database on which the query is being run. Mills adds:

“The Missing Indexes report can be useful to sift through the data in the missing indexes DMVs to find the top 10 or 20 necessary missing indexes. Be aware that the missing index process can potentially generate a lot of data. Many production databases will rack up several hundred missing indexes within a day or so of operation.”

As Kimberly L. Tripp, writing on, observes, “[I]ndexing for performance is really about finding the right balance between too many and too few indexes, as well as trying to get more from the indexes that you do keep.”

Want to optimize your organization’s SQL server’s indexes and need experienced assistance? We can help you evaluate and fine-tune your database performance. Datavail experts can answer questions about your challenges by phone, but we are also available 24x7x365 through our online chat system.

How to Solve the Oracle Error ORA-12154: TNS:could not resolve the connect identifier specified

The “ORA-12154: TNS Oracle error message is very common for database administrators. Learn how to diagnose & resolve this common issue here today.

Vijay Muthu | February 4, 2021

PostgreSQL vs. Oracle: Let’s Compare

Discover some key differences between PostgreSQL vs Oracle that can help you make an informed decision when deciding on a database management system.

Vijay Muthu | March 30, 2021

Oracle RMAN Backup and Recovery with Restore Points

Oracle restore points are useful for benchmark testing. Find out how you can use Oracle’s Recovery Manager (RMAN) tool to create and use restore points.

Cindy Putnam | May 3, 2019

Subscribe to Our Blog

Never miss a post! Stay up to date with the latest database, application and analytics tips and news. Delivered in a handy bi-weekly update straight to your inbox. You can unsubscribe at any time.

Work with Us

Let’s have a conversation about what you need to succeed and how we can help get you there.


Work for Us

Where do you want to take your career? Explore exciting opportunities to join our team.