Características del Asistente para la optimización de motor de base de datos

El Asistente para la optimización de Database Engine (Motor de base de datos) proporciona características nuevas que permiten tanto a los administradores de bases de datos inexpertos como a los experimentados optimizar bases de datos con el fin de mejorar el rendimiento de las consultas. En las secciones siguientes se presentan y describen las características nuevas del Asistente para la optimización de Database Engine (Motor de base de datos):

Análisis de carga de trabajo mejorado

  • Administra lotes que hacen referencia a tablas transitorias, por ejemplo, tablas temporales.

  • No termina la optimización, puesto que no puede analizar un evento. Por el contrario, registra el evento en el registro de optimización y continúa con la optimización de otros eventos.

  • Analiza y optimiza consultas que hacen referencia a funciones definidas por el usuario.

  • Administra todas las instrucciones USE de una traza, lo que es vital a la hora de optimizar varias bases de datos.

  • Utiliza la columna LoginName de la carga de trabajo (si está disponible en las cargas de trabajo de la traza) para optimizar correctamente el evento en el contexto del usuario que lo ejecuta.

  • Optimiza las instrucciones de los desencadenadores.

Escalabilidad mejorada

  • Utiliza compresión de la carga de trabajo, lo que permite al Asistente para la optimización de Database Engine (Motor de base de datos) reducir la cantidad de tiempo empleada en la optimización y producir resultados de recomendación de alta calidad para la optimización.

  • Utiliza un algoritmo para evitar la creación de estadísticas redundantes, lo que reduce el número de E/S durante la optimización.

Optimización integrada

El Asistente para la optimización de Database Engine (Motor de base de datos) puede tener en cuenta las compensaciones de rendimiento que ofrecen los diversos tipos de estructuras de diseño físico (índices, vistas indizadas y particionamiento), incluidos los índices filtrados. Las diferentes estructuras pueden superponerse en su capacidad de reducir los costos de ejecución de una consulta concreta, de modo que el disponer de la capacidad de tener en cuenta una configuración integrada de varias estructuras de diseño permite al Asistente para la optimización de Database Engine (Motor de base de datos) ofrecer recomendaciones de más calidad. Por ejemplo, el hecho de que se consideren únicamente los ííndices agrupados de un conjunto de tablas y, a continuación, las particiones del intervalo horizontal del mismo conjunto, no nos dice cómo funcionan conjuntamente las dos estructuras de diseño físico. Para comprender cómo funcionan conjuntamente, es necesario que la herramienta de optimización realice una optimización integrada.

Optimización de varias bases de datos

Las aplicaciones suelen obtener acceso a varias bases de datos para realizar su trabajo, por lo que las cargas de trabajo suelen hacer referencia a objetos de varias bases de datos. El Asistente para la optimización de Database Engine (Motor de base de datos) puede optimizar simultáneamente varias bases de datos, a diferencia del Asistente para optimización de ííndices de MicrosoftSQL Server 2000. Los usuarios pueden especificar un conjunto de bases de datos para optimizar; el Asistente para la optimización de Database Engine (Motor de base de datos) hace recomendaciones para todas las bases de datos seleccionadas. Para obtener más información acerca de esta característica, vea Optimizar varias bases de datos.

Descarga de la sobrecarga de optimización a un servidor de prueba

La optimización de una carga de trabajo grande puede crear una sobrecarga importante en el servidor que se está optimizando. Esto se debe a que el Asistente para la optimización de Database Engine (Motor de base de datos) suele necesitar realizar varias llamadas al optimizador de consultas durante el proceso de optimización. El uso de un servidor de prueba además del servidor de producción elimina este problema.

En este escenario, se optimiza un servidor de prueba, lo que duplica el entorno del servidor de producción. Después de obtener una recomendación de configuración del diseño de la base de datos como resultado de la optimización del servidor de prueba, puede implementar dicha recomendación en el servidor de producción durante el mantenimiento.

