MonitoreoAWS GlueUso de métricas de Amazon CloudWatch - AWS Glue

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.

MonitoreoAWS GlueUso de métricas de Amazon CloudWatch

Puede proporcionar perfiles y supervisar las operaciones de AWS Glue con el generador de trabajos de AWS Glue. Recopila y procesa datos sin procesar deAWS GlueTrabajos en métricas legibles y casi en tiempo real en Amazon CloudWatch. Estas estadísticas se retienen y agregan en CloudWatch para que pueda obtener acceso a información histórica y conocer mejor el rendimiento de su aplicación.

Información general de métricas de AWS Glue

Cuando interactúas conAWS Glue, envía métricas a CloudWatch. Puede ver estas métricas mediante laAWS Glue(el método preferido), el panel de la consola de CloudWatch o la consola deAWS Command Line Interface(AWS CLI).

Para consultar las métricas mediante el panel de la consola de AWS Glue

Puede ver gráficos resumidos o detallados de métricas para un trabajo, o bien gráficos detallados para una ejecución de trabajo. Para obtener detalles acerca de los gráficos y las métricas a los que puede obtener acceso en el panel de la consola de AWS Glue, consulte Trabajo con trabajos en la consola de AWS Glue.

  1. Inicie sesión en laAWS Management Consoley abra el cuadro de diálogoAWS Glueconsola dehttps://console.aws.amazon.com/glue/.

  2. En el panel de navegación, seleccione Jobs (Trabajos).

  3. Seleccione un trabajo en la lista Jobs (Trabajos).

  4. Elija la pestaña Metrics (Métricas).

  5. Seleccione View Additional Metrics (Ver métricas adicionales) para ver métricas más detalladas.

Para consultar métricas mediante el panel de la consola de CloudWatch

Las métricas se agrupan en primer lugar por el espacio de nombres de servicio y, a continuación, por las diversas combinaciones de dimensiones dentro de cada espacio de nombres.

  1. Abra la consola de CloudWatch en https://console.aws.amazon.com/cloudwatch/.

  2. En el panel de navegación, seleccione Metrics (Métricas).

  3. Elija el iconoAdherenciaEspacio de nombres.

Para ver métricas mediante la AWS CLI

  • En el símbolo del sistema, ejecute el siguiente comando.

    aws cloudwatch list-metrics --namespace Glue

AWS Gluenotifica las métricas para CloudWatch cada 30 segundos y los paneles de métricas de CloudWatch se configuran para mostrarlas cada minuto. Las métricas de AWS Glue representan valores delta que se obtienen de los valores notificados con anterioridad. Si procede, los paneles de métricas agregan (suman) los valores de 30 segundos para obtener un valor para todo el último minuto. Las métricas de AWS Glue están habilitadas en la inicialización de un GlueContext en un script y, por lo general, se actualizan solo al final de una tarea de Apache Spark. Representan los valores de la suma en todas las tareas Spark hasta el momento.

Sin embargo, las métricas de Spark queAWS GlueLas pasadas a CloudWatch suelen ser valores absolutos que representan el estado actual en el momento en que se notifican.AWS Gluelos notifica a CloudWatch cada 30 segundos y los paneles de métricas suelen mostrar la media en los puntos de datos recibidos en el último minuto.

Los nombres de las métricas de AWS Glue están precedidos por uno de los siguientes tipos de prefijo:

  • glue.driver.: las métricas cuyos nombres comienzan con este prefijo representanAWS Glueque provienen de todos los ejecutores en el controlador Spark, o bien las métricas de Spark correspondientes al controlador Spark correspondientes al controlador Spark.

  • glue.ID de executorId.— ElID de executorIdes el número de un ejecutor de Spark específico. Se corresponde con los ejecutores enumerados en los registros.

  • glue.ALL.: las métricas cuyos nombres empiezan por este prefijo agregan valores de todos los ejecutores de Spark.

Métricas de AWS Glue

AWS Gluey envía las siguientes métricas a CloudWatch cada 30 segundos, y elAWS GlueEl panel de métricas los informa una vez por minuto:

Métrica Descripción

glue.driver.aggregate.bytesRead

El número de bytes leídos desde todas las fuentes de datos por todas las tareas de Spark completadas que se ejecutan en todos los ejecutores.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Bytes

Se puede utilizar para monitorear:

  • Bytes leídos.

  • Progreso del Job.

  • : orígenes de datos JDBC.

  • Problemas de marcadores de Job.

  • Desviación entre las ejecuciones de Job.

Esta métrica se puede utilizar de la misma manera que laglue.ALL.s3.filesystem.read_bytes, con la diferencia de que esta métrica se actualiza al final de una tarea de Spark y también captura orígenes de datos que no son S3.

