TodoBI - Business Intelligence, Big Data, ML y AI TodoBI - Business Intelligence, Big Data, ML y AI

Comparando Airbyte con Azure Data Factory para ingesta de pipelines

El propósito de este documento es hacer una demo y una comparativa de la herramienta Airbyte con Azure Data Factory.

Se van a tratar los aspectos generales de la herramienta Airbyte, una plataforma EL(T) que nos ayuda a la hora de replicar nuestros datos en DW, Data Lakes o Bases de datos.

Se comenzará por comparar precios, se seguirá con un caso práctico de uso de la herramienta mostrando tanto la réplica de datos como una pequeña transformación de estos.

Por último, se señalará las mayores diferencias existentes hoy en día con la herramienta proporcionada por Azure.

1. Licenciamiento

En este apartado se va a comentar todo lo referente a la licencia necesaria para utilizar Airbyte.

La comparativa de precios en este caso no tiene sentido, puesto que Airbyte es una plataforma Open-Source y por tanto su uso es gratuito. Si se pueden mencionar posibles costos ajenos a la aplicación como el uso de Docker, o el uso de herramientas para guardar o tratar información.

Además, para hacer uso de las transformaciones de datos que nos proporciona Airbyte se obliga el uso de un sistema de control de versiones en la nube como por ejemplo Github.

Algunos precios para todas estas herramientas antes mostradas serían:

Docker

GitHub

En la otra esquina de la comparativa tenemos a Azure, más concretamente Azure Data Factory. La herramienta de Microsoft tiene una política un tanto distinta, ya que deberemos de pasar por caja para todo. Más en detalle, para el uso de la herramienta Azure Data Factory V1.

Existe una versión más nueva en el tiempo llamada Azure Data Factory V2, pero también tiene un coste mayor que su antecesora la versión 1.

Sacamos en conclusión que Airbyte tiene una licencia Open-Source que es gratuita mientras que, para usar Azure Data Factory, si o si vamos a necesitar suscribirnos. En el global, podríamos concluir que Airbyte siempre será más económico que la nube de Azure.

2. Caso Práctico con Airbyte

Creación de las conexiones

Una vez instalada la herramienta Airbyte mediante Docker, procederemos a realizar un pequeño caso práctico en donde podamos ver el potencial de la herramienta. Airbyte nos permite crear réplicas incrementales, o no, de un origen a un destino de forma automática en el tiempo.

El objetivo del ejercicio será replicar la base de datos de la formación SampleData en MySQL a una base de datos Postgres aplicando una pequeña transformación de prueba por medio del proco.

Comenzaremos con la configuración de la conexión a MySQL:

Una vez que la conexión es establecida, pasamos al segundo paso “el destino”. La réplica se llevará a cabo en una base de datos Postgres que definiremos de la misma forma que antes la conexión a la db:

Por último, pasamos a la tercera fase del proceso: identificar los schemas, definir las tablas a replicar del origen y elegir que tipo de copia queremos y cada cuanto se va a replicar.

Creación del proyecto dbt: EL(T)

Como última parte del proceso, Airbyte permite realizar alguna transformación automática mediante otra herramienta llamada dbt. Dicha herramienta nos permite crear un proyecto que mediante ficheros SQL aplica transformaciones sobre la base de datos destino. Una vez realizada la copia de los datos desde el origen.

Para aplicar esta transformación desde Airbyte es necesario el uso de un repositorio, en este caso GitHub es el elegido.

En este caso, la transformación se lleva a cabo sobre la tabla customers para transformarla en una dimensión tal y como se explica en las formaciones de Pentaho y Talend que se imparten desde StrateBI.

Asignación de conexiones y EL(T)

Una vez que tenemos el proyecto dbt listo y conocemos las dos conexiones origen/destino, podemos proceder al último paso no obligatorio. Aplicar la transformación alojada en el repositorio GitHub:

Una vez hemos llegado hasta este punto el proceso se ha establecido con éxito y según hayamos definido, se mantendrá de forma manual o repetidamente en el tiempo.

De esta forma podremos conectar diferentes orígenes y destinos para realizar replicas N:1, 1:N o 1:1.

3. Azure Data Factory

Copy Data, Pipeline y DataFlow

En este último apartado veremos como la herramienta proporcionada por Azure nos permite realizar de forma sencilla replicas de datos de un origen a un destino y aplicar transformaciones a los datos si lo creemos necesario.

Dentro de Azure Data Factory tenemos el módulo Copy Data, que es el encargado de realizar la réplica de los datos. El módulo consta con multitud de opciones y aplicativos, origen-destino, pero no soporta copias incrementales por el momento. Definiendo un origen y un destino a los cuales Azure denomina DataSet podemos realizar dicha copia manualmente o en un periodo de tiempo.

Por otro lado, las transformaciones corren a cargo del módulo Pipeline y sus DataFlow correspondientes. Una herramienta más robusta y con más opciones que la utilizada por Airbyte (dbt). Nos permite realizar casi cualquier transformación sin necesidad de pasos adicionales como depender de un repositorio o de archivos SQL.

