En este artículo analizaremos los aspectos fundamentales que debemos conocer sobre los triggers en AWS Glue.
En AWS Glue, podemos crear objetos en el Data Catalog llamados triggers, que podemos usar para iniciar manual o automáticamente uno o más crawlers o ETL. Con los triggers, podemos diseñar una cadena de jobs y crawlers dependientes.
Cuando se activa un trigger podemos iniciar jobs y crawlers específicos. Un trigger se puede activar bajo demanda, según un cronograma o según una combinación de eventos.
Un trigger puede existir en uno de varios estados. Un trigger puede estar CREATED, ACTIVATED o DEACTIVATED. También existen estados de transición, como ACTIVATING.
Veamos a continuación los tipos de triggers que podemos crear en AWS Glue.
AWS Glue: Procesamiento de Datos en la Nube
Descubre AWS Glue: Cataloga, Automatiza ETLs y Orquesta flujos de datos en la nube.
Tipos de triggers
Programado
Este es un trigger basado en el tiempo a través de un cron. Podemos crear un trigger para un conjunto de jobs o crawlers en función de una programación. Podemos además, especificar restricciones como la frecuencia con la que se ejecutan los jobs o crawlers, qué días de la semana se ejecutan y a qué hora. Estas restricciones se basan en un cron.
Condicional
Este es un trigger que se activa cuando un job o crawler anterior o varios jobs o crawlers cumplen una lista de condiciones. Cuando creamos un trigger condicional, especificamos una lista de jobs y una lista de crawlers para observar. Para cada job o crawler observado, se especifica un estado, como correcto, fallido, tiempo de espera agotado, etc. El trigger se activa si los jobs o crawlers observados finalizan con los estados especificados. Podemos configurar el trigger para que se active cuando ocurra alguno o todos los eventos observados.
Veamos un ejemplo. Como se muestra en la imagen a la derecha, podemos configurar un trigger T1 para iniciar el job J3 cuando tanto el job J1 como el job J2 se completen con éxito.
En la siguiente tabla, se enumeran los estados de finalización (eventos) de un job y un crawler que pueden ser observados.
Estados de finalización del job | Estados de finalización del crawler |
---|---|
SUCCEEDED | SUCCEEDED |
STOPPED | FAILED |
FAILED | CANCELLED |
TIMEOUT |
Bajo demanda
Este es un trigger que se activa manualmente. Los triggers bajo demanda nunca entran en el estado ACTIVADO o DESACTIVADO. Siempre permanecen en el estado CREADO.
AWS Glue: Procesamiento de Datos en la Nube
Descubre AWS Glue: Cataloga, Automatiza ETLs y Orquesta flujos de datos en la nube.