glue.driver.aggregate.elapsedTime

El tiempo transcurrido de ETL en milisegundos (no incluye los tiempos de arranque del trabajo).

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Milisegundos

Puede usarse para determinar cuánto tiempo se tarda en ejecutar una ejecución de un trabajo en promedio.

Algunas formas de usar los datos:

  • Establezca alarmas para rezagados.

  • Medir la desviación entre las ejecuciones de trabajos.

glue.driver.aggregate.numCompletedStages

El número de etapas completadas en el trabajo.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Recuento

Se puede utilizar para monitorear:

  • Progreso del Job.

  • Línea de tiempo por etapa de ejecución del trabajo, cuando se correlaciona con otras métricas.

Algunas formas de usar los datos:

  • Identificar etapas exigentes en la ejecución de un trabajo.

  • Establezca alarmas para picos correlacionados (etapas exigentes) en las ejecuciones de trabajos.

glue.driver.aggregate.numCompletedTasks

El número de tareas completadas en el trabajo.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Recuento

Se puede utilizar para monitorear:

  • Progreso del Job.

  • Paralelismo dentro de una etapa.

glue.driver.aggregate.numFailedTasks

El número de tareas que han producido un error.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Recuento

Se puede utilizar para monitorear:

  • Anomalías de datos que provocan un error en las tareas de trabajo.

  • Anomalías de clúster que provocan un error en las tareas de trabajo.

  • Anomalías de secuencias de comandos que causan un error en las tareas de trabajo.

Los datos se pueden usar para establecer alarmas para errores incrementados que podrían sugerir anomalías en los datos, clústeres o scripts.

glue.driver.aggregate.numKilledTasks

El número de tareas que han matado.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Recuento

Se puede utilizar para monitorear:

  • Anomalías en el sesgo de datos que dan lugar a excepciones (OOM) que eliminan tareas.

  • Anomalías de secuencias de comandos que dan lugar a excepciones (OOM) que eliminan tareas.

Algunas formas de usar los datos:

  • Establezca alarmas para mayores fallos que indiquen anomalías en los datos.

  • Establezca alarmas para el aumento de fallos que indiquen anomalías en el clúster.

  • Establezca alarmas para errores incrementados que indiquen anomalías en el script.

glue.driver.aggregate.recordsRead

Número de registros leídos de todas las fuentes de datos por todas las tareas de Spark completadas que se ejecutan en todos los ejecutores.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Recuento

Se puede utilizar para monitorear:

  • Registros leídos.

  • Progreso del Job.

  • : orígenes de datos JDBC.

  • Problemas de marcadores de Job.

  • Sesgar en el Job se ejecuta a lo largo de días.

Esta métrica se puede utilizar de manera similar a la deglue.ALL.s3.filesystem.read_bytes, con la diferencia de que esta métrica se actualiza al final de una tarea de Spark.

glue.driver.aggregate.shuffleBytesWritten

El número de bytes que escriben todos los ejecutores para mezclar los datos entre ellos desde el informe anterior (agregado por la propiedadAWS GluePanel de métricas como el número de bytes escritos para este propósito durante el minuto anterior).

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Bytes

Se puede utilizar para monitorear: Mezclar datos en trabajos (uniones grandes, GroupBy, repartición, fusión).

Algunas formas de usar los datos:

  • Volver a particionar o descomprimir archivos de entrada grandes antes de procesarlos.

  • Volver a particionar los datos de manera más uniforme para evitar las teclas de acceso rápido.

  • Prefiltrar los datos antes de las uniones o las operaciones GroupBy.

glue.driver.aggregate.shuffleLocalBytesRead

El número de bytes que leen todos los ejecutores para mezclar los datos entre ellos desde el informe anterior (agregado por la propiedadAWS GluePanel de métricas como el número de bytes leídos para este propósito durante el minuto anterior).

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(recuento).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueMetrics Dashboard, se utiliza una estadística SUM para la agregación.

Unidad: Bytes

Se puede utilizar para monitorear: Mezclar datos en trabajos (uniones grandes, GroupBy, repartición, fusión).

Algunas formas de usar los datos:

  • Volver a particionar o descomprimir archivos de entrada grandes antes de procesarlos.

  • Volver a particionar los datos de manera más uniforme usando teclas de acceso rápido.

  • Prefiltrar los datos antes de las uniones o las operaciones GroupBy.

glue.driver.BlockManager.disk.diskSpaceUsed_MB

Número de megabytes de espacio en disco utilizados en todos los ejecutores.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(calibre).

Estadísticas válidas: Promedio de. Esta es una métrica de Spark, notificada como un valor absoluto.

