Métricas de Información de rendimiento 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 de Información de rendimiento para instancias de bases de datos

Información de rendimiento supervisa diferentes tipos de métricas, tal y como se describe en las siguientes secciones.

Carga de base de datos

La carga de la base de datos (DBLoad) es una métrica clave en Información de rendimiento que mide el nivel de actividad de la base de datos. Se recopila cada segundo y se publica automáticamente en Amazon CloudWatch. Representa la actividad de la instancia de base de datos en el promedio de sesiones activas (AAS), que es el número de sesiones en las que se ejecutan consultas SQL de forma simultánea. La métrica DBLoad es distinta 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 de la métrica DBLoad. Puede utilizarlas segmentadas por categorías para representar 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, consulte Carga de la base de datos en la documentación de Amazon RDS.

La siguiente imagen muestra la herramienta Información de rendimiento.

Carga de la base de datos en la herramienta Información de rendimiento

Dimensiones

  • Los eventos de espera son 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 instrucción SQL como SELECT * FROM big_table y 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 espere a que se produzcan eventos de espera wait/io/file/innodb/innodb_data_file, que se deben a operaciones de E/S físicas 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 a qué recursos y operaciones dedican más tiempo de espera las instrucciones SQL que ejecuta en las sesiones. Por ejemplo, el evento wait/synch/mutex/innodb/trx_sys_mutex se produce cuando hay una gran actividad en la base de datos con un gran número de transacciones. El evento wait/synch/mutex/innodb/buf_pool_mutex se produce cuando un subproceso ha adquirido un bloqueo en el grupo de búferes de InnoDB para acceder a una página en la memoria. Para más información sobre todos los eventos de espera de MariaDB y MySQL, consulte Tablas de resumen de eventos de espera en la documentación de MySQL. Para comprender cómo interpretar los nombres de los instrumentos, consulte Convenciones de nomenclatura de instrumentos de Performance Schema en la documentación de MySQL.

  • SQL muestra qué instrucciones SQL contribuyen más a la carga total de la base de datos. La tabla de dimensiones principales es interactiva. Se encuentra debajo del gráfico de la carga de la base de datos en Información de rendimiento de Amazon RDS. Puede obtener una lista detallada de los eventos de espera asociados a la instrucción SQL. Para ello, haga clic en la barra de la columna Carga por esperas (AAS). Al seleccionar una instrucción SQL de la lista, Información de rendimiento muestra los eventos de espera asociados en el diagrama de la carga de la base de datos y el texto de la instrucción SQL en la sección de texto SQL. Las estadísticas de SQL se muestran en el lado derecho de la tabla de las dimensiones principales.

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

  • Usuarios agrupa la carga de la base de datos según los usuarios que iniciaron sesión en la base de datos.

  • Bases de datos agrupa la carga de bases de datos según 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 métrica de contador no se puede reducir a su valor anterior. Estas métricas representan un contador único que aumenta de manera monótona.

  • Los contadores nativos son métricas definidas por el motor de base de datos y no por Amazon RDS. Por ejemplo:

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

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

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

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

    Consulte las definiciones de todas las métricas nativas en Variables de estado de servidor en la documentación de MySQL.

  • Los contadores no nativos se definen mediante Amazon RDS. Puede obtener estas métricas mediante una consulta específica o derivarlas mediante dos o varias métricas nativas en los cálculos. Las métricas de contadores no nativos pueden representar latencias, ratios o tasas de aciertos. Por ejemplo:

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

      db.Cache.Innodb_buffer_pool_read_requests - db.Cache.Innodb_buffer_pool_reads
    • IO.innoDB_datafile_writes_to_disk representa el número de operaciones de escritura del archivo de datos de InnoDB en el disco. Solo captura las operaciones en los archivos de datos, no las operaciones de escritura doble o registro redo de escritura. Se calcula como se indica a continuación:

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

Puede visualizar las métricas de instancias de bases de datos directamente en el panel de Información de rendimiento. Elija Administrar métricas, elija la pestaña Métricas de la base de datos y, a continuación, seleccione las métricas que le interesen, como se muestra en la ilustración siguiente.

Selección de métricas de instancias de bases de datos en Información de rendimiento

Elija el botón Actualizar gráfico para mostrar las métricas que seleccionó, tal y como se muestra en la ilustración siguiente.

Visualización de métricas de instancias de bases de datos en Información de rendimiento

Estadísticas de SQL

Información de rendimiento recopila métricas relacionadas con el rendimiento de las consultas SQL por cada segundo que se ejecuta una consulta y por cada llamada SQL. En general, Información de rendimiento recopila estadísticas de SQL por enunciado y resumen. Sin embargo, para las instancias de bases de datos de MariaDB y MySQL, las estadísticas solo se recopilan por resumen.

  • Las estadísticas de resúmenes son una métrica compuesta de todas las consultas que tienen el mismo patrón pero que, en última instancia, tienen valores literales diferentes. El resumen reemplaza los 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ísticas por segundo para cada instrucción SQL resumida. Por ejemplo, sql_tokenized.stats.count_star_per_sec representa las llamadas por segundo (es decir, cuántas veces por segundo se ejecutó la instrucción SQL).

  • Información de desempeño también incluye métricas que proporcionan estadísticas por llamada para una instrucción SQL. Por ejemplo, sql_tokenized.stats.sum_timer_wait_per_call muestra la latencia media de la instrucción SQL por llamada, en milisegundos.

Las estadísticas SQL están disponibles en el panel de Información de rendimiento, en la pestaña SQL principal de la tabla Dimensiones principales.

Estadísticas de SQL