- Here is a good article que va más busca y escaneos (e índices en general). Será probablemente haga un mejor trabajo que cualquier publicación SO .
- Puede ser un poco de una forma de arte determinar si necesita un índice o no. Si esos 88 busca , tome las consultas de informes absolutamente esenciales desde un tiempo de ejecución de 3 horas hasta 30 segundos y luego guárdelas. Creo que el primer paso sería averiguar qué consultas los están usando, cuánto ayudan los índices a esas consultas y qué tan importantes son esas consultas.
snipit del artículo (sin duda le dan una lectura sin embargo):
exploraciones
Un recorrido de índice es una lectura completa de todas las páginas hoja del índice. Cuando se realiza un escaneo de índice en el índice agrupado, se trata de un escaneo de tabla en todo menos en el nombre.
Cuando el procesador de consultas realiza un escaneo de índice, siempre es una lectura completa de todas las páginas de hoja del índice, independientemente de si se devuelven todas las filas. Nunca es un escaneo parcial.
Un escaneo no solo implica la lectura de los niveles de hoja del índice, las páginas de más alto nivel también se leen como parte del escaneo de índice.
Busca la
Una búsqueda de índice es una operación en SQL utiliza la estructura de árbol B de localizar ya sea un valor específico o el comienzo de una gama de valor. Para que un índice intente ser posible, debe haber un predicado SARGable3 especificado en la consulta y un índice correspondiente (o parcialmente coincidente). Un índice coincidente es uno en el que el predicado de consulta utilizó un subconjunto basado en la izquierda de las columnas de índice. Esto se examinará con mucho más detalle en la parte 3 de esta serie.
La operación de búsqueda se evalúa comenzando por la página raíz. Usando las filas en la página raíz, el procesador de consultas ubicará qué página en el siguiente nivel inferior del índice contiene la primera fila que se está buscando. Luego leerá esa página. Si ese es el nivel de la hoja del índice, la búsqueda termina allí. Si no es la hoja, el procesador de consultas identifica nuevamente qué página del siguiente nivel inferior contiene el valor especificado. Este proceso continúa hasta que se alcanza el nivel de la hoja.
Una vez que el procesador de consultas ha localizado la hoja que contiene el valor de clave especificado o el comienzo del rango especificado de valores clave, lee a lo largo de las páginas hasta que se devuelven todas las filas que coinciden con el predicado.