Análisis de exploración con el Asistente para la optimización de motor de base de datos

Los administradores de bases de datos pueden utilizar el Asistente para la optimización de motor de base de datos para realizar análisis de exploración. El análisis de exploración utiliza una combinación de optimización manual y optimización asistida por herramientas. Para realizar análisis de exploración con el Asistente para la optimización de motor de base de datos, utilice la característica de configuración especificada por el usuario. La característica de configuración especificada por el usuario le permite especificar opciones para optimizar configuraciones de estructuras de diseño físico existentes e hipotéticas, como ííndices, vistas indizadas y particiones. La ventaja de especificar estructuras hipotéticas consiste en que puede evaluar las consecuencias sobre las bases de datos sin incurrir en la sobrecarga que supone tener que implementarlas primero.

Aunque tanto la interfaz gráfica de usuario (GUI) del Asistente para la optimización de motor de base de datos como la utilidad de línea de comandos dta admiten el análisis de exploración, dta ofrece una mayor flexibilidad, puesto que puede utilizar un archivo de entrada XML. Este archivo de entrada XML usa el esquema XML del Asistente para la optimización de motor de base de datos, un esquema publicado que puede descargar desde Esquema XML del Asistente para la optimización de motor de base de datos.

Después de ir a esta dirección URL, desplácese por las filas de la tabla hasta encontrar el vínculo al esquema del Asistente para la optimización de motor de base de datos. La dirección URL exacta del esquema se encuentra en la columna adyacente. Este esquema XML admite la especificación de configuraciones hipotéticas para el análisis evaluadas de forma aislada o configuraciones hipotéticas evaluadas en relación con la configuración actual. En comparación, la interfaz gráfica de usuario del Asistente para la optimización de motor de base de datos sólo admite la evaluación de un subconjunto de estructuras de una recomendación generada por el Asistente para la optimización de motor de base de datos.

Dos modos de análisis de exploración

El análisis de exploración se puede realizar en cualquiera de los dos modos siguientes con el Asistente para la optimización de motor de base de datos:

  • Modo de evaluación

    En el modo de evaluación, el Asistente para la optimización de motor de base de datos compara el costo de la configuración actual (C) con el de una configuración especificada por el usuario (U), para la misma carga de trabajo. C siempre es una configuración real porque consta de estructuras de diseño físico que existen actualmente en la base de datos. En comparación, U es una configuración que consta de estructuras de diseño físico reales e hipotéticas. Si el Asistente para la optimización de motor de base de datos indica que el costo de U es inferior al de C, es probable que el diseño físico de U tenga un mejor rendimiento que el de C.

    Por ejemplo, el modo de evaluación resulta útil en las situaciones siguientes:

    • Un administrador desea determinar las consecuencias sobre el rendimiento de la adición de un índice no agrupado a una tabla.

    • Un administrador ha completado el Asistente para la optimización de motor de base de datos para optimizar una base de datos y ha recibido la recomendación (R). Después de revisar R, el administrador desea ajustar R modificándola. Por ejemplo, desea agregar dos ííndices no agrupados y eliminar uno de los índices no agrupados que formaban parte de R. Después de modificar R, el administrador utiliza la recomendación modificada como datos de entrada para el Asistente para la optimización de motor de base de datos y realiza la optimización de nuevo para medir las consecuencias de las modificaciones sobre el rendimiento.

  • Modo de optimización

    En el modo de optimización, un administrador de base de datos ya sabe qué parte del diseño físico de la base de datos debe corregirse, pero desea que el Asistente para la optimización de motor de base de datos recomiende las mejores estructuras de diseño físico para el resto de la configuración.

    Por ejemplo, el modo de optimización resulta útil en las situaciones siguientes:

    • Un administrador de base de datos sabe que deben crearse particiones de una tabla de hechos porque ésta es demasiado grande. El administrador debe elegir entre crear las particiones por mes o por trimestre. Cualquiera de las dos formas funcionaría, pero el administrador desea elegir el método de partición que ofrezca el mejor rendimiento para una carga de trabajo determinada. Para determinar cuál es el mejor método de partición, el administrador puede utilizar el Asistente para la optimización de motor de base de datos para optimizar la carga de trabajo dos veces. Primero, el administrador optimiza la carga de trabajo por medio de una configuración especificada por el usuario con las particiones de la tabla creadas hipotéticamente por mes. A continuación, el administrador optimiza la carga de trabajo con las particiones de la tabla creadas hipotéticamente por trimestre. Después de optimizar la carga de trabajo con las dos configuraciones hipotéticas, el administrador puede comparar el porcentaje de mejora para determinar el método de partición que ofrecerá el mejor rendimiento.

    • Una tabla Orders debe tener un ííndice agrupado en la columna ship_date. El administrador de la base de datos desea determinar el mejor conjunto de índices no agrupados para la tabla Orders. Puede corregir parcialmente el diseño físico de la base de datos especificando una configuración definida por el usuario que tenga un ííndice agrupado en la columna ship_date de la tabla Orders. A continuación, puede utilizar el Asistente para la optimización de motor de base de datos en el modo de optimización para determinar las consecuencias de la configuración especificada por el usuario sobre el rendimiento.