La manera tradicional de utilizar un servidor de prueba es copiar todos los datos del servidor de producción en él, optimizarlo y, a continuación, ajustar la recomendación resultante para las diferencias de hardware entre los dos equipos. El Asistente para la optimización de Database Engine (Motor de base de datos) puede aprovecharse del uso de un servidor de prueba sin necesidad de copiar los datos en él ni de que los dos conjuntos de hardware sean idénticos, lo que ahorra tiempo y recursos. Por el contrario, el Asistente para la optimización de Database Engine (Motor de base de datos) importa los metadatos, las estadísticas y los parámetros de hardware del servidor de producción al de prueba. A continuación, el Asistente para la optimización de Database Engine (Motor de base de datos) realiza la mayor parte de las operaciones de optimización en el servidor de prueba. Los resultados se pueden implementar en el servidor de producción durante el mantenimiento normal. Para obtener más información acerca de esta característica, vea Reducir la carga de optimización del servidor de producción.

Utilidad del símbolo del sistema y herramienta de interfaz gráfica de usuario

El Asistente para la optimización de Database Engine (Motor de base de datos) proporciona las dos interfaces de usuario siguientes:

  • Una utilidad del símbolo del sistema dta para facilitar la incorporación de los Scripts a la funcionalidad del Asistente para la optimización de Database Engine (Motor de base de datos).

  • Una herramienta de interfaz gráfica de usuario (GUI) del Asistente para la optimización de Database Engine (Motor de base de datos) que facilita la visualización de las sesiones y los resultados de la optimización.

Optimización sólo para quitar

A lo largo del tiempo, las estructuras de diseño físico se pueden acumular en una base de datos. Los administradores de bases de datos necesitan una forma de quitar las estructuras que ya no resultan útiles. La opción de optimización sólo para quitar resulta útil para identificar estructuras de diseño físico existentes que ya no se utilicen o que ofrezcan un beneficio mínimo para una carga de trabajo concreta. Esta opción de optimización se puede especificar mediante el argumento –fx cuando se utiliza la utilidad del símbolo del sistema dta. Si se utiliza la GUI, esta opción se puede especificar mediante Evaluar utilización sólo de estructuras de diseño físico (PDS) existentes de la ficha Opciones de optimización.

Con esta opción, el Asistente para la optimización de Database Engine (Motor de base de datos) nunca propone estructuras nuevas, por lo que no se puede utilizar con otras opciones que agreguen índices, vistas indizadas o particiones. Tampoco se puede utilizar con la opción para conservar todas las estructuras existentes. Para obtener más información acerca de las opciones de optimización que se pueden utilizar con el Asistente para la optimización de Database Engine (Motor de base de datos), vea Opciones de optimización disponibles.

Compatibilidad con XML

Todas las operaciones de optimización que puede realizar con la interfaz gráfica de usuario (GUI) del Asistente para la optimización de Database Engine (Motor de base de datos) y la utilidad del símbolo del sistema dta pueden definirse en un archivo de entrada XML del Asistente para la optimización de Database Engine (Motor de base de datos). El archivo de entrada XML usa el esquema XML publicado del Asistente para la optimización de Database Engine (Motor de base de datos), que se encuentra en la siguiente ubicación del directorio de instalación de MicrosoftSQL Server:

C:\Archivos de programa\Microsoft SQL Server\100\Tools\Binn\schemas\sqlserver\2004\07\dta\dtaschema.xsd

También puede descargar el esquema del Asistente para la optimización de motor de base de datos.

El uso de un archivo de entrada XML permite utilizar las herramientas XML que desee al optimizar bases de datos, además de proporcionar más flexibilidad a los administradores de bases de datos experimentados. Por ejemplo, al utilizar un archivo de entrada XML, puede especificar una configuración de estructuras de diseño físico existentes e hipotéticas (índices, vistas indizadas y particiones) y, a continuación, utilizar la utilidad del símbolo del sistema dta para optimizar una base de datos como si esta configuración ya se hubiera implementado. Esto permite el uso de análisis de escenarios condicionales sin incurrir en la sobrecarga que supone implementar la configuración nueva antes de optimizar. Para obtener más información acerca de la compatibilidad con XML del Asistente para la optimización de Database Engine (Motor de base de datos), vea Referencia del archivo de entrada XML (Asistente para la optimización de motor de base de datos), Usar un archivo de entrada XML para la optimización y Análisis de exploración con el Asistente para la optimización de motor de base de datos.

Configuración especificada por el usuario y compatibilidad con el análisis de escenarios condicionales