4. Conclusión

Tanto Airbyte como Azure Data Factory son herramientas de desarrollo que nos permiten replicar datos de un origen a un destino. Aplicando o no una transformación a los datos.

No obstante, la plataforma Airbyte tiene aún muchos retos que solventar ya que se encuentra en la fase Alpha de su desarrollo. En cambio, la plataforma de Azure es una de las mayores herramientas en la nube existentes hoy día.

Es decir, Airbyte podrá convertirse en una herramienta útil para el BI, pero en un futuro. Hoy en día no es recomendable para problemas no triviales.

5. Otros tutoriales recomendados

Comparativa PowerBI vs Amazon QuickSight
Gran y detallada comparativa de dos de las principales herramientas de‘self-service’ Business Intelligence: PowerBI y Quicksight (o lo que es lomismo, Microsoft y Amazon compitiendo para crear la mejor herramienta deDashboards) Nuestros amigos de Stratebi, que ya han publicado un gran número de …
Cómo es una ‘Moderna Arquitectura de Datos’
Mucho se habla actualmente de las arquitecturas de datos más modernas, etc...realmente no existe una única arquitectura de datos que se este usando en laactualidad (por otro lado, hay muchos tipos de compañías y con necesidades -datos, volúmenes, etc... - muy diferentes) En cualquier caso, desde…
Power BI embebido en Jupyter Notebook
1. INTRODUCCIÓNEl propósito de este documento es investigar sobre el funcionamiento y los casosde uso de embeber informes de Power BI en Jupyter Notebook. Se comenzará por instalar la librería powerbiclient, seguirá con laconfiguración de la conexión al cloud de Power BI y la importación de info…
Comparativa de rendimiento: Citusdata, Clickhouse y Swarm64
Hace poco os hablámos sobre las ‘Top real-time and best performance analyticstools (open source/free)’ Top real-time and best performance analytics tools (open source/free)Uno de losgrandes desafíos tecnológicos de todos a los que nos apasiona elBusinessIntelligence ha sido siempre poder cubrir …
Kepler, a powerful open source geospatial analysis tool for large-scale data
Kepler.gl [https://kepler.gl/] es una herramienta web de código abiertodesarrollada por Mapbox y Uber orientada a la visualización y análisis de datosespaciales sobre mapas interactivos. La herramienta permite construir fácilmente visualizaciones de datos sobre mapasinteractivos que pueden ser i…
Top real-time and best performance analytics tools (open source/free)
Uno de los grandes desafíos tecnológicos de todos a los que nos apasiona elBusiness Intelligence ha sido siempre poder cubrir tres objetivos que parecíanimposibles: 1) Manejar grandes volúmenes de datos para consultas analíticas (olap, modelosmultidimensionales) 2) Poder hacerlo en real-time o …
30 Consejos y Buenas Prácticas para hacer un proyecto de Power BI con éxito
En la mayoría de las ocasiones, mucho más importante que las funcionalidades ycaracterísticas técnicas de las herramientas Analytics, es la pericia, habilidady experiencia para llevar a buen puerto un proyecto de Business Intelligenceusando dichas herramientas Aquí os contamos los consejos princ…
Power Automate para Power BI: Cómo funciona
Power Automate, (AKA Flow) es la herramienta de Microsoft que permite crearflujos de trabajo conectando dos o más aplicaciones, mediante conectoresprediseñados, ahorrando tiempo en las tareas de una empresa. Ahora esta herramienta ha creado una conexión con PowerBI, esto nos permite quenuestros …
Curso online gratuito de Odoo Analytics
Odoo CRM + LinceBI, gestión y BI Open SourceOdoo es una suite de aplicaciones de gestión tanto para el mundo de la empresacomo administración pública y otro tipo de organizaciones, que incluye una gamade herramientas de fácil uso para optimizar y rentabilizar los procesos.LinceBI es mejor soluci…
Change Data Capture (CDC) Comparativa Amazon vs Debezium
En bases de datos, las CDC (Change Data Capture) son patrones de diseño softwareque se emplean para capturar cambios que se producen en los datos y propagarlosa clientes intermedios. Normalmente se emplean en entornos de data warehouse, para preservar el estadode los datos a lo largo del tiempo…
Gobierno del Dato con Microsoft Azure Purview: Manual y caso de uso
Azure Purview [https://azure.microsoft.com/es-es/services/purview/] es elservicio de gobernanza de datos unificados que ofrece Azure para laadministración y control de datos almacenados localmente, en la nube oprocedentes de aplicaciones SaaS. Con este servicio se pueden crear mapas holísticos a…
Tutorial para conocer Apache Nifi
Apache NiFi [https://nifi.apache.org/] es un sistema de flujo de datos basado enlos conceptos de programación basada en flujo (FBP, del inglés Flow-BasedProgramming). Descargar Tutorial en español [https://stratebi.es/todobi/Feb21/Apache_NiFi.pdf] sobre Apache NifiAdmite gráficos dirigidos de e…