Comparar dos configuraciones para una carga de trabajo concreta

Un escenario habitual es la comparación de dos configuraciones distintas para una carga de trabajo concreta. Por ejemplo, el Asistente para la optimización de motor de base de datos recomienda una determinada configuración y el administrador desea ver qué consecuencias tendría la utilización de una configuración ligeramente distinta. Para comparar la configuración nueva con la original usando la misma carga de trabajo, es importante utilizar la utilidad de línea de comandos dta en lugar de la interfaz gráfica de usuario, puesto que la utilidad de línea de comandos permite especificar la cantidad de eventos de carga de trabajo que el Asistente para la optimización de motor de base de datos debe optimizar (con la opción -n). Si especifica el mismo número de eventos que el Asistente para la optimización de motor de base de datos debe optimizar por cada configuración, se asegura de que las dos sesiones de optimización son equivalentes y que, por consiguiente, se pueden comparar. Esto es importante, ya que es posible que el Asistente para la optimización de motor de base de datos no optimice toda la carga de trabajo dentro del plazo especificado. Para obtener más información, vea dta (utilidad) y Cómo optimizar una base de datos mediante la utilidad dta.

Consideraciones sobre el uso de una configuración especificada por el usuario

Tenga en cuenta lo siguiente:

  • Las configuraciones especificadas por el usuario pueden constar de los objetos de diseño físico siguientes: ííndices, vistas indizadas, particiones de ííndices y vistas indizadas, y estadísticas.

  • Puede utilizar la GUI del Asistente para la optimización de motor de base de datos para importar una configuración especificada por el usuario a una sesión de optimización. Para importar una configuración, en el menú Archivo, haga clic en Importar definición de sesión.

  • También puede utilizar la GUI del Asistente para la optimización de motor de base de datos para seleccionar un subconjunto de índices de una de sus recomendaciones e iniciar una nueva sesión con este subconjunto seleccionado de la configuración recomendada para su evaluación.

Limitaciones de la configuración especificada por el usuario

Las configuraciones especificadas por el usuario tienen las limitaciones siguientes:

  • La especificación de la configuración deberá ajustarse al esquema XML del Asistente para la optimización de motor de base de datos DTAschema.xsd, que se encuentra en este sitio web de Microsoft.

  • La configuración no debe especificar que se agregue un índice o una vista indizada ya existente a la base de datos.

  • La configuración no debe contener ninguna vista en la que no se puedan crear ííndices.

  • La configuración no debe intentar quitar un ííndice que no exista o que exija una restricción (por ejemplo, una restricción PRIMARY KEY o UNIQUE).

  • La configuración no puede crear y quitar un mismo ííndice. Por ejemplo, no se puede crear el ííndice I en la tabla T y luego quitarlo. Tampoco se puede hacer lo contrario: quitar el ííndice I de la tabla T y luego volver a crearlo.