Elige Workflows o Managed Airflow para la organización de servicios

Tanto Workflows como Managed Service for Apache Airflow se pueden usar para la organización de servicios, con el objetivo de combinar servicios para implementar la funcionalidad de la aplicación o realizar el procesamiento de datos. Aunque sean similares desde una perspectiva conceptual, están diseñados para diferentes casos prácticos. En esta página, encontrarás ayuda para elegir el producto adecuado para tu caso de uso.

Diferencias clave

La diferencia principal entre Workflows y Managed Airflow es el tipo de arquitectura que cada producto está diseñado para admitir.

Workflows organiza varios servicios basados en HTTP en un flujo de trabajo duradero y con estado. Tiene una latencia baja y puede controlar una gran cantidad de ejecuciones. También es completamente sin servidores.

Workflows es ideal para encadenar microservicios, automatizar tareas de infraestructura, como iniciar o detener una VM, y realizar integraciones con sistemas externos. Los conectores de Workflows también admiten secuencias simples de operaciones en servicios como Cloud Storage y BigQuery. Google Cloud

Managed Airflow está diseñado para organizar flujos de trabajo basados en datos (en particular, ETL/ELT). Se basa en el proyecto de Apache Airflow, pero Managed Airflow está completamente administrado. Managed Airflow admite tus canalizaciones dondequiera que estén, incluso en las instalaciones locales o en varias plataformas de nube. Toda la lógica en Managed Airflow, incluidas las tareas y la programación, se expresa en Python como archivos de definición de grafos acíclicos dirigidos (DAG).

Managed Airflow es ideal para cargas de trabajo por lotes que pueden manejar unos segundos de latencia entre las ejecuciones de tareas. Puedes usar Managed Airflow para organizar servicios en tus canalizaciones de datos, como activar un trabajo en BigQuery o iniciar una canalización de Dataflow. Puedes usar operadores preexistentes para comunicarte con varios servicios, y hay más de 150 operadores solo para Google Cloud .

Comparación detallada de características

Función Workflows Airflow administrado
Sintaxis Sintaxis de Workflows en formato YAML o JSON Python
Modelo de estado Control de flujo imperativo Declarativo DAG con resolución de dependencia automática
Integraciones Solicitudes HTTP y conectores Operadores y sensores de Airflow
Cómo pasar datos entre pasos 512 KB para variables 48 KB1 para XCom
Activadores y programación de la ejecución Gcloud CLI, Google Cloud consola, API de Workflows, bibliotecas cliente de Workflows, Cloud Scheduler Programaciones similares a Cron en el archivo de definición del DAG, sensores de Airflow
Patrones asíncronos Encuestas
Ejecución paralela Ejecuciones simultáneas del mismo flujo de trabajo o dentro de un flujo de trabajo con pasos paralelos Automático según las dependencias
Latencia de ejecución Milisegundos Segundos
Basado en código abierto No Sí (Apache Airflow)
Modelo de escalamiento Sin servidores (aumenta la escala según la demanda y la reduce a cero) Aprovisionado
Modelo de facturación Según el uso (por paso ejecutado) Según la capacidad aprovisionada
Funciones de procesamiento de datos No Reabastecimiento, capacidad de volver a ejecutar DAG

  1. Código fuente de airflow.models.xcom. Documentación de Apache Airflow 2 de agosto de 2021