El Asistente para la optimización de Database Engine (Motor de base de datos) permite a los usuarios proporcionar una configuración hipotética de estructuras de diseño físico (ííndices, vistas indizadas y estrategias de partición) como entrada de optimización. A continuación, se puede optimizar la base de datos como si la configuración ya se hubiera implementado. Esto permite realizar un análisis de escenarios condicionales en un conjunto concreto de estructuras de diseño físico antes de incurrir en la sobrecarga que supone implementarlas. Esta característica es completamente compatible con el esquema XML del Asistente para la optimización de Database Engine (Motor de base de datos). Puede especificar la configuración que desea evaluar en el archivo de entrada XML y, a continuación, usar la utilidad del símbolo del sistema dta para iniciar la sesión de optimización. Para obtener más información acerca de esta característica, vea Análisis de exploración con el Asistente para la optimización de motor de base de datos.

Informes de análisis

Tras finalizar la sesión de optimización, el Asistente para la optimización de Database Engine (Motor de base de datos) genera varios informes de análisis en texto o en XML. Estos informes proporcionan información como el costo de las consultas de la carga de trabajo, la frecuencia de los eventos de la carga de trabajo o las relaciones entre las consultas y los ííndices a los que hacen referencia. Puede utilizar la GUI del Asistente para la optimización de Database Engine (Motor de base de datos) o el editor XML que desee para abrir los informes generados en XML. Para obtener más información acerca de los informes de análisis que genera el Asistente para la optimización de Database Engine (Motor de base de datos), vea Elegir un informe del Asistente para la optimización de motor de base de datos.

Sesiones de optimización

Antes de que pueda comenzar el análisis, el Asistente para la optimización de Database Engine (Motor de base de datos) le pide que cree un nombre o un número único para identificar la sesión de optimización. Tras analizar una carga de trabajo o si se detiene el análisis, el Asistente para la optimización de Database Engine (Motor de base de datos) guarda la información de la sesión de optimización y la asocia al identificador proporcionado antes de su inicio. Puede utilizar este identificador de la sesión para volver a cargar una sesión existente en la GUI del Asistente para la optimización de Database Engine (Motor de base de datos) y revisar los resultados y los informes de optimización en esta ubicación. Las sesiones de optimización facilitan la comparación de los resultados de la optimización a lo largo de un período de tiempo. Para obtener más información acerca del uso de las sesiones de optimización, vea Usar el Monitor de sesión para evaluar las recomendaciones de optimización.

Características disponibles únicamente con la utilidad dta

Las opciones de optimización especificadas en las siguientes secciones no están disponibles en la actualidad cuando se utiliza la GUI del Asistente para la optimización de Database Engine (Motor de base de datos).

Desde un símbolo del sistema o con un archivo de entrada XML

Si ejecuta la utilidad dta desde un símbolo del sistema o si utiliza un archivo de entrada XML con la utilidad mediante el argumento del símbolo del sistema -ix, puede especificar:

  • Un registro de optimización por nombre (argumento del símbolo del sistema -e o elemento TableName).

  • El número de eventos que se deben optimizar (argumento del símbolo del sistema -n o elemento NumberOfEvents).

  • El número máximo de columnas de clave de índice que puede proponer el Asistente para la optimización de Database Engine (Motor de base de datos) (argumento del símbolo del sistema -c o elemento MaxKeyColumnsInIndex).

  • La mejora mínima que propondrá el Asistente para la optimización de Database Engine (Motor de base de datos) para una configuración recomendada (argumento del símbolo del sistema -m o elemento MinPercentageImprovement).

Con un archivo de entrada XML

Además de las características anteriores, cuando utilice un archivo de entrada XML con la utilidad dta, también podrá:

  • Usar el escenario de servidor de prueba/servidor de producción, que incluye la creación de una base de datos de shell en un servidor de prueba (elemento TestServer).

  • Especificar una carga de trabajo insertada en el archivo de entrada XML (elemento EventString).

  • Omitir constantes en una carga de trabajo (elemento IgnoreConstantsInWorkload).

Desde un símbolo del sistema

Además de las características anteriores, cuando ejecute la utilidad dta desde un símbolo del sistema, también podrá:

  • Especificar el modo silencioso, en el que la utilidad se ejecuta sin mostrar ningún mensaje (argumento del símbolo del sistema -q).

  • Optimizar y aplicar automáticamente las recomendaciones de optimización (argumento del símbolo del sistema -a).