Usar estadísticas del sistema para mejorar su rendimiento

En esta página se describe cómo puede usar el panel de control Estadísticas del sistema de Cloud SQL. El panel de control Estadísticas del sistema muestra métricas de los recursos que usa tu instancia y te ayuda a detectar y analizar problemas de rendimiento del sistema.

Puedes usar la asistencia de Gemini en Databases para observar y solucionar problemas de tus recursos de Cloud SQL para PostgreSQL. Para obtener más información, consulta Observar y solucionar problemas con la ayuda de Gemini.

Ver el panel de control Estadísticas del sistema

Para ver el panel de control Estadísticas del sistema, sigue estos pasos:

  1. En la Google Cloud consola, ve a la página Instancias de Cloud SQL.

    Ir a Instancias de Cloud SQL

  2. Haz clic en el nombre de una instancia.
  3. Selecciona la pestaña Estadísticas del sistema en el panel de navegación de SQL de la izquierda.

Se abre el panel de control Estadísticas del sistema.

Imagen de un panel de control que muestra una cronología de eventos y tarjetas de resumen de métricas.
Imagen 1. Imagen del panel de control que muestra la cronología de eventos y las tarjetas de resumen.

Imagen de un panel de control con gráficos de métricas clave.
Imagen 2. Imagen de un panel de control que muestra gráficos de métricas clave.

El panel de control Estadísticas del sistema muestra la siguiente información:

  1. Detalles de tu instancia

  2. Cronología de eventos: muestra los eventos del sistema en orden cronológico. Esta información le ayuda a evaluar el impacto de los eventos del sistema en el estado y el rendimiento de la instancia.

  3. Tarjetas de resumen: ofrecen una vista general del estado y el rendimiento de la instancia mostrando los valores más recientes y agregados de las métricas de uso de la CPU, uso del disco y errores de registro.

  4. Gráficos de métricas: muestran información sobre las métricas del sistema operativo y de la base de datos que te ayudan a obtener información valiosa sobre varios problemas, como el rendimiento, la latencia y el coste.

El panel de control ofrece las siguientes opciones generales:

  • Para ver uno o dos gráficos por fila. Haz clic en Personalizar vista para elegir cómo se muestran estos gráficos. También puedes usar esta opción para elegir las métricas que quieras mostrar en el panel de control.
  • Para que el panel de control esté actualizado, habilita la opción Actualización automática. Si habilitas la opción Actualización automática, los datos del panel de control se actualizarán cada minuto. Esta función no es compatible con los periodos personalizados.

  • El selector de hora muestra 1 day seleccionado de forma predeterminada. Para cambiar el periodo, selecciona uno de los otros periodos predefinidos o haz clic en Personalizado y define una hora de inicio y una de finalización. Puede obtener datos de los últimos 30 días.

  • Para crear un enlace absoluto al panel de control, haz clic en el botón Copiar enlace. Puedes compartir este enlace con otros usuarios de Cloud SQL que tengan los mismos permisos.

  • Para crear una alerta de un evento específico, haz clic en Notificación.

  • Para mostrar alertas específicas, haz clic en Anotaciones.

Tarjetas de resumen

En la siguiente tabla se describen las tarjetas de resumen que se muestran en la parte superior del panel de control Estadísticas del sistema. Estas tarjetas ofrecen un breve resumen del estado y el rendimiento de la instancia durante el periodo seleccionado.

Tarjeta de resumenDescripción
Uso de CPU - P99 | P50 Los valores de uso de la CPU P99 y P50 durante el periodo seleccionado.
Conexiones máximas Es la proporción entre las conexiones máximas y las conexiones máximas del periodo seleccionado. El número máximo de conexiones puede ser superior al número máximo en caso de que este último haya cambiado recientemente, por ejemplo, debido al escalado de la instancia o a un cambio manual en el ajuste max_connections.
Uso del ID de transacción El valor de utilización del ID de transacción más reciente del periodo seleccionado.
Uso de disco El valor de utilización del disco más reciente.
Errores de registro Número de errores que registran los usuarios.

