Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:SQL Server
En este artículo se describe cómo comparar similitudes y diferencias entre los planes de ejecución gráficos reales mediante la característica Comparación de planes de SQL Server Management Studio. Esta característica está disponible a partir de SQL Server Management Studio v16.
Nota:
Los planes de ejecución reales se generan después de que se ejecuten las consultas o lotes de Transact-SQL. Debido a esto, un plan de ejecución real contiene información en tiempo de ejecución, como el número real de filas, las métricas de uso de recursos y las advertencias en tiempo de ejecución (si las hay). Para obtener más información, consulte Mostrar un plan de ejecución real.
La capacidad de comparar planes es algo que los profesionales de bases de datos pueden tener que hacer por motivos de solución de problemas:
- Busque por qué una consulta o lote se ralentizó de repente.
- Comprenda el efecto de una reescritura de consulta.
- Observe cómo un cambio de mejora de rendimiento específico introducido en el diseño de esquema (como un nuevo índice) ha cambiado de forma eficaz el plan de ejecución.
La opción de menú Comparación de planes permite la comparación en paralelo de dos planes de ejecución diferentes, para facilitar la identificación de similitudes y cambios que explican los distintos comportamientos por todos los motivos indicados anteriormente. Esta opción puede comparar entre:
- Dos archivos de plan de ejecución guardados anteriormente (extensión .sqlplan).
- Un plan de ejecución de una consulta guardada anteriormente y un plan de ejecución activo.
- Dos planes de consulta seleccionados en Almacén de datos de consultas.
Sugerencia
La comparación de planes funciona con cualquier archivo .sqlplan, incluso desde versiones anteriores de SQL Server. Además, esta opción habilita una comparación sin conexión, por lo que no es necesario conectarse a una instancia de SQL Server.
Cuando se comparan dos planes de ejecución, las regiones del plan que hacen básicamente lo mismo se resaltan en el mismo color y patrón. Al seleccionar una región colorada en un plan, se centrará el otro plan en el nodo coincidente de ese plan. Todavía puede comparar operadores no coincidentes y nodos de los planes de ejecución, pero en ese caso debe seleccionar manualmente los operadores para comparar.
Importante
Para buscar similitudes, solo se usan los nodos que se considera que cambian la forma del plan. Por lo tanto, puede haber un nodo que no esté coloreado, en medio de dos nodos que se encuentran en la misma subsección del plan. La falta de color en este caso implica que los nodos no se consideraron al comprobar si las secciones son iguales.
Comparación de los planes de ejecución
Abra un archivo de plan de ejecución de consultas guardado anteriormente (
.sqlplan) con el menú Archivo y seleccione Abrir archivo o arrastre un archivo de plan a la ventana de Management Studio. De forma alternativa, si acaba de ejecutar una consulta y elige mostrar su plan de ejecución, vaya a la pestaña Plan de ejecución en el panel de resultados.Haga clic con el botón derecho en un área en blanco del plan de ejecución y seleccione Comparar plan de presentación.
Elija el segundo archivo de plan de consulta con el que le gustaría comparar. El segundo archivo se abre para que pueda comparar los planes.
Los planes comparados abren una nueva ventana de forma predeterminada con una en la parte superior y otra en la parte inferior. La selección predeterminada es la primera aparición de un operador o nodo que es común en los planes comparados, pero que muestra diferencias entre los planes. Todos los nodos y los operadores resaltados existen en ambos planes comparados. Al seleccionar un operador resaltado en los planes superior o izquierdo, se selecciona automáticamente el operador correspondiente en los planes inferior o derecho. Al seleccionar el operador de nodo raíz en cualquiera de los planes comparados (el
SELECTnodo de la imagen siguiente) también se selecciona el operador de nodo raíz correspondiente en el otro plan comparado.Sugerencia
Para alternar la presentación de la comparación de planes de ejecución en paralelo, haga clic con el botón derecho en un área en blanco del plan de ejecución y seleccione Cambiar orientación del divisor.
Todas las opciones de zoom y desplazamiento disponibles para los planes de ejecución funcionan en modo de comparación de plan. Para obtener más información, consulte Mostrar un plan de ejecución real.
También se abre una ventana de propiedades dual en el lado derecho, en el ámbito de la selección predeterminada. Las propiedades que existen en ambos operadores comparados, pero tienen diferencias, están precedidas por el signo no igual (≠) para facilitar la identificación.
La ventana de navegación de comparación Análisis del plan de presentación también se abre en la parte inferior. Hay tres pestañas disponibles:
En la pestaña Opciones de la instrucción, la selección predeterminada es Resaltar operaciones similares y el mismo nodo u operador resaltado en los planes comparados comparte el mismo patrón de color y línea. Navegue entre áreas similares en planes comparados seleccionando en un patrón de cal. También puede resaltar las diferencias en los planes en lugar de las similitudes si selecciona Highlight operations not matching similar segments (Resaltar las operaciones que no coinciden con segmentos similares).
Nota:
De forma predeterminada, los nombres de base de datos se omiten al comparar planes para permitir la comparación de planes capturados para las bases de datos que tienen nombres diferentes, pero comparten el mismo esquema. Por ejemplo, al comparar planes de bases de datos
ProdDByTestDB. Este comportamiento puede cambiarse con la opción Ignorar el nombre de la base de datos al comparar operadores.La pestaña Instrucción múltiple es útil para comparar los planes con varias instrucciones, permitiendo que se compare el par de instrucciones correcto.
En la pestaña Escenarios, puede encontrar un análisis automatizado de algunos de los aspectos más relevantes para examinar en lo que se refiere a las diferencias de estimación de cardinalidad (SQL Server) en los planes comparados. Para cada operador enumerado en el panel izquierdo, el panel derecho muestra detalles sobre el escenario en el vínculo Seleccionar aquí para obtener más información sobre este escenario y posibles motivos para explicar ese escenario.
Si se cierra esta ventana, haga clic con el botón derecho en un área en blanco de un plan comparado y seleccione Opciones de comparación del plan de presentación para volver a abrirse.
Comparación de planes de ejecución en el Almacén de consultas
En el Almacén de consultas, identifique una consulta que tenga más de un plan de ejecución. Para obtener más información sobre escenarios del Almacén de consultas, vea Escenarios de uso del Almacén de consultas.
Use una combinación de la tecla Mayús y el mouse para seleccionar dos planes para la misma consulta.
Use el botón Compare the plans for the select query in a separate window (Comparar los planes de la consulta seleccionada en una ventana independiente) para iniciar la comparación de planes. Después, se aplican los pasos 4 al 6 de Comparar los planes de ejecución.