# Arquitectura ETL: Cómo asapBI unifica Trino, Spark y Airflow en una sola interfaz
La plataforma asapBI ofrece un enfoque simplificado para diseñar procesos ETL a través de una única interfaz que orquesta herramientas como Trino, Spark y Airflow, sin atarte a ningún proveedor. Genera código automáticamente para tareas rutinarias, permite ajustes manuales para las complejas y soporta desarrollo local con sincronización fluida.
Cómo funciona la interfaz unificada de asapBI
La idea central de asapBI es un punto de control único para activos dispersos en distintos sistemas. Esto integra modelos de datos y procesos ETL que de otro modo estarían aislados. La interfaz es opcional: quítala y todo sigue funcionando, pero la configuración se complica. La arquitectura de la plataforma gira en torno a la orquestación, con asapBI como núcleo central que interactúa con clústeres externos y bases de datos.
Requisitos clave que resuelve el sistema:
- Para procesos simples (como mover datos entre tablas), usa un mapeo de campos arrastrar y soltar que cubre el 90% de las tareas diarias.
- Flujos complejos requieren código escrito a mano en SQL, Python, Java, Scala o R.
- Cómputos pesados se ejecutan en clústeres externos como Trino, Spark o Impala, separando almacenamiento de cómputo.
- Todas las cargas se gestionan desde un solo punto, simplificando el monitoreo.
- Soporta desarrollo sin conexión: trabaja localmente sin internet y sincroniza cambios después.
- Solo usa componentes open source para evitar dependencia de proveedores y facilitar el mantenimiento.
Creación y configuración de procesos de transferencia de datos (DTP)
El bloque básico de ETL en asapBI es el DTP (Proceso de Transferencia de Datos), un algoritmo que puebla una tabla a partir de otras, posiblemente de bases de datos distintas. Empiezas creando un DTP y configurando mapeos de campos vía interfaz gráfica. Maneja movimientos de datos entre SGBD como Greenplum a ClickHouse, usando Trino o Spark como motor de ejecución.
Una vez configurado, despliega el DTP al orquestador Airflow. asapBI se conecta a Airflow, que puede pasar tareas a un clúster Spark. Elige tu lenguaje: SQL o Python para Spark. El código generado es visible y editable en la pestaña Código para total transparencia.
Ejemplo de código Python autogenerado para Spark:
# Ejemplo de código generado para DTP en Spark
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("DTP_Ejemplo").getOrCreate()
df_source = spark.read.format("jdbc").option("url", "jdbc:postgresql://host/db").option("dbtable", "source_table").load()
df_target = df_source.selectExpr("col1", "col2", "col3")
df_target.write.format("jdbc").option("url", "jdbc:clickhouse://host/db").option("dbtable", "target_table").mode("overwrite").save()
Guardar un DTP en Airflow crea automáticamente un DAG listo para ejecutar. Lanza y depura estos DAGs desde la UI de Airflow o asapBI, que también rastrea los logs de ejecución.
Orquestación de cadenas de carga y gestión de flujos
Encadena DTPs para formar flujos de trabajo, que se convierten en DAGs en términos de Airflow. Las cadenas simples se construyen añadiendo DTPs a un árbol de tareas. Para condicionales, bucles o lógica avanzada, edita manualmente el código DAG autogenerado.
La fortaleza de Airflow está en ejecutar múltiples DAGs en paralelo, lo que permite:
- Cargas más rápidas paralelizándose pasos independientes.
- Reintentos automáticos o manuales para tareas fallidas sin parar toda la cadena.
- Independencia real de procesos.
¿Sin orquestador como Airflow o Dagster? asapBI despliega a la base de datos que elijas, generando automáticamente una función para ejecutar el DTP. Edita ese código para mayor flexibilidad.
Lecciones clave
- asapBI ofrece una interfaz amigable para orquestar ETL con herramientas open source, evitando dependencia de proveedores.
- Genera código automáticamente para tareas rutinarias, pero permite ediciones manuales en casos complejos.
- Desarrollo sin conexión y pruebas locales se sincronizan sin problemas.
- Monitorea y gestiona todo desde un solo panel.
- Sin cajas negras: siempre puedes ver y ajustar el código generado.
El futuro del ETL y el rol de la IA en la ingeniería de datos
Con los avances de la IA, surgen dudas sobre el ETL tradicional y los modelos de datos. En teoría, guarda todo en un data lakehouse y deja que la IA analice directamente para obtener insights, sin dashboards. Pero el enfoque actual de asapBI es automatizar tareas tediosas como el paso de campos, dejando la lógica compleja a los ingenieros. Hasta que la IA maneje el procesamiento de datos de forma autónoma, herramientas como asapBI siguen siendo esenciales para estructurar y orquestar ETL.
— Editorial Team
Aún no hay comentarios.