Monitorización de planes de ejecución de consultas y máximo de memoria para Aurora PostgreSQL - Amazon Aurora

Monitorización de planes de ejecución de consultas y máximo de memoria para Aurora PostgreSQL

Puede monitorizar los planes de ejecución de consultas en su instancia de base de datos de Aurora PostgreSQL para detectar los planes de ejecución que contribuyen a la carga actual de la base de datos y realizar un seguimiento de las estadísticas de rendimiento de los planes de ejecución a lo largo del tiempo mediante el parámetro aurora_compute_plan_id. Cada vez que se ejecuta una consulta, se asigna un identificador al plan de ejecución utilizado por la consulta y se utiliza el mismo identificador en las siguientes ejecuciones del mismo plan.

El aurora_compute_plan_id está activado de forma predeterminada en el grupo de parámetros de base de datos de las versiones 14.10, 15.5 y posteriores de Aurora PostgreSQL. La asignación de un identificador de plan es el comportamiento predeterminado y se puede desactivar configurando aurora_compute_plan_id en OFF en el grupo de parámetros.

Este identificador de plan se usa en varias utilidades que tienen un propósito diferente.

A partir de las siguientes versiones, puede supervisar el uso máximo de memoria de consultas en su instancia de base de datos para detectar las consultas que contribuyen a un uso elevado de la memoria de la base de datos:

  • Versión 16.3 y todas las versiones posteriores

  • Versión 15.7 y posteriores

  • Versión 14.12 y posteriores

Cada vez que se ejecuta una consulta, se realiza un seguimiento del consumo máximo de memoria utilizado por la consulta. Las consultas suelen ejecutarse varias veces; se pueden ver los valores de uso de memoria promedio, mínimo y máximo de todas las ejecuciones para cada consulta.

Acceso a los planes de ejecución de consultas y máximo de memoria mediante las funciones de Aurora

Con aurora_compute_plan_id, puede acceder a los planes de ejecución mediante las siguientes funciones:

  • aurora_stat_activity

  • aurora_stat_plans

El máximo de memoria de la consulta no incluye la memoria que se asigna antes de que comience el procesamiento de la consulta. El uso máximo de memoria se registra y se informa por separado para las fases de planificación y ejecución de cada consulta.

Comprender los picos de memoria de las consultas.

Puede acceder a las estadísticas de uso máximo de memoria en consultas mediante estas funciones:

  • aurora_stat_statements

  • aurora_stat_plans

Para obtener más información sobre estas funciones, consulte Referencia de las funciones de Aurora PostgreSQL.

Referencia de parámetros para los planes de ejecución de consultas de Aurora PostgreSQL

Es posible supervisar planes de ejecución de consultas con los parámetros siguientes de un grupo de parámetros de base de datos.

nota

La configuración de los parámetros aurora_stat_plans.with_* solo se surte efecto para los planes recién capturados.

aurora_compute_plan_id

Póngalo en off para evitar que se asigne un identificador de plan.

Predeterminado Valores permitidos Descripción
on 0(off) Póngalo en off para evitar que se asigne un identificador de plan.
1(on) Póngalo en on para asignar un identificador de plan.

aurora_stat_plans.minutes_until_recapture

El número de minutos que deben transcurrir antes de que se recupere un plan. El valor predeterminado es 0, lo que inhabilita la recaptura de un plan. Cuando se supera el umbral de aurora_stat_plans.calls_until_recapture, el plan se recaptura.

Predeterminado Valores permitidos Descripción
0 0-1073741823

Establece el número de minutos que deben transcurrir antes de que se recupere un plan.

aurora_stat_plans.calls_until_recapture

El número de llamadas a un plan antes de volver a capturarlo. El valor predeterminado es 0, lo que inhabilita la recuperación de un plan después de cierto número de llamadas. Cuando se supera el umbral de aurora_stat_plans.minutes_until_recapture, el plan se recaptura.

Predeterminado Valores permitidos Descripción
0 0-1073741823

Establece el número de llamadas antes de recuperar un plan.

aurora_stat_plans.with_costs

Captura un plan EXPLAIN con los costos estimados. Los valores permitidos son on y off. El valor predeterminado es on.

Predeterminado Valores permitidos Descripción
on 0(off)

No muestra el costo estimado ni las filas para cada nodo del plan.

1(on)

Muestra el costo estimado y las filas de cada nodo del plan.

aurora_stat_plans.with_analyze

Controla el plan EXPLAIN con ANALYZE. Este modo solo se usa la primera vez que se captura un plan. Los valores permitidos son on y off. El valor predeterminado es off.

Predeterminado Valores permitidos Descripción
off 0(off)

No incluye las estadísticas del tiempo de ejecución real del plan.

1(on)

Incluye las estadísticas de tiempo de ejecución real del plan.

aurora_stat_plans.with_timing

Los plazos del plan se reflejarán en la explicación cuando se utilice ANALYZE. El valor predeterminado es on.

Predeterminado Valores permitidos Descripción
on 0(off)

No incluye el tiempo real de puesta en marcha ni el tiempo dedicado a cada nodo del plan.

1(on)

Incluye el tiempo real de puesta en marcha ni el tiempo dedicado a cada nodo del plan.

aurora_stat_plans.with_buffers

Las estadísticas de uso del búfer del plan se capturarán en explain cuando se utilice ANALYZE. El valor predeterminado es off.

Predeterminado Valores permitidos Descripción
off 0(off)

No incluye información sobre el uso del búfer.

1(on)

Incluye información sobre el uso del búfer.

aurora_stat_plans.with_wal

Las estadísticas de uso del wal del plan se capturarán en explain cuando se utilice ANALYZE. El valor predeterminado es off.

Predeterminado Valores permitidos Descripción
off 0(off)

No incluye información sobre la generación de registros WAL.

1(on)

Incluye información sobre la generación de registros WAL.

aurora_stat_plans.with_triggers

Las estadísticas de ejecución de los activadores del plan se capturarán en explain cuando ANALYZE se utilice. El valor predeterminado es off.

Predeterminado Valores permitidos Descripción
off 0(off)

No incluye las estadísticas de ejecución de los desencadenadores.

1(on)

Incluye las estadísticas de ejecución de los desencadenadores.