De mantenimiento a innovación: la migración de Checkout al servicio gestionado para Apache Airflow
ARCHITECT ANÁLISIS DESTACADO

De mantenimiento a innovación: la migración de Checkout al servicio gestionado para Apache Airflow

POR

Michelle Liu

FUENTE

Cloud Blog

DATE

READ

5 min de lectura

El equipo de la plataforma de datos de Checkout.com pasaba demasiado tiempo administrando su entorno de Apache Airflow autoalojado, por lo que migró al servicio de Airflow gestionado por Google Cloud, lo que mejoró la …

Los equipos de ingeniería de datos a menudo se enfrentan a una “segunda fase” de realidad operativa después de construir una plataforma de datos: el trabajo continuo de mantener el propio orquestador. Para el equipo de la Plataforma de Datos de Checkout.com, gestionar un entorno de Apache Airflow autoalojado en otro proveedor de nube en gran escala estaba consumiendo tiempo que el equipo quería dedicar a otra cosa, ya que la gestión de servidores, las actualizaciones y la respuesta a incidentes desviaban la atención de la construcción de pipelines. Al migrar a Managed Service for Apache Airflow (Gen 3), el servicio gestionado de Airflow de Google Cloud, Checkout.com transformó su fiabilidad y estructura de costes. Aquí se explica cómo crearon una base de datos más escalable, más eficiente y más robusta. El punto de partida: Airflow autoalojado Antes de la migración, Checkout.com ejecutaba Airflow en una infraestructura autoalojada. Aunque era funcional, mantener los recursos subyacentes requería una atención significativa. Las actualizaciones, las mejoras y la gestión de servidores creaban interrupciones regulares. Los datos operativos del último año ilustran algunos de los desafíos que la empresa estaba afrontando: Reducir la fricción operativa: En su entorno autoalojado, Checkout.com se enfrentaba a problemas de estabilidad, especialmente durante los períodos de alta carga. Gestión compleja de dependencias: Actualizar paquetes y garantizar la compatibilidad era una lucha constante y manual. Con Managed Airflow (Gen 3), la empresa pudo simplificar esto gestionando las dependencias a nivel de imagen, asegurando una compatibilidad perfecta de forma predeterminada durante las actualizaciones habituales del entorno. Tiempo de sincronización de DAG: La sincronización de DAGs con el programador tardaba aproximadamente seis minutos después de la implementación en S3, lo que afectaba a la velocidad de iteración. Procesos manuales: La ampliación requería intervención manual, y la incorporación de nuevos equipos implicaba crear manualmente secretos y variables para dbt. La solución: Managed Service for Apache Airflow (Gen 3) El equipo de Checkout.com migró a Managed Airflow para externalizar la responsabilidad de la infraestructura y aprovechar la escalabilidad gestionada de Google Cloud. Los resultados fueron inmediatos y medibles en tres áreas: fiabilidad, coste y velocidad del desarrollador. Escalado dinámico en acción: En la configuración anterior de servicio de contenedor elástico, el equipo asignaba el número máximo de trabajadores necesarios para las cargas máximas. Esto implicaba pagar por la capacidad máxima las 24 horas, independientemente del uso real. Managed Airflow proporciona un escalado dinámico integrado, eliminando la necesidad de gestionar los recursos manualmente. El entorno ajusta automáticamente el número de trabajadores en función de las demandas específicas de la carga de trabajo. Cuando las tareas aumentan, el sistema escala, y cuando disminuyen, escala para ahorrar recursos. De forma similar, al pasar de la asignación fija a la escalabilidad dinámica, se redujeron los costes mensuales en aproximadamente un 30%. Fiabilidad y aislamiento de DAG Lograr una mayor estabilidad fue un impulsor clave para la migración de Checkout.com, ya que en el pasado, un DAG problemático podía afectar a todo su entorno. Managed Airflow introdujo varias mejoras arquitectónicas clave: Aislamiento de DAG: Cada DAG se ejecuta en su propio entorno de ejecución. Si un DAG falla o consume demasiados recursos, no afecta al entorno. Operaciones gestionadas: Google Cloud gestiona las actualizaciones y las mejoras durante los periodos de mantenimiento, eliminando la necesidad de gestionar las actualizaciones manualmente. Mayor visibilidad: La integración con Google Cloud Monitoring y Cloud Logging proporciona una visión clara de la ejecución de las tareas. Los ingenieros pueden ahora solucionar los problemas de forma independiente sin tener que escalar al equipo de la plataforma. Flujos de trabajo de desarrolladores más rápidos La migración también mejoró los flujos de trabajo diarios de los ingenieros de datos de Checkout. Implementaciones más rápidas: El uso de Cloud Storage para los DAGs permitió una sincronización casi instantánea. Incorporación más sencilla: Los equipos ya no necesitaban el apoyo del equipo de la plataforma para crear variables antes de incorporarse. Modernización de la ejecución de dbt: Uno de los mayores éxitos de la empresa fue cambiar la forma en que ejecutaba dbt. Anteriormente, sus ingenieros tenían que instalar y gestionar manualmente entornos virtuales complejos para cada versión de dbt compatible. Al utilizar la ejecución de dbt en contenedores, Managed Airflow (Gen 3) elimina los cuellos de botella de las dependencias. Esto garantiza un aislamiento completo de las dependencias, lo que permite a los equipos ejecutar cualquier modelo de dbt requerido con una configuración mínima y sin la sobrecarga de la infraestructura manual. Actualizaciones del entorno: La empresa ya no necesita volver a implementar todo el entorno de Airflow para añadir nuevos roles o actualizar paquetes de Python. Resolución de problemas impulsada por la IA con Gemini Cloud Assist: En un entorno autoalojado, un fallo en una tarea a menudo provocaba una frenética búsqueda a través de registros y métricas fragmentadas. Con Managed Airflow, Checkout.com puede iniciar una investigación de Gemini directamente desde su interfaz de usuario de DAG de Airflow en la consola de Google Cloud. Gemini no solo proporciona mensajes de error genéricos, sino que genera una puntuación que evalúa diferentes hipótesis con evidencia tanto de apoyo como en contra, lo que puede reducir drásticamente el tiempo medio de recuperación. Conclusión Para Checkout.com, la transición a Managed Airflow (Gen 3) marcó un cambio estratégico, uno que liberó a sus ingenieros para que se centraran en ofrecer valor. Con Managed Service for Apache Airflow, hemos logrado mejoras significativas en la eficiencia, la escalabilidad y la fiabilidad. La infraestructura gestionada, la escalabilidad automática, las implementaciones más rápidas y los entornos de ejecución aislados han transformado la forma en que operamos. — Keisi Mancellari, Ingeniero de la Plataforma de Datos, Checkout.com Con una plataforma estable, escalable y rentable en su lugar, Checkout.com ahora puede centrarse en el futuro de sus pipelines de datos, con la confianza de que su capa de orquestación está lista para lo que sea. Descubra más sobre Managed Service for Apache Airflow y cómo puede apoyar su plataforma de datos. Gracias especiales a los siguientes colaboradores de esta publicación: Serge Bouschet y Keisi Mancellari