

# Análisis de planes de ejecución mediante el panel de Información de rendimiento para Amazon RDS
<a name="USER_PerfInsights.UsingDashboard.AnalyzingPlans"></a>

En el panel de Información de rendimiento de Amazon RDS, puede encontrar información sobre los planes de ejecución para las instancias de base de datos de Oracle y SQL Server. Puede utilizar esta información para saber qué planes contribuyen más a la carga de la base de datos.

Para analizar planes de ejecución de Oracle o SQL Server, consulte los siguientes temas.

**Análisis de planes de ejecución**
+ [Análisis de planes de ejecución de Oracle mediante el panel de Información de rendimiento para Amazon RDS](USER_PerfInsights.UsingDashboard.AccessPlans.md)
+ [Análisis de planes de ejecución de SQL Server mediante el panel de Información de rendimiento para Amazon RDS](USER_PerfInsights.UsingDashboard.AccessPlansSqlServer.md)

## Descripción general del análisis de los planes de ejecución para Amazon RDS
<a name="USER_PerfInsights.UsingDashboard.AnalyzingPlans.Overview"></a>

Puede utilizar el panel de Información de rendimiento de Amazon RDS para saber qué planes contribuyen más a la carga de bases de datos de las instancias de base de datos de Oracle y SQL Server. 

 Por ejemplo, las principales instrucciones SQL en un momento dado podrían estar utilizando los planes que se muestran en la siguiente tabla.


****  

| SQL principal | Plan | 
| --- | --- | 
|  SELECT SUM(amount\$1sold) FROM sales WHERE prod\$1id = 10  |  Plan A  | 
|  SELECT SUM(amount\$1sold) FROM sales WHERE prod\$1id = 521  |  Plan B  | 
|  SELECT SUM(s\$1total) FROM sales WHERE region = 10  |  Plan A  | 
|  SELECT \$1 FROM emp WHERE emp\$1id = 1000  |  Plan C  | 
|  SELECT SUM(amount\$1sold) FROM sales WHERE prod\$1id = 72  |  Plan A  | 

Con la característica de planificación de Performance Insights, puede hacer lo siguiente:
+ Encuentre qué planes utilizan las principales consultas SQL. 

  Por ejemplo, podría hallar que la mayor parte de la carga de la base de datos se genera mediante consultas que utilizan el plan A y el plan B, y solo un pequeño porcentaje utiliza el plan C.
+ Compare distintos planes para la misma consulta. 

  En el ejemplo anterior, tres consultas son idénticas, excepto el ID del producto. Dos consultas utilizan el plan A, pero una consulta utiliza el plan B. Para ver la diferencia en los dos planes, puede utilizar Performance Insights.
+ Busque cuándo una consulta cambió a un nuevo plan. 

  Es posible que vea que una consulta utiliza el plan A y, luego, cambió al plan B en un momento determinado. ¿Hubo algún cambio en la base de datos en ese momento? Por ejemplo, si una tabla está vacía, el optimizador podría elegir un análisis de tabla completo. Si la tabla se carga con un millón de filas, el optimizador podría cambiar a un análisis de rango de índices.
+ Explore a fondo los pasos específicos de un plan con el mayor costo.

  Por ejemplo, para una consulta de larga duración podría mostrar una condición de unión que falta en una combinación de igualdad. Esta condición faltante fuerza una unión cartesiana, que une todas las filas de dos tablas.

Puede hacer las tareas anteriores mediante la característica Captura de planes de Performance Insights. Del mismo modo que puede dividir las consultas de mediante eventos de espera y SQL principal, puede dividirlas por la dimensión del plan.

# Análisis de planes de ejecución de Oracle mediante el panel de Información de rendimiento para Amazon RDS
<a name="USER_PerfInsights.UsingDashboard.AccessPlans"></a>

Al analizar la carga de base de datos en una base de datos de Oracle, es posible que quiera saber qué planes contribuyen más a la carga de la base de datos. Puede determinar qué planes contribuyen más a la carga de base de datos mediante la característica de captura de planes de Información de rendimiento. 

**Para analizar los planes de ejecución de Oracle mediante la consola**

1. Abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, seleccione **Información de rendimiento**.

1. Elija una instancia base de datos de Oracle. Se abre el panel de Información sobre rendimiento para esa instancia de base de datos.

1. En la sección **Database load (DB load)** (Carga de base de datos), elija **Plans** (Planes) junto a **Slice by** (Dividir por).

   El gráfico de sesiones activas promedio muestra los planes utilizados por las instrucciones SQL principales. Los valores hash del plan aparecen a la derecha de los cuadrados codificados por colores. Cada valor hash identifica de forma exclusiva un plan.  