Gráficos de métricas

Una tarjeta de gráfico de una métrica de ejemplo se muestra de la siguiente manera.

Gráfico que muestra datos de métricas de Cloud SQL de ejemplo.
Gráfico de métricas que muestra las métricas de latencia de las consultas.

La barra de herramientas de cada tarjeta de gráfico ofrece el siguiente conjunto de opciones estándar:

  • Para ver los valores de las métricas en un momento concreto del periodo seleccionado, mueve el cursor sobre el gráfico.

  • Para ampliar un gráfico, haz clic en él y arrastra el cursor horizontalmente por el eje X o verticalmente por el eje Y. Para deshacer la operación de zoom, haz clic en Restablecer zoom. También puede hacer clic en uno de los periodos predefinidos de la parte superior del panel de control. Las operaciones de zoom se aplican al mismo tiempo a todos los gráficos de un panel de control.

  • Para ver más opciones, haz clic en Más opciones de gráfico. La mayoría de los gráficos ofrecen estas opciones:

    • Para ver un gráfico en modo de pantalla completa, haz clic en Ver en pantalla completa. Para salir del modo de pantalla completa, haz clic en Cancelar.

    • Ocultar o contraer la leyenda.

    • Descarga un archivo PNG o CSV del gráfico.

    • Ver en Explorador de métricas. Consulta la métrica en Explorador de métricas. Puede ver otras métricas de Cloud SQL en el Explorador de métricas después de seleccionar el tipo de recurso Base de datos de Cloud SQL.

  • Para crear un panel de control personalizado, haz clic en Personalizar panel de control y ponle un nombre. También puede desplegar el menú Predefinido y seleccionar un panel de control personalizado.

  • Para ver los datos de un gráfico de métricas en detalle, haga clic en Explorar datos. Aquí puede filtrar métricas específicas y elegir cómo se muestra el gráfico:

    Vista personalizable de los datos de métricas de Cloud SQL.

    Para guardar esta vista personalizada como un gráfico de métricas, haga clic en Guardar en el panel de control.

Métricas predeterminadas

En la siguiente tabla se describen las métricas de Cloud SQL que aparecen de forma predeterminada en el panel de control Estadísticas del sistema de Cloud SQL.

Las cadenas de tipo de métrica siguen este prefijo: cloudsql.googleapis.com/database/.

Para consultar la disponibilidad de las siguientes métricas en la fase de lanzamiento más reciente, consulta las Google Cloud métricas.

Nombre y tipo de métricaDescripción
Nuevas conexiones por segundo
postgresql/new_connection_count

La frecuencia del número de conexiones nuevas que creas en tu instancia de Cloud SQL para PostgreSQL por segundo. Cloud SQL calcula y muestra esta métrica por base de datos.

Esta métrica está disponible en PostgreSQL 14 y versiones posteriores.

Tipos de eventos de espera
postgresql/backends_in_wait

Número de conexiones de cada tipo de evento de espera en una instancia de Cloud SQL para PostgreSQL.

Eventos de espera
postgresql/backends_in_wait

Número de eventos de espera en una instancia de Cloud SQL para PostgreSQL. El panel de control muestra esta métrica como nombre del evento de espera:tipo de evento de espera.

Recuento de transacciones
postgresql/transaction_count

Número de transacciones en los estados commit y rollback en una instancia de Cloud SQL para PostgreSQL.

Componentes de memoria
memory/components

Los componentes de memoria disponibles para la base de datos. El valor de cada componente de memoria se calcula como el porcentaje de la memoria total disponible para la base de datos.

Retraso de bytes de réplica máximo
postgresql/external_sync/max_replica_byte_lag

El desfase máximo de replicación (en bytes) entre todas las bases de datos de la réplica del servidor externo (ES).

Latencia de la consulta
postgresql/insights/aggregate/latencies

