Métricas Performance Insights para instancias de bases de datos - AWS Guía prescriptiva

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Métricas Performance Insights para instancias de bases de datos

Performance Insights monitorea diferentes tipos de métricas, como se explica en las siguientes secciones.

Carga de base de datos

Carga de base de datos (DBLoad) es una métrica clave de Performance Insights que mide el nivel de actividad de la base de datos. Se recopila cada segundo y se publica automáticamente en AmazonCloudWatch. Representa la actividad de la instancia de base de datos en el promedio de sesiones activas (AAS), que es el número de sesiones que ejecutan consultas SQL simultáneamente. ElDBLoadLa métrica es diferente de otras métricas de series temporales porque se puede interpretar mediante cualquiera de estas cinco dimensiones: esperas, SQL, hosts, usuarios y bases de datos. Estas dimensiones son subcategorías delDBLoadmétrico. Puede utilizarlos comocortar porcategorías para representar las diferentes características de la carga de la base de datos. Para obtener una descripción detallada de cómo calculamos la carga de la base de datos, consulteCarga de base de datosen la documentación de Amazon RDS.

La siguiente ilustración de la pantalla muestra la herramienta Performance Insights.

Carga de base de datos en la herramienta Performance Insights

Dimensiones

  • Eventos de esperason condiciones en las que una sesión de base de datos espera a que se complete un recurso u otra operación para continuar con su procesamiento. Si ejecuta una sentencia SQL comoSELECT * FROM big_tabley si esta tabla es mucho más grande que el grupo de búferes de InnoDB asignado, lo más probable es que su sesión esperewait/io/file/innodb/innodb_data_fileeventos de espera, causados por operaciones físicas de E/S en el archivo de datos. Los eventos de espera son una dimensión importante para la supervisión de bases de datos, ya que indican posibles cuellos de botella en el rendimiento. Los eventos de espera indican los recursos y las operaciones que las sentencias SQL que ejecuta en las sesiones pasan más tiempo esperando. Por ejemplo, elwait/synch/mutex/innodb/trx_sys_mutexel evento se produce cuando hay una alta actividad en la base de datos con un gran número de transacciones, ywait/synch/mutex/innodb/buf_pool_mutexel evento se produce cuando un hilo adquiere un bloqueo en el grupo de búferes de InnoDB para acceder a una página de la memoria. Para obtener información sobre todos los eventos de espera de MySQL y MariaDB, consulteTablas resumidas de eventos de esperaen la documentación de MySQL. Para entender cómo interpretar los nombres de los instrumentos, consulteConvenciones de nomenclatura de instrumentos del esquema de rendimientoen la documentación de MySQL.

  • SQLmuestra qué sentencias SQL son las que más contribuyen a la carga total de la base de datos. ElDimensiones superioresmesa, que se encuentra debajo delCarga de base de datosgráfico de Amazon RDS Performance Insights, es interactivo. Para obtener una lista detallada de los eventos de espera asociados a la sentencia SQL, haga clic en la barra delCarga por esperas (AAS)columna. Al seleccionar una sentencia SQL de la lista, Performance Insights muestra los eventos de espera asociados en elCarga de base de datosgráfico y el texto de la sentencia SQL en elTexto SQLsección. Las estadísticas de SQL se muestran en la parte derecha delDimensiones superioresmesa.

  • Hospedadoresmuestre los nombres de host de los clientes conectados. Esta dimensión le ayuda a identificar qué hosts del cliente envían la mayor parte de la carga a la base de datos.

  • Usuariosagrupe la carga de base de datos por usuarios que hayan iniciado sesión en la base de datos.

  • bases de datosagrupe la carga de base de datos por el nombre de la base de datos a la que está conectado el cliente.

Métricas de contador

Las métricas de contador son métricas acumulativas cuyos valores solo pueden aumentar o restablecerse a cero cuando se reinicia la instancia de base de datos. El valor de una contramétrica no se puede reducir a su valor anterior. Estas métricas representan un contador único que aumenta de forma monótona.

  • Contadores nativosson métricas definidas por el motor de base de datos y no por Amazon RDS. Por ejemplo:

    • SQL.Innodb_rows_insertedrepresenta el número de filas insertadas en las tablas de InnoDB.

    • SQL.Select_scanrepresenta el número de uniones que completaron un análisis completo de la primera tabla.

    • Cache.Innodb_buffer_pool_readsrepresenta el número de lecturas lógicas que el motor InnoDB no pudo recuperar del conjunto de búferes y tuvo que leer directamente desde el disco.

    • Cache.Innodb_buffer_pool_read_requestsrepresenta el número de solicitudes de lectura lógica.

    Para obtener las definiciones de todas las métricas nativas, consulteVariables de estado del servidoren la documentación de MySQL.

  • Contadores no nativosestán definidos por Amazon RDS. Puede obtener estas métricas mediante una consulta específica o derivarlas mediante dos o más métricas nativas en los cálculos. Las métricas de contador no nativas pueden representar latencias, ratios o tasas de aciertos. Por ejemplo:

    • Cache.innoDB_buffer_pool_hitsrepresenta el número de operaciones de lectura que InnoDB podría recuperar del conjunto de búferes sin utilizar el disco. Se calcula a partir de las métricas del contador nativo de la siguiente manera:

      db.Cache.Innodb_buffer_pool_read_requests - db.Cache.Innodb_buffer_pool_reads
    • IO.innoDB_datafile_writes_to_diskrepresenta el número de operaciones de escritura de archivos de datos de InnoDB en el disco. Solo captura las operaciones de los archivos de datos, no las operaciones de escritura doble ni el reregistro. Se calcula de la siguiente manera:

      db.IO.Innodb_data_writes - db.IO.Innodb_log_writes - db.IO.Innodb_dblwr_writes

Puede visualizar las métricas de la instancia de base de datos directamente en el panel Performance Insights. EscojaAdministrar métricas, elige elmétricas de base de datospestaña y, a continuación, seleccione las métricas de interés, como se muestra en la siguiente ilustración.

Selección de métricas de instancias de base de datos en Performance Insights

Elige elActualizar gráficobotón para mostrar las métricas que seleccionó, como se muestra en la siguiente ilustración.

Visualización de las métricas de instancias de base de datos en Performance

Estadísticas de SQL

Performance Insights recopila métricas relacionadas con el rendimiento sobre las consultas SQL para cada segundo que se ejecuta una consulta y para cada llamada de SQL. En general, Performance Insights recopilaEstadísticas de SQLa nivel de declaración y resumen. Sin embargo, para las instancias de bases de datos MariaDB y MySQL, las estadísticas se recopilan solo a nivel de resumen.

  • Las estadísticas resumidas son una métrica compuesta de todas las consultas que tienen el mismo patrón pero que eventualmente tienen valores literales diferentes. El resumen reemplaza valores literales específicos por una variable; por ejemplo:

    SELECT department_id, department_name FROM departments WHERE location_id = ?
  • Hay métricas que representan estadísticaspor segundopara cada sentencia SQL digerida. Por ejemplo,sql_tokenized.stats.count_star_per_secrepresenta las llamadas por segundo (es decir, cuántas veces por segundo se ha ejecutado la sentencia SQL).

  • Performance Insights también incluye métricas que proporcionanpor llamadaestadísticas de una sentencia SQL. Por ejemplo,sql_tokenized.stats.sum_timer_wait_per_callmuestra la latencia promedio de la sentencia SQL por llamada, en milisegundos.

Las estadísticas de SQL están disponibles en el panel Performance Insights, enSQL superiorpestaña delDimensiones superioresmesa.

Estadísticas de SQL