![\[Divida por planes\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/pi-slice-by-plans.png)

1. Desplácese hasta la pestaña **Top SQL** (SQL principal).

   En el siguiente ejemplo, el resumen de SQL principal tiene dos planes. Puede notar que es un resumen según el signo de interrogación de la instrucción.   
![\[Elija un plan de resumen\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/top-sql-plans-unselected.png)

1. Elija el resumen para expandirlo a sus instrucciones de componentes.

   En el siguiente ejemplo, la instrucción `SELECT` es una consulta de resumen. Las consultas de componentes del resumen utilizan dos plan diferentes. Los colores de los planes corresponden al gráfico de la carga de la base de datos. El número total de planes del resumen se muestra en la segunda columna.  
![\[Elija un plan de resumen\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/pi-digest-plan.png)

1. Desplácese hacia abajo y elija dos **Planes** que comparar de la lista **Plans for digest query** (Planes para consulta de resumen).

   Puede ver uno o dos planes para una consulta a la vez. La siguiente captura de pantalla compara los dos planes del resumen, con el hash 2032253151 y el hash 1117438016. En el siguiente ejemplo, el 62 % de las sesiones activas promedio que ejecutan esta consulta de resumen utilizan el plan de la izquierda, mientras que el 38 % utiliza el plan de la derecha.  
![\[Compare los planes uno al lado del otro\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/pi-compare-plan.png)

   En este ejemplo, los planes difieren de una manera importante. El paso 2 del plan 2032253151 utiliza un análisis de índice, mientras que el plan 1117438016 utiliza un análisis de tabla completo. Para una tabla con un gran número de filas, una consulta de una sola fila es casi siempre más rápida con un escaneo de índices.  
![\[Compare los planes uno al lado del otro\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/pi-table-access.png)

1. (Opcional) Elija **Copy (Copia)** para copiar el plan en el portapapeles, o **Download (Descargar)** para guardar el plan en el disco duro. 

# Análisis de planes de ejecución de SQL Server mediante el panel de Información de rendimiento para Amazon RDS
<a name="USER_PerfInsights.UsingDashboard.AccessPlansSqlServer"></a>

Al analizar la carga de base de datos en una base de datos de SQL Server, es posible que quiera saber qué planes contribuyen más a la carga de la base de datos. Puede determinar qué planes contribuyen más a la carga de base de datos mediante la característica de captura de planes de Información de rendimiento. 

**Análisis de los planes de ejecución de SQL Server mediante la consola**

1. Abra la consola de Amazon RDS en [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. En el panel de navegación, seleccione **Información de rendimiento**.

1. Elija una instancia de base de datos SQL Server. Se abre el panel de Información sobre rendimiento para esa instancia de base de datos.

1. En la sección **Database load (DB load)** (Carga de base de datos), elija **Plans** (Planes) junto a **Slice by** (Dividir por).

   El gráfico de sesiones activas promedio muestra los planes utilizados por las instrucciones SQL principales. Los valores hash del plan aparecen a la derecha de los cuadrados codificados por colores. Cada valor hash identifica de forma exclusiva un plan.  
![\[Divida por planes\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/pi-slice-by-plans-sqlserver.png)

1. Desplácese hasta la pestaña **Top SQL** (SQL principal).

   En el siguiente ejemplo, el resumen de SQL principal tiene tres planes. La presencia de un signo de interrogación en la instrucción de SQL indica que se trata de un resumen. Para ver la instrucción de SQL completa, elija un valor en la columna **Instrucciones de SQL**.  
![\[Elija un plan de resumen\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/top-sql-plans-unselected-sqlserver.png)

1. Elija el resumen para expandirlo a sus instrucciones de componentes.

   En el siguiente ejemplo, la instrucción `SELECT` es una consulta de resumen. Las consultas de componentes del resumen utilizan tres planes de ejecución diferentes. Los colores asignados a los planes corresponden al gráfico de la carga de la base de datos.  
![\[Elija un plan de resumen\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/pi-digest-plan-sqlserver.png)

1. Desplácese hacia abajo y elija dos **Planes** que comparar de la lista **Plans for digest query** (Planes para consulta de resumen).

   Puede ver uno o dos planes para una consulta a la vez. La siguiente captura de pantalla compara los dos planes del resumen. En el siguiente ejemplo, el 40 % de las sesiones activas promedio que ejecutan esta consulta de resumen utilizan el plan de la izquierda, mientras que el 28 % utiliza el plan de la derecha.  
![\[Compare los planes uno al lado del otro\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/pi-compare-plan-sqlserver.png)

   En el ejemplo anterior, los planes difieren de una manera importante. El paso 2 del plan de la izquierda usa un análisis de tablas, mientras que el plan de la derecha usa un análisis de índices agrupados. Para una tabla con un gran número de filas, una consulta que recupera una sola fila es casi siempre más rápida con un análisis de índices agrupados.

1. (Opcional) Seleccione el icono **Configuración** en la tabla de detalles del plan para personalizar la visibilidad y el orden de las columnas. La siguiente captura de pantalla muestra la tabla de detalles del plan con la columna **Lista de resultados** como segunda columna.  
![\[Personalice la visibilidad y el orden de las columnas en la tabla de detalles del plan\]](http://docs.aws.amazon.com/es_es/AmazonRDS/latest/UserGuide/images/pi-plan-fields-sql-server.png)

1. (Opcional) Elija **Copy (Copia)** para copiar el plan en el portapapeles, o **Download (Descargar)** para guardar el plan en el disco duro. 

**nota**  
Información de rendimiento muestra los planes de ejecución estimados mediante una tabla de árbol jerárquico. La tabla incluye la información de ejecución parcial de cada instrucción. Para obtener más información sobre las columnas de la tabla de detalles del plan, consulte [SET SHOWPLAN\$1ALL](https://learn.microsoft.com/en-us/sql/t-sql/statements/set-showplan-all-transact-sql) en la documentación de SQL Server. Para ver la información de ejecución completa de un plan de ejecución estimado, seleccione **Descargar** para descargar el plan y, a continuación, cárguelo en SQL Server Management Studio. Para obtener más información sobre cómo mostrar un plan de ejecución estimado con SQL Server Management Studio, consulte [Display an Estimated Execution Plan](https://learn.microsoft.com/en-us/sql/relational-databases/performance/display-the-estimated-execution-plan) en la documentación de SQL Server. 