Distribución de la latencia de las consultas agregadas por P99, P95 y P50 por usuario y base de datos.

Solo está disponible para las instancias que tienen habilitada la función Estadísticas de consultas.

Carga de la base de datos por base de datos, usuario o dirección de cliente
postgresql/insights/aggregate/execution_time

Tiempo de ejecución de consultas acumulado por base de datos, usuario o dirección de cliente. Es la suma del tiempo de CPU, el tiempo de espera de E/S, el tiempo de espera de bloqueo, el cambio de contexto del proceso y la programación de todos los procesos implicados en la ejecución de la consulta.

Solo está disponible para las instancias que tienen habilitada la función Estadísticas de consultas.

Uso de CPU
cpu/utilization

El uso actual de la CPU, representado como un porcentaje de la CPU reservada que se está usando.

Almacenamiento en disco por tipo
disk/bytes_used_by_data_type

El desglose del uso del disco de la instancia por tipos de datos, incluidos data, binlog y tmp_data.

Esta métrica te ayuda a comprender los costes de almacenamiento. Para obtener más información sobre los cargos por uso de almacenamiento, consulta los precios de almacenamiento y redes.

La recuperación a un momento dado (PITR) usa el archivado de registros de escritura previa (WAL). Estos registros se actualizan con frecuencia y usan espacio de almacenamiento. Los registros de escritura anticipada se eliminan automáticamente junto con su copia de seguridad automática asociada, lo que suele ocurrir al cabo de unos 7 días.

Si el tamaño de tus registros de escritura anticipada está causando un problema en tu instancia, puedes aumentar el tamaño del almacenamiento, pero el aumento del tamaño de los registros de escritura anticipada en el uso del disco podría ser temporal. Para evitar problemas inesperados con el almacenamiento, Google recomienda habilitar los aumentos automáticos del almacenamiento al usar PITR.

Para eliminar los registros y recuperar espacio de almacenamiento, puedes inhabilitar la recuperación a un momento dado. Sin embargo, ten en cuenta que la disminución del almacenamiento utilizado no reduce el tamaño del almacenamiento aprovisionado para la instancia.

Los datos temporales se incluyen en la métrica de uso del almacenamiento. Los datos temporales se eliminan como parte del mantenimiento y pueden superar los límites de capacidad definidos por el usuario para evitar que el disco se llene, sin coste para el usuario.

Cada base de datos, nada más crearse, utiliza alrededor de 100 MB para las tablas y los archivos del sistema.

Almacenamiento en disco por tipo
disk/bytes_used_by_data_type

El desglose del uso del disco de la instancia por tipos de datos, incluidos data, binlog y tmp_data.

Esta métrica te ayuda a comprender los costes de almacenamiento. Para obtener más información sobre los cargos por uso de almacenamiento, consulta los precios de almacenamiento y redes.

La recuperación a un momento dado usa el archivado de registros de escritura previa (WAL). En las nuevas instancias de Cloud SQL que tengan habilitada la recuperación a un momento dado o en las instancias que habiliten esta función después de que esté disponible la función de almacenamiento de registros WAL en Cloud Storage, los registros ya no se almacenarán en el disco, sino en Cloud Storage, en la misma región que las instancias.

Para ver si los registros de una instancia se almacenan en Cloud Storage, consulta la métrica bytes_used_by_data_type de la instancia. Si el valor del tipo de datos archived_wal_log es 0, los registros de la instancia se almacenan en Cloud Storage.

El resto de las instancias que tengan habilitada la recuperación a un momento dado seguirán almacenando sus registros en el disco. El cambio al almacenamiento de registros en Cloud Storage se hará más adelante.

Los registros write-ahead que se usan en la recuperación a un momento dado se eliminan automáticamente junto con su copia de seguridad automática asociada, lo que suele ocurrir cuando se alcanza el valor definido para transactionLogRetentionDays. Es el número de días de registros de transacciones que Cloud SQL conserva para la recuperación a un momento dado, entre 1 y 7.

En el caso de las instancias que tienen registros write-ahead almacenados en Cloud Storage, los registros se almacenan en la misma región que la instancia principal. Este almacenamiento de registros (hasta siete días, la duración máxima de la recuperación a un momento dado) no genera ningún coste adicional por instancia.

Si tu instancia tiene habilitada la recuperación a un momento dado y el tamaño de los registros de escritura previa en el disco está causando problemas en la instancia, inhabilita la recuperación a un momento dado y vuelve a habilitarla para asegurarte de que los nuevos registros se almacenan en Cloud Storage en la misma región que la instancia. De esta forma, se eliminan los registros de escritura previa, por lo que no podrás realizar una restauración a un momento dado anterior a la hora en la que volviste a habilitar la recuperación a un momento dado. Sin embargo, aunque se eliminen los registros, el tamaño del disco sigue siendo el mismo.

Para evitar problemas de almacenamiento inesperados, le recomendamos que habilite los aumentos de almacenamiento automáticos en todas las instancias cuando utilice la recuperación a un momento dado. Esta recomendación solo se aplica si tu instancia tiene habilitada la recuperación a un momento dado y tus registros se almacenan en el disco.

Para eliminar los registros y recuperar espacio de almacenamiento, puedes inhabilitar la recuperación a un momento dado. Sin embargo, ten en cuenta que, al reducir los registros de escritura anticipada que se usan, no se reduce el tamaño del disco aprovisionado para la instancia.

Los datos temporales se incluyen en la métrica de uso del almacenamiento. Los datos temporales se eliminan como parte del mantenimiento y pueden superar los límites de capacidad definidos por el usuario para evitar que el disco se llene, sin coste para el usuario.

Cada base de datos, nada más crearse, utiliza alrededor de 100 MB para las tablas y los archivos del sistema.

Operaciones de lectura/escritura de disco
disk/read_ops_count, disk/write_ops_count

La métrica Número de lecturas indica el número de operaciones de lectura servidas desde el disco que no proceden de la caché. Puedes usar esta métrica para saber si tu instancia tiene el tamaño adecuado para tu entorno. Si es necesario, puedes cambiar a un tipo de máquina más grande para atender más peticiones de la caché y reducir la latencia.

La métrica Número de escrituras indica el número de operaciones de escritura en el disco. La actividad de escritura se genera aunque tu aplicación no esté activa, ya que las instancias de Cloud SQL, excepto las réplicas, escriben en una tabla del sistema aproximadamente cada segundo.

Conexiones por estado
postgresql/num_backends_by_state

Número de conexiones agrupadas por estos estados: idle, active, idle_in_transaction, idle_in_transaction_aborted, disabled y fastpath_function_call.

Para obtener información sobre estos estados, consulta la state text fila de la documentación de pg_stat_activity.

Conexiones por base de datos
postgresql/num_backends

Número de conexiones que mantiene la instancia de base de datos.

Bytes de entrada y salida
network/received_bytes_count, network/sent_bytes_count

El tráfico de red en términos del número de bytes de entrada (bytes recibidos) y de salida (bytes enviados) a la instancia y desde ella, respectivamente.

Desglose del tiempo de espera de E/S por tipo
postgresql/insights/aggregate/io_time

Desglose del tiempo de espera de E/S de las instrucciones SQL por tipo de lectura y escritura.

Solo está disponible para las instancias que tienen habilitada la función Estadísticas de consultas.

Número de interbloqueos por base de datos
postgresql/deadlock_count

Número de interbloqueos por base de datos.

Recuento de lecturas de bloques
postgresql/blocks_read_count

Número de bloques leídos por segundo del disco y de la caché de búferes.

Filas procesadas por operación
postgresql/tuples_processed_count

Número de filas procesadas por operación por segundo.

Filas de la base de datos por estado
postgresql/tuple_size

