Cloud Composer para flujos de trabajo complejos

Uno de los problemas más frecuentes en el ámbito de la ingeniería de datos es la orquestación de los flujos de datos complejos. Como Partners de Google Cloud Platform (GCP) en este artículo queremos explicaros qué es Cloud Composer y para qué lo utilizamos.

cloud computing

Cloud Composer: a por los flujos de trabajo!

En general, un único proyecto incluye múltiples fuentes de datos de diversas características. Entre otras, por ejemplo, integraciones directas con APIs, servicios web, csv, archivos en Excel, textos e incluso pdfs. La variedad de fuentes y sus especificidades hace que la complejidad de un proyecto aumente y que requiera de un sistema de control sofisticado.

Otro papel importante en estos proyectos lo desempeña la elección de las tecnologías aplicadas. En ocasiones, debido a la necesidad de conseguir un alto rendimiento y a la generación de grandes volúmenes de datos, nos vemos obligados a utilizar tecnologías más sofisticadas y del ámbito del Big Data.

Hoy en día y gracias a los servicios ofrecidos por las nubes, tanto públicas como privadas, el procesamiento de estos datos no resulta un problema, pero sí que se complica el hecho de interconectar esas herramientas y aplicar los mecanismos de control en cada uno de los pasos del procesamiento del dato.

Una solución en la nube de Google para este problema la encontramos en el uso de Cloud Composer.

Cloud Composer: qué es y para qué sirve

En pocas palabras, se trata de una herramienta muy potente que permite interconectar diferentes tecnologías y tener un control sofisticado en el flujo de los procesos de extracción, transformación y carga de datos. Está basada en una herramienta desarrollada por la Apache Software Foundation llamada Apache Airflow y su código está escrito en Python.

Y, ¿Cómo funciona? En todos los flujos de procesamiento de datos podemos identificar una serie de tareas que podrán variar dependiendo de la tipología del proyecto. Cada tarea deberá ejecutarse en un orden en concreto y podrá depender o no de otras tareas.

En Cloud Composer generaremos un grafo dirigido acíclico (DAG) que nos permitirá definir de manera sencilla la dependencia que existe entre cada una de estas tareas.

Fuente: Airflow

Cada uno de los vértices de ese grafo se corresponderá con las tareas a ejecutar y las aristas nos darán información de los posibles caminos que puede seguir un mismo proceso en base a ciertas condiciones.

Cloud Composer dispone de un gran número de conectores para diferentes servicios en la nube de Google, entre los que destacan, BigQuery, Cloud Dataflow, Cloud Dataproc, Cloud Datastore, Cloud Storage, Cloud Pub/Sub y AI Platform.

Otra ventaja importante es la facilidad con la que podemos levantar un entorno de Apache Airflow sin necesidad de preocuparnos por el mantenimiento que requieren este tipo de servicios.

En definitiva, si trabajamos con proyectos con grandes flujos de datos y en la nube, Cloud Composer es sin duda es una opción que debemos barajar si queremos construir un flujo de datos controlado. ¡Os animamos a probarlo!

Ingeniera de datos y apasionada de las tecnologías. Trabaja en la optimización y automatización de los procesos para lograr una óptima calidad del dato. Le gusta asumir nuevos retos, formarse en tecnologías cloud y seguridad, disfrutar de una buena película y de vez en cuando perderse en la naturaleza.

Enviar comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *