Hay optimizadores de bases de datos que se pueden habilitar o adjuntar a las bases de datos para sugerir (y en algunos casos realizar) índices que pueden ayudar.
Sin embargo, en realidad no es un problema trivial, y cuando salieron estas ayudas, los usuarios a veces descubrieron que en realidad ralentizaban sus bases de datos debido a optimizaciones inferiores.
Por último, hay un montón de dinero en la industria para los arquitectos de bases de datos, y prefieren el status quo.
Aún así, las bases de datos son cada vez más inteligentes. Si usa el perfilador de SQL Server con el servidor Microsoft SQL, encontrará formas de acelerar su servidor. Otras bases de datos tienen perfiladores similares, y hay utilidades de terceros para hacer este trabajo.
Pero si usted es el que está escribiendo las consultas, es de esperar que sepa lo suficiente sobre lo que está haciendo para indexar los campos correctos. Si no, entonces tener los índices correctos es probable que el menor de sus problemas ...
-Adam
¡Qué declaración tonta, "los arquitectos de bases de datos prefieren el status quo".Sí, somos un gran cártel que aplaca todo intento de hacer que las bases de datos se auto indexen. Como el dispositivo simple que agregas a tu auto para obtener 100mpg que las compañías petroleras nos ocultan. –
@ Adam Davis: "Pero si usted es el que escribe las consultas, con suerte usted sabe lo que está haciendo para indexar los campos correctos. De lo contrario, tener los índices correctos es probablemente el menor de sus problemas" - no tener los índices correctos describe una buena proporción de todas las bases de datos disponibles ... –
El script SQL simple hereda las propias métricas internas de SQL Server con una lista de índices y el beneficio estimado de crearlas: funciona en 2005, 2008 y 2012: http: //blogs.msdn.com/b/bartd/archive/2007/07/19/are-you-using-sql-s-missing-index-dmvs.aspx –