El número de filas de cada estado de la base de datos. Cloud SQL informa de esta métrica si el número de bases de datos de la instancia es inferior a 50.

Transacción más antigua por antigüedad
postgresql/vacuum/oldest_transaction_age

La antigüedad de la transacción más antigua que está bloqueando la operación de vacío.

Archivado de WAL
replication/log_archive_success_count, replication/log_archive_failure_count

Número de archivos de registro de escritura anticipada que se han archivado correctamente o no por minuto.

Uso del ID de transacción
postgresql/transaction_id_utilization

El porcentaje de IDs de transacción usados en la instancia.

Número de conexiones por nombre de aplicación
postgresql/num_backends_by_application

Número de conexiones a la instancia de Cloud SQL, agrupadas por aplicaciones.

Las conexiones sin nombre de aplicación se agrupan como Unknown.

Filas obtenidas, devueltas y escritas
  • Filas obtenidas: postgresql/tuples_fetched_count
  • Filas devueltas: postgresql/tuples_returned_count
  • Filas escritas: postgresql/tuples_processed_count
  • Filas obtenidas es el número de filas obtenidas como resultado de las consultas de la instancia.
  • Filas devueltas es el número de filas analizadas al procesar las consultas de la instancia.
  • Filas escritas es el número de filas escritas en la instancia al realizar operaciones de inserción, actualización y eliminación.

Si la diferencia entre las filas devueltas y las filas obtenidas es tan grande que sus valores no se muestran en la misma escala, el valor de las filas obtenidas se muestra como 0 porque es insignificante en comparación con el valor de las filas devueltas.

Tamaño de los datos temporales
postgresql/temp_bytes_written_count

La cantidad total de datos (en bytes) que se ha usado para ejecutar consultas y algoritmos, como las combinaciones y las ordenaciones.

Archivos temporales
postgresql/temp_files_written_count

Número de archivos temporales que se usan para ejecutar consultas y algoritmos, como las combinaciones y las ordenaciones.

Además, la métrica de Cloud Logging Entradas de registro por gravedad (logging.googleapis.com/log_entry_count) muestra el número total de entradas de registro de error y de advertencia.

Se extraen de postgres.log, que es el registro de la base de datos, y de pgaudit.log, que contiene información sobre el acceso a los datos.

Para obtener más información, consulta las métricas de Cloud SQL.

Cronología de eventos

El panel de control proporciona los detalles de los siguientes eventos:

Nombre del eventoDescripciónTipo de operación
Instance restart Reinicia la instancia de Cloud SQL. RESTART
Instance failover Inicia una conmutación por error manual de una instancia principal de alta disponibilidad a una instancia de espera, que se convierte en la instancia principal. FAILOVER
Instance maintenance Indica que la instancia está en mantenimiento. Por lo general, el mantenimiento provoca que la instancia no esté disponible entre 1 y 3 minutos. MAINTENANCE
Instance backup Realiza una copia de seguridad de la instancia. BACKUP_VOLUME
Instance update Actualiza la configuración de una instancia de Cloud SQL. UPDATE
Promote replica Promueve una instancia de réplica de Cloud SQL. PROMOTE_REPLICA
Start replica Inicia la replicación en una instancia de réplica de lectura de Cloud SQL. START_REPLICA
Stop replica Detiene la replicación en una instancia de réplica de lectura de Cloud SQL. STOP_REPLICA
Recreate replica Recrea los recursos de una instancia de réplica de Cloud SQL. RECREATE_REPLICA
Create replica Crea una instancia de réplica de Cloud SQL. CREATE_REPLICA
Data import Importa datos en una instancia de Cloud SQL. IMPORT
Instance export Exporta datos de una instancia de Cloud SQL a un segmento de Cloud Storage. EXPORT
Restore backup Restaura una copia de seguridad de una instancia de Cloud SQL. Esta operación puede provocar que se reinicie la instancia. RESTORE_VOLUME

Siguientes pasos