Unidad: Megabytes

Se puede utilizar para monitorear:

  • Espacio en disco utilizado para bloques que representan particiones RDD almacenadas en caché.

  • Espacio en disco utilizado para bloques que representan salidas aleatorias intermedias.

  • Espacio en disco utilizado para bloques que representan difusiones.

Algunas formas de usar los datos:

  • Identifique fallas de trabajo debido al aumento del uso del disco.

  • Identifique particiones grandes que resulten en derrames o barajos.

  • Aumente la capacidad de DPU aprovisionada para corregir estos problemas.

glue.driver.ExecutorAllocationManager.executors.numberAllExecutors

El número de ejecutores de trabajo que se ejecutan activamente.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(calibre).

Estadísticas válidas: Promedio de. Esta es una métrica de Spark, notificada como un valor absoluto.

Unidad: Recuento

Se puede utilizar para monitorear:

  • Actividad Job.

  • Ejecutores rezagados (con unos pocos ejecutores ejecutándose solo)

  • Paralelismo actual a nivel de ejecutor.

Algunas formas de usar los datos:

  • Volver a particionar o descomprimir archivos de entrada grandes de antemano si el clúster está infrautilizado.

  • Identifique retrasos en la ejecución de la etapa o del trabajo debido a escenarios rezagados.

  • • Compare con NumberMaxNeedExecutors para comprender el trabajo atrasado para aprovisionar más DPU.

glue.driver.ExecutorAllocationManager.executors.numberMaxNeededExecutors

Número máximo de ejecutores de trabajos (en ejecución activa y pendientes) necesarios para satisfacer la carga actual.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(calibre).

Estadísticas válidas: Máximum. Esta es una métrica de Spark, notificada como un valor absoluto.

Unidad: Recuento

Se puede utilizar para monitorear:

  • Actividad Job.

  • Paralelismo actual a nivel de ejecutor y atraso de tareas pendientes aún no programadas debido a que los ejecutores no están disponibles debido a la capacidad de DPU o ejecutores eliminados/fallidos.

Algunas formas de usar los datos:

  • Identificar pendiente o atrasado de la cola de programación.

  • Identifique retrasos en la ejecución de la etapa o del trabajo debido a escenarios rezagados.

  • Compare con NumberAllExecutors para comprender el trabajo atrasado para aprovisionar más DPU.

  • Aumente la capacidad de DPU aprovisionada para corregir el retraso del ejecutor pendiente.

glue.driver.jvm.heap.usage

glue.ID de executorId.jvm.heap.usage

glue.ALL.jvm.heap.usage

fracción de memoria usada por el montón de JVM para este controlador (escala: 0-1) para controlador, ejecutor identificado por executorId o ALL ejecutores.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(calibre).

Estadísticas válidas: Promedio de. Esta es una métrica de Spark, notificada como un valor absoluto.

Unidad: Percentage

Se puede utilizar para monitorear:

  • Condiciones de memoria insuficiente del controlador (OOM) medianteglue.driver.jvm.heap.usage.

  • Condiciones de memoria insuficiente del ejecutor medianteglue.ALL.jvm.heap.usage.

Algunas formas de usar los datos:

  • Identificar las etapas y los ID de ejecutor que consumen memoria.

  • Identifique los identificadores y las etapas de los ejecutores rezagados.

  • Identifique una condición de memoria insuficiente del controlador (OOM).

  • Identifique una condición de falta de memoria (OOM) del ejecutor y obtenga el ID de ejecutor correspondiente para poder obtener un seguimiento de pila del registro del ejecutor.

  • Identifique los archivos o particiones que pueden tener un sesgo de datos, lo que resulta en rezagados o condiciones de falta de memoria (OOM).

glue.driver.jvm.heap.used

glue.ID de executorId.jvm.heap.used

glue.ALL.jvm.heap.used

El número de bytes de memoria utilizados por el montón de JVM para el controlador, el ejecutor identificado porID de executorId, o TODOS los ejecutores.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(calibre).

Estadísticas válidas: Promedio de. Esta es una métrica de Spark, notificada como un valor absoluto.

Unidad: Bytes

Se puede utilizar para monitorear:

  • Condiciones de memoria insuficiente del controlador (OOM).

  • Condiciones de memoria insuficiente del ejecutor (OOM).

Algunas formas de usar los datos:

  • Identificar las etapas y los ID de ejecutor que consumen memoria.

  • Identifique los identificadores y las etapas de los ejecutores rezagados.

  • Identifique una condición de memoria insuficiente del controlador (OOM).

  • Identifique una condición de falta de memoria (OOM) del ejecutor y obtenga el ID de ejecutor correspondiente para poder obtener un seguimiento de pila del registro del ejecutor.

  • Identifique los archivos o particiones que pueden tener un sesgo de datos, lo que resulta en rezagados o condiciones de falta de memoria (OOM).

glue.driver.s3.filesystem.read_bytes

glue.ID de executorId.s3.filesystem.read_bytes

glue.ALL.s3.filesystem.read_bytes

El número de bytes que leen el controlador de Amazon S3, un ejecutor identificado porID de executorId, o TODOS los ejecutores desde el informe anterior (agregados por elAWS GluePanel de métricas como número de bytes leídos durante el minuto anterior).

Dimensiones válidas:JobName,JobRunId, yType(calibre).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueTablero de métricas se utiliza una estadística SUM para la agregación. El área debajo de la curva en elAWS GlueMetrics Dashboard se puede utilizar para comparar visualmente los bytes leídos por dos ejecuciones de trabajos diferentes.

Unidad: Bytes.

Se puede utilizar para monitorear:

  • Movimiento de datos de ETL.

  • Progreso del Job.

  • Problemas de marcadores de Job (datos procesados, reprocesados y omitidos).

  • Comparación de lecturas con la tasa de ingestión de fuentes de datos externas.

  • Desviación entre ejecuciones de trabajos.

Los datos resultantes se pueden utilizar para:

  • Planificación de la capacidad de DPU.

  • Establecer alarmas para picos grandes o caídas en los datos leídos para ejecuciones de trabajos y etapas de trabajo.

glue.driver.s3.filesystem.write_bytes

glue.ID de executorId.s3.filesystem.write_bytes

glue.ALL.s3.filesystem.write_bytes

El número de bytes que escriben el controlador en Amazon S3, un ejecutor identificado porID de executorId, o TODOS los ejecutores desde el informe anterior (agregados por elAWS GluePanel de métricas como número de bytes escritos durante el minuto anterior).

Dimensiones válidas:JobName,JobRunId, yType(calibre).

Estadísticas válidas: SUM. Esta métrica es un valor delta desde el último valor reportado, por lo que en elAWS GlueTablero de métricas se utiliza una estadística SUM para la agregación. El área debajo de la curva en elAWS GlueMetrics Dashboard se puede utilizar para comparar visualmente los bytes escritos por dos ejecuciones de trabajos diferentes.

Unidad: Bytes

Se puede utilizar para monitorear:

  • Movimiento de datos de ETL.

  • Progreso del Job.

  • Problemas de marcadores de Job (datos procesados, reprocesados y omitidos).

  • Comparación de lecturas con la tasa de ingestión de fuentes de datos externas.

  • Desviación entre ejecuciones de trabajos.

Algunas formas de usar los datos:

  • Planificación de la capacidad de DPU.

  • Establecer alarmas para picos grandes o caídas en los datos leídos para ejecuciones de trabajos y etapas de trabajo.

glue.driver.system.cpuSystemLoad

glue.ID de executorId.system.cpuSystemLoad

glue.ALL.system.cpuSystemLoad

fracción de la carga del sistema de CPU usada (escala: 0-1) por el controlador, un ejecutor identificado porID de executorId, o TODOS los ejecutores.

Dimensiones válidas:JobName(el nombre delAWS GlueJob),JobRunId(el ID de JobRun oALL), yType(calibre).

Estadísticas válidas: Promedio de. Esta métrica se notifica como un valor absoluto.

Unidad: Percentage

Se puede utilizar para monitorear:

  • Carga de CPU del controlador.

  • Carga de CPU del ejecutor.

  • Detectar ejecutores o etapas enlazados a CPU o IO-enlazados en un Job.

Algunas formas de usar los datos:

  • Planificación de la capacidad de DPU junto con métricas de E/S (bytes de lectura/aleatoria, paralelismo de tareas) y la métrica del número máximo de ejecutores necesarios.

  • Identifique la relación entre CPU y IO-dependiente. Esto permite reparticionar y aumentar la capacidad aprovisionada para trabajos de larga ejecución con conjuntos de datos divididos que tienen menor utilización de CPU.

Dimensiones de las métricas de AWS Glue

AWS GlueLas métricas de utilizan la herramientaAWS Gluey proporcione métricas para las siguientes dimensiones:

Dimensión Descripción

JobName

Esta dimensión filtra las métricas de todas las ejecuciones de trabajos de unAWS Gluetarea.

JobRunId

Esta dimensión filtra las métricas de unAWS Glueejecutado por un ID de JobRun, oALL.

Type

Esta dimensión filtra las métricas porcount(un número agregado) ogauge(un valor en un punto en el tiempo).

Para obtener más información, consulte la Guía del usuario de Amazon